パケット中継装置およびパケット中継装置における出力先決定方法
【課題】パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くする。
【解決手段】パケット中継装置は、パケットを送受信する複数の物理ポートと、各物理ポートまたは複数の物理ポートに含まれる2以上の物理ポートを束ねた論理的なポートである論理ポートと、互いに異なる複数の仮想ポートとを1対1に対応付けるポート対応テーブルと、各物理ポートまたは論理ポートにより受信されたパケットの出力先を特定可能な情報と、複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける出力先特定テーブルと、パケットを受信した物理ポート又は論理ポートに基づきポート対応テーブルを参照して受信されたパケットに対応する仮想ポートを決定する仮想ポート決定部と、決定された仮想ポートに基づき出力先特定テーブルを参照して受信パケットの出力先を決定する出力先決定部と、を備える。
【解決手段】パケット中継装置は、パケットを送受信する複数の物理ポートと、各物理ポートまたは複数の物理ポートに含まれる2以上の物理ポートを束ねた論理的なポートである論理ポートと、互いに異なる複数の仮想ポートとを1対1に対応付けるポート対応テーブルと、各物理ポートまたは論理ポートにより受信されたパケットの出力先を特定可能な情報と、複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける出力先特定テーブルと、パケットを受信した物理ポート又は論理ポートに基づきポート対応テーブルを参照して受信されたパケットに対応する仮想ポートを決定する仮想ポート決定部と、決定された仮想ポートに基づき出力先特定テーブルを参照して受信パケットの出力先を決定する出力先決定部と、を備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、パケット中継装置に関する。
【背景技術】
【0002】
ローカルエリアネットワーク(LAN)等のネットワークを構成するための装置として、スイッチやルータといったパケット中継装置が用いられる。パケット中継装置は、複数の物理ポートを有し、各物理ポートに接続されるケーブルを介してクライアントや他のパケット中継装置と接続される。パケット中継装置は、パケットを受信すると、パケットのヘッダに含まれている情報(送信元アドレス,宛先アドレス,VLAN−IDなど)や、受信した物理ポートなどに基づき、宛先を決定するためのテーブルを参照して、出力先(出力先となる物理ポートや、出力先のVLANなど)を決定する。出力先を決定するためのテーブルとしては、例えば、レイヤ2スイッチでは、物理ポートとVLAN−ID(クライアントで付与するVLANの識別情報)とVLAN値(スイッチ内でVLANを識別する情報)とを対応付けるテーブルや、宛先MAC(Media Access Control)アドレスと出力先物理ポートと出力先VLAN−IDとを対応付けるテーブルなど、複数のテーブルが用いられる。
【0003】
このようなパケット中継装置では、運用の都合上、既にケーブルが接続されている物理ポート(以下、「切替前の物理ポート」と呼ぶ)に代えて、他の物理ポート(以下、「切替後の物理ポート」と呼ぶ)にケーブルをつなぎ替える(以下、「接続ポート切り替え」と呼ぶ)ことで、通信に用いる物理ポートを変更することがある。この場合、ケーブルのつなぎ替え作業に加えて、出力先を決定するための各種テーブルの設定内容を変更する作業が必要となる。例えば、ユーザは、レイヤ2スイッチに接続された管理端末を操作して、各テーブルにおいて、切替前の物理ポートに関するエントリを削除し、その後、削除したエントリの設定内容のうち、物理ポート番号を変更した内容で、切替後の物理ポートについてのエントリを追加する。このような接続ポート切り替えに伴う作業負担を軽減するために、接続ポート切り替えを検出すると、フォワーディングテーブルから切替前の物理ポートに関するエントリを自動的に削除する技術が提案されている(特許文献1)。なお、フォワーディングテーブルを更新する際には、スイッチの運用は停止されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開番号 WO−2008/111128
【発明の概要】
【発明が解決しようとする課題】
【0005】
接続ポート切り替えを検出するとテーブルから切替前の物理ポートに関するエントリを自動的に削除する技術では、切替前の物理ポートに関するすべてのエントリの削除が行なわれ、その後、切替後の物理ポートに関するエントリの追加や更新が行われるため、テーブルの更新に長期間を要していた。特に、更新すべきテーブルが複数存在する場合には、すべてのテーブルの更新完了まで長期間を要することとなり、運用再開(更新されたテーブルを用いたパケット中継処理の再開)まで長期間を要するという問題があった。
【0006】
本発明は、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることを目的とする。
【課題を解決するための手段】
【0007】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0008】
[適用例1]パケット中継装置であって、
パケットを送受信する複数の物理ポートと、
前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付けるポート対応テーブルと、
前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける出力先特定テーブルと、
前記受信パケットから前記出力先特定情報を取得する出力先特定情報取得部と、
前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する出力先仮想ポート決定部と、
前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する出力先決定部と、
を備える、パケット中継装置。
【0009】
適用例1のパケット中継装置では、出力先を決定する際に参照される出力先特定テーブルにおいて、出力先特定情報に対して、物理ポート又は論理ポートではなく、仮想ポートが対応付けられ、かつ、ポート対応テーブルにおいて、物理ポートまたは論理ポートと、仮想ポートとが1:1に対応付けられている。したがって、接続ポートを切り替えた際には、ポート対応テーブルにおける物理ポートまたは論理ポートと仮想ポートとの対応付けを変更(更新)するだけでよく、出力先特定テーブルを更新することを省略できる。一般に、ポート対応テーブルに比較して出力先特定テーブルは複雑であり、また、出力先特定テーブルはより多くのテーブルから構成されるので、適用例1の構成によって、接続ポートの切り替えに伴う設定変更に要する期間を短くすることができる。したがって、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることができる。加えて、接続ポート切り替えに伴う設定変更のユーザ負担を軽減することができる。
【0010】
[適用例2]請求項1に記載のパケット中継装置において、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスを含み、
前記出力先特定テーブルは、少なくとも、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの宛先アドレスとを対応付ける宛先テーブルを含み、
前記出力先仮想ポート決定部は、前記出力先特定テーブルを参照して、前記受信パケットの宛先アドレスに基づき、前記受信パケットの出力先となる前記仮想ポートを決定する、パケット中継装置。
【0011】
このような構成により、接続ポートの切り替えの際に、仮想ポートと受信パケットの宛先アドレスとが対応付けられている、比較的複雑な宛先テーブルを更新することを省略できる。
【0012】
[適用例3]請求項2に記載のパケット中継装置において、さらに、
前記ポート対応テーブルを参照して、前記受信パケットを受信した前記物理ポート又は前記論理ポートに対応する前記仮想ポートを特定する受信側仮想ポート特定部と、
前記決定された出力先に、前記受信パケットを中継するパケット中継部と、
を備え、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスと、前記受信パケットのヘッダに設定されているVLAN−IDと、を含み、
前記宛先テーブルは、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記宛先アドレスと、前記パケット中継装置においてVLANを識別するためのVLAN値と、を対応付け、
前記出力先特定テーブルは、
前記宛先テーブルと、
前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記VLAN−IDと、前記VLAN値と、を対応付けるVLAN決定テーブルと、
前記出力先仮想ポートと、前記VLAN値と、前記VLAN−IDと、を対応付けるVLAN−ID変換テーブルと、
を含み、
前記出力先決定部は、前記VLAN決定テーブルを参照して、前記特定された受信側仮想ポートと、前記受信パケットの前記VLAN−IDと、に基づき、前記受信パケットの送信元が所属するVLANの前記VLAN値を決定し、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照して、前記決定されたVLAN値と、前記受信パケットのヘッダに含まれる前記宛先アドレスと、に基づき、前記受信パケットについての前記出力先仮想ポートを決定し、
前記出力先決定部は、前記VLAN−ID変換テーブルを参照して、前記決定された出力先仮想ポートと、前記決定されたVLAN値とに基づき、前記受信パケットを出力する際に用いる前記VLAN−IDを決定し、
前記パケット中継部は、前記決定されたVLAN−IDを前記受信されたパケットのヘッダに書き込み、前記出力先として決定された前記物理ポートまたは前記論理ポートから、前記受信パケットを出力する、パケット中継装置。
【0013】
このような構成により、パケット中継装置及びパケット中継装置に接続される装置にVLANが設定されている場合に、かかるVLAN内でのパケットの中継を実現できる。加えて、出力テーブルとして、VLAN決定テーブルと、宛先テーブルと、VLAN−ID変換テーブルの合計3つのテーブルを含む構成であっても、接続ポートが切り替えられた際には、ユーザは、ポート対応テーブルのみ更新すればよく、接続ポートの切り替え時の設定変更に要する期間を短くすることができると共に、ユーザの設定作業の負担を軽減することができる。
【0014】
[適用例4]請求項3に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照した際に、前記決定されたVLAN値と、前記受信パケットの前記宛先アドレスとが、前記宛先テーブルにおいて、いずれの前記仮想ポートにも対応付けられていない場合には、前記受信パケットを受信した前記仮想ポートに対応付けられている前記VLAN値と同じVLAN値に対応付けられている前記仮想ポートであって、前記受信パケットを受信した仮想ポートを除く他のすべての仮想ポートを、前記出力先仮想ポートとして決定する、パケット中継装置。
【0015】
このような構成により、パケット中継装置は、宛先テーブルにおいてVLAN値とパケットのヘッダに含まれる宛先アドレスとが、いずれの仮想ポートに対応付けられていない場合、すなわち、未知の宛先へのパケットを受信した場合であっても、かかる宛先に向けてパケットを出力(中継)することができる。
【0016】
[適用例5]請求項3または請求項4に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記受信パケットが受信された際に、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスとが、いずれの仮想ポートにも対応付けられていない場合には、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスと、前記受信パケットを受信した前記物理ポートまたは前記論理ポートに対応付けられた仮想ポートと、を対応付ける、パケット中継装置。
【0017】
このような構成により、パケット中継装置は、VLAN値と送信元アドレスとが宛先テーブルにおいていずれの仮想ポートに対応付けられていない場合、すなわち、未知の装置(送信元)からパケットを受信した場合に、かかる送信元についてのアドレスと、VLAN値と、仮想ポートとを、宛先テーブルに対応付けるので、その後、かかる未知の装置宛のパケットを受信した場合に、宛先テーブルを参照して、出力先を特定することができる。したがって、新たな装置がパケット中継装置に接続される際に、ユーザは、かかる装置について宛先テーブルに登録する必要がなく、ユーザの作業負担を軽減することができる。
【0018】
[適用例6]請求項1ないし請求項5のいずれかに記載のパケット中継装置において、さらに、
前記ポート対応テーブルにおける、前記複数の物理ポートと前記複数の仮想ポートとの対応関係、または、前記複数の論理ポートと前記複数の仮想ポートとの対応関係の更新を許容するユーザインタフェースを備える、パケット中継装置。
【0019】
このような構成により、接続ポートの変更があった場合に、ユーザは、かかるユーザインタフェースを利用してポート対応テーブルを更新することができる。
【0020】
[適用例7]請求項1ないし請求項6のいずれかに記載のパケット中継装置において、
前記パケットは、レイヤ2フレームである、パケット中継装置。
【0021】
このような構成により、パケット中継装置として、レイヤ2フレームを中継する装置(例えば、レイヤ2スイッチ)を採用することができ、レイヤ2スイッチ等における接続ポートの切り替え時の運用再開までの期間を短くすることができる。
【0022】
[適用例8]パケットを送受信する複数の物理ポートを有するパケット中継装置において、受信パケットの出力先を決定するための方法であって、
(a)前記パケット中継装置において、前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける工程と、
(b)前記パケット中継装置において、前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける工程と、
(c)前記パケット中継装置において、前記受信パケットから前記出力先特定情報を取得する工程と、
(d)前記パケット中継装置において、前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する工程と、
(e)前記パケット中継装置において、前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する工程と、
を備える、方法。
【0023】
適用例8の方法では、出力先を決定する際に参照される出力先特定テーブルにおいて、出力先特定情報に対して、物理ポート又は論理ポートではなく、仮想ポートが対応付けられ、かつ、ポート対応テーブルにおいて、物理ポートまたは論理ポートと、仮想ポートとが1:1に対応付けられている。したがって、接続ポートを切り替えた際には、ポート対応テーブルにおける物理ポートまたは論理ポートと仮想ポートとの対応付けを変更(更新)するだけでよく、出力先特定テーブルを更新することを省略できる。一般に、ポート対応テーブルに比較して出力先特定テーブルは複雑であり、また、出力先特定テーブルはより多くのテーブルから構成されるので、適用例8の方法によって、接続ポートの切り替えに伴う設定変更に要する期間を短くすることができる。したがって、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることができる。加えて、接続ポート切り替えに伴う設定変更のユーザ負担を軽減することができる。
【0024】
[適用例9]コンピュータと、パケットを送受信する複数の物理ポートと、を有するパケット中継装置において、受信パケットの出力先を決定するためのプログラムであって、
(a)各前記物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける機能と、
(b)前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける機能と、
(c)前記受信パケットから前記出力先特定情報を取得する機能と、
(d)前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する機能と、
(e)前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する機能と、
を前記コンピュータに実現させるためのプログラム。
【0025】
適用例9のプログラムでは、出力先を決定する際に参照される出力先特定テーブルにおいて、出力先特定情報に対して、物理ポート又は論理ポートではなく、仮想ポートが対応付けられ、かつ、ポート対応テーブルにおいて、物理ポートまたは論理ポートと、仮想ポートとが1:1に対応付けられている。したがって、接続ポートを切り替えた際には、ポート対応テーブルにおける物理ポートまたは論理ポートと仮想ポートとの対応付けを変更(更新)するだけでよく、出力先特定テーブルを更新することを省略できる。一般に、ポート対応テーブルに比較して出力先特定テーブルは複雑であり、また、出力先特定テーブルはより多くのテーブルから構成されるので、適用例9のプログラムによって、接続ポートの切り替えに伴う設定変更に要する期間を短くすることができる。したがって、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることができる。加えて、接続ポート切り替えに伴う設定変更のユーザ負担を軽減することができる。
【0026】
[適用例10]請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0027】
このような構成により、かかる記録媒体を用いてコンピュータにプログラムを読み取らせ、各機能を実現させることができる。
【0028】
なお、本発明は、種々の態様で実現することが可能であり、例えば、ネットワークシステム、またはネットワークシステムの制御方法、これらネットワークシステムや制御方法の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【0029】
【図1】本発明の一実施例としてのパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。
【図2】図1に示す第1スイッチの機能ブロックを示す説明図である。
【図3】図2に示す仮想ポートテーブルの初期設定内容の一例を示す説明図である。
【図4】図2に示すVLAN決定テーブルの初期設定内容の一例を示す説明図である。
【図5】図2に示す宛先テーブルの初期設定内容の一例を示す説明図である。
【図6】図2に示すフラッディングテーブルの初期設定内容の一例を示す説明図である。
【図7】図2に示す実物理ポート変換テーブルの初期設定内容の一例を示す説明図である。
【図8】図2に示すVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。
【図9】初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。
【図10】第1スイッチにおいて実行される宛先登録処理の手順を示すフローチャートである。
【図11】第1スイッチにおいて実行される宛先検索処理の手順を示すフローチャートである。
【図12】第1実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。
【図13】第1実施例において実行される再設定処理の作業手順を示すフローチャートである。
【図14】第1実施例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。
【図15】図14に示すコマンドが入力された場合に更新された仮想ポートテーブルの設定内容を示す説明図である。
【図16】図14に示すコマンドが入力された場合に更新された実物理ポート変換テーブルの設定内容を示す説明図である。
【図17】比較例のスイッチの機能ブロックを示す説明図である。
【図18】比較例において実行される再設定処理の作業手順を示す第1のフローチャートである。
【図19】比較例において実行される再設定処理の作業手順を示す第2のフローチャートである。
【図20】比較例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。
【図21】第2実施例におけるパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。
【図22】図21に示す第6スイッチの機能ブロックを示す説明図である。
【図23】第2実施例における仮想ポートテーブルの初期設定内容の一例を示す説明図である。
【図24】第2実施例におけるVLAN決定テーブルの初期設定内容の一例を示す説明図である。
【図25】第2実施例における宛先テーブルの初期設定内容の一例を示す説明図である。
【図26】第2実施例におけるフラッディングテーブルの初期設定内容の一例を示す説明図である。
【図27】図22に示す回線ポート変換テーブルの初期設定内容の一例を示す説明図である。
【図28】第2実施例におけるVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。
【図29】図22に示すLAGテーブルの初期設定内容を示す説明図である。
【図30】第2実施例において初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。
【図31】第2実施例の宛先検索処理の手順を示すフローチャートである。
【図32】第2実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。
【図33】第2実施例において実行される再設定処理の作業手順を示すフローチャートである。
【図34】第2実施例において再設定処理のステップS310で入力される設定用コマンドの入力例を示す説明図である。
【図35】図34に示すコマンドが入力された場合に更新される仮想ポートテーブルの設定内容を示す説明図である。
【図36】図34に示すコマンドが入力された場合に更新される回線ポート変換テーブルの設定内容を示す説明図である。
【図37】図34に示すコマンドが入力された場合に更新されるLAGテーブルの設定内容を示す説明図である。
【発明を実施するための形態】
【0030】
A.第1実施例:
A1.システム構成:
図1は、本発明の一実施例としてのパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。このネットワークシステム10は、パケット中継装置としての第1スイッチSW1,第2スイッチSW2,第3スイッチSW3,第4スイッチSW4,第5スイッチSW5と、クライアントとしての6台のパーソナルコンピュータPC1,PC2,PC3,PC4,PC5,PC6とを備え、各クライアント間におけるデータの送受信を実現する。
【0031】
5台のスイッチSW1〜SW5は、いずれもレイヤ2(OSI参照モデルにおける第2層(データリンク層))のフレームを中継するスイッチである。第1スイッチSW1は、4つの物理ポートP11,P12,P13,P14を備えている。ここで、「物理ポート」とは、実在するポートであり、独立した1本(1対)のケーブル(回線)が接続されるポートを意味する。また、各物理ポートは、入力物理ポートと出力物理ポートとを有する。物理ポートP11にはネットワークケーブルL2が接続されている。同様に、物理ポートP12にはネットワークケーブルL3が、物理ポートP13にはネットワークケーブルL4が、物理ポートP14にはネットワークケーブルL5が、それぞれ接続されている。第1スイッチSW1は、他の4台のスイッチSW2〜SW5と接続されている。具体的には、第1スイッチSW1は、ネットワークケーブルL2を介して第2スイッチSW2と接続されている。また、第1スイッチSW1は、ネットワークケーブルL3を介して第3スイッチSW3と、ネットワークケーブルL4を介して第4スイッチSW4と、ネットワークケーブルL5を介して第5スイッチSW5と、それぞれ接続されている。
【0032】
第2スイッチSW2は、4つの物理ポートP21,P22,P23,P24を備えている。物理ポートP21には、ネットワークケーブルL2が接続されている。物理ポートP22には、ネットワークケーブルを介してパーソナルコンピュータPC1が接続されている。同様に、物理ポートP23には、ネットワークケーブルを介してパーソナルコンピュータPC2が接続されている。物理ポートP24には、ネットワークケーブルは接続されていない。
【0033】
第3スイッチSW3は、4つの物理ポートP31,P32,P33,P34を備えている。物理ポートP31には、ネットワークケーブルL3が接続されている。物理ポートP32には、ネットワークケーブルを介してパーソナルコンピュータPC3が接続されている。2つの物理ポートP33,P34には、ネットワークケーブルは接続されていない。
【0034】
第4スイッチSW4は、4つの物理ポートP41,P42,P43,P44を備えている。物理ポートP41には、ネットワークケーブルL4が接続されている。物理ポートP42には、ネットワークケーブルを介してパーソナルコンピュータPC4が接続されている。2つの物理ポートP43,P44には、ネットワークケーブルは接続されていない。
【0035】
第5スイッチSW5は、4つの物理ポートP51,P52,P53,P54を備えている。物理ポートP51には、ネットワークケーブルL5が接続されている。物理ポートP52には、ネットワークケーブルを介してパーソナルコンピュータPC5が接続されている。同様に、物理ポートP53には、ネットワークケーブルを介してパーソナルコンピュータPC6が接続されている。物理ポートP54には、ネットワークケーブルは接続されていない。
【0036】
パーソナルコンピュータPC1〜PC6は、いずれも、レイヤ2での通信を実現する図示しないネットワークインタフェースカードを備え、かかるネットワークインタフェースカードにネットワークケーブルが接続されている。各パーソナルコンピュータPC1〜PC6のネットワークインタフェースカードには、それぞれMAC(Media Access Control)アドレスが設定されている。具体的には、パーソナルコンピュータPC1のネットワークインタフェースカードには、MACアドレス「A1」が設定されている。一般に、MACアドレスは48ビットで表わされるが、本実施例では、説明の便宜上、模式的な識別子によりMACアドレスを表わしている。同様に、パーソナルコンピュータPC2のネットワークインタフェースカードにはMACアドレス「A2」が、パーソナルコンピュータPC3のネットワークインタフェースカードにはMACアドレス「A3」が、パーソナルコンピュータPC4のネットワークインタフェースカードにはMACアドレス「A4」が、パーソナルコンピュータPC5のネットワークインタフェースカードにはMACアドレス「A5」が、パーソナルコンピュータPC6のネットワークインタフェースカードにはMACアドレス「A6」が、それぞれ設定されている。
【0037】
また、各パーソナルコンピュータPC1〜PC6には、自らが所属するVLANのVLAN−IDが設定されている。具体的には、パーソナルコンピュータPC1には、VLAN−ID「10」が設定されている。同様に、パーソナルコンピュータPC2にはVLAN−ID「20」が、パーソナルコンピュータPC3にはVLAN−ID「10」が、パーソナルコンピュータPC4にはVLAN−ID「40」が、パーソナルコンピュータPC5にはVLAN−ID「30」が、パーソナルコンピュータPC6にはVLAN−ID「60」が、それぞれ設定されている。VLAN−IDとは、VLANに所属する各クライアントにおいて、VLANを識別するための識別子である。
【0038】
図2は、図1に示す第1スイッチの機能ブロックを示す説明図である。図2に示すように、第1スイッチSW1は、転送回路100と、ヘッダ処理部200と、記憶部300とを備えている。転送回路100は、前述の物理ポートP11〜P14を備えており、これら物理ポートP11〜P14において受信する信号からレイヤ2フレームを抽出し、また、出力先となる物理ポートP11〜P14からレイヤ2フレームを表わす信号を出力する。加えて、転送回路100は、抽出したレイヤ2フレームのヘッダ内の情報と、入力ポートに関する情報(レイヤ2フレームを入力した物理ポートの情報)とをヘッダ処理部200に通知する。
【0039】
ヘッダ処理部200は、転送回路100から通知されるヘッダ情報及び入力ポート情報を解析して、出力先を決定する機能部であり、例えば、ASIC(Application Specific Integrated Circuit)によって構成することができる。ヘッダ処理部200は、ポート仮想化部210と、VLAN決定部220と、宛先検索部230と、実物理ポート変換部240と、VLAN−ID変換部250とを備えている。
【0040】
ポート仮想化部210は、物理ポートを後述する仮想ポートに変換する。VLAN決定部220は、受信パケットの属するVLANを決定する。宛先検索部230は、受信パケットの出力先(転送先)として仮想ポートを検索する。実物理ポート変換部240は、仮想ポートを物理ポートに変換する。VLAN−ID変換部250は、出力するパケットのVLAN−IDを決定する。
【0041】
記憶部300は、書き込み自在な不揮発性メモリ(例えば、EEPROM:Electronically Erasable and Programmable Read Only Memory)で構成することができる。記憶部300には、予め、仮想ポートテーブル310と、VLAN決定テーブル320と、宛先テーブル330と、フラッディングテーブル340と、実物理ポート変換テーブル350と、VLAN−ID変換テーブル360とを備えている。
【0042】
図3は、図2に示す仮想ポートテーブルの初期設定内容の一例を示す説明図である。仮想ポートテーブル310は、ポート仮想化部210が物理ポートを仮想ポートに変換する際に参照される。図3に示すように、仮想ポートテーブル310は、入力物理ポートと入力仮想ポートとを対応付ける。入力物理ポートとは、物理ポートが有する入力側の物理ポートを意味し、入力仮想ポートとは、仮想ポートが有する入力側の仮想的なポートを意味する。ここで、「仮想ポート」とは、実在するポートとは異なり、仮想的な(論理的な)ポートであり、各テーブルの設定上においてのみ用いられるポートを意味する。そして、仮想ポートは、物理ポートと同様に、入力仮想ポート(入力側の仮想的なポート)と、出力仮想ポート(出力側の仮想的なポート)とを有する。
【0043】
図3の例では、仮想ポートテーブル310において、入力物理ポート「PI1」(物理ポートP11の入力側の物理ポートを意味する)と、入力仮想ポート「VPI1」(仮想ポートVP1の入力側の仮想ポートを意味する)とが対応付けられている。同様に、仮想ポートテーブル310では、入力物理ポート「PI2」と入力仮想ポート「VPI2」とが、入力物理ポート「PI3」と入力仮想ポート「VPI3」とが、入力物理ポート「PI4」と入力仮想ポート「VPI4」とが、それぞれ対応付けられている。このように、仮想ポートテーブル310では、入力物理ポートと入力仮想ポートとは1対1に対応付けられている。換言すると、各入力物理ポートは、1つの入力仮想ポートとのみ対応付けられ、かつ、各仮想入力ポートは、1つの入力物理ポートとのみ対応付けられている。
【0044】
このような仮想ポートテーブル310の初期設定内容は、ユーザ(システム管理者等)により、手動設定される。なお、図3の例では、入力物理ポートと入力仮想ポートとが、番号順に対応付けられているが、これに限らず、入力物理ポートと入力仮想ポートとを1対1に対応付ける任意の方法で、入力物理ポートと入力仮想ポートとを対応付けることができる。
【0045】
図4は、図2に示すVLAN決定テーブルの初期設定内容の一例を示す説明図である。VLAN決定テーブル320は、VLAN決定部320によってVLANが設定される際に参照される。図4に示すように、VLAN決定テーブル320は、入力仮想ポートと、VLAN−IDと、VLAN(VLAN値)とを対応付ける。なお、VLAN−IDは、IEEE802.1Qにおいて規定されているように、レイヤ2フレームのヘッダの一部(VLANタグ)に設定される。VLAN(VLAN値)とは、第1スイッチSW1の内部において、各VLANを識別するための識別子であり、本実施例では、VLAN−IDと同じ値を用いる。なお、VLAN−IDとして、VLAN値とは異なる値を設定する構成を採用することもできる。
【0046】
図4の例では、VLAN決定テーブル320において、入力仮想ポート「VPI1」と、VLAN−ID「10」と、VLAN(VLAN値)「10」とが、互いに対応付けられている。同様に、VLAN決定テーブル320では、入力仮想ポート「VPI2」とVLAN−ID「20」とVLAN「20」とが、入力仮想ポート「VPI2」とVLAN−ID「40」とVLAN「40」とが、入力仮想ポート「VPI3」とVLAN−ID「10」とVLAN「10」とが、入力仮想ポート「VPI4」とVLAN−ID「30」とVLAN「30」とが、入力仮想ポート「VPI4」とVLAN−ID「60」とVLAN「60」とが、それぞれ対応付けられている。同じ入力仮想ポートに対して、複数のVLAN−ID(及びVLAN値)が対応付けられているのは、1つの仮想ポートに複数のVLANを設定し得るからである。なお、第1スイッチSW1(及び他のすべてのスイッチSW2〜SW6)は、異なるVLANの間ではパケット(レイヤ2フレーム)を中継せず、同じVLAN間に属している物理ポートの間でのみパケットを中継する。かかる構成により、ネットワークを複数の論理的なネットワークセグメントに分割することができ、或るネットワークセグメント内での通信が他のネットワークセグメント内での通信に影響を与えることを抑制することができる。
【0047】
このようなVLAN決定テーブル320の初期設定内容は、仮想ポートテーブル310の初期設定内容に基づき、ユーザ(システム管理者等)により、手動設定される。具体的には、例えば、ユーザは、仮想ポートテーブル310の初期設定において、入力仮想ポート「VPI1」に対応付けられている入力物理ポート「PI1」の先には、VLAN−ID「10,20」の値を持ったPCが接続される。そこで、ユーザは、VLAN決定テーブル320において、入力仮想ポート「VPI1」且つVLAN−ID「10」に対して、VLAN「10」を対応付けるエントリ(第1行目のエントリ)と、入力仮想ポート「VPI1」且つVLAN−ID「20」に対して、VLAN「20」を対応付けるエントリ(第2行目のエントリ)とを設定する。
【0048】
図5は、図2に示す宛先テーブルの初期設定内容の一例を示す説明図である。宛先テーブル330は、宛先検索部230により受信パケットの出力先を決定する際に参照される。図5に示すように、宛先テーブル330は、VLAN(VLAN値)と、MACアドレスと、仮想ポートとを対応付ける。
【0049】
図5の例では、宛先テーブル330において、VLAN「10」と、MACアドレス「A1」と、仮想ポート「VP1」とが、互いに対応付けられている。同様に、宛先テーブル330では、VLAN「10」とMACアドレス「A3」と仮想ポート「VP2」とが、VLAN「20」とMACアドレス「A2」と仮想ポート「VP1」とが、VLAN「30」とMACアドレス「A5」と仮想ポート「VP4」とが、VLAN「40」とMACアドレス「A4」と仮想ポート「VP3」とが、VLAN「60」とMACアドレス「A6」と仮想ポート「VP4」とが、それぞれ対応付けられている。宛先テーブル330の各設定内容は、後述の宛先登録処理により設定される。
【0050】
図6は、図2に示すフラッディングテーブルの初期設定内容の一例を示す説明図である。フラッディングテーブル340は、受信パケットに設定されている宛先MACアドレスが、宛先テーブル330に登録されていない場合に参照されるテーブルであり、VLAN(VLAN値)と、出力仮想ポートとを対応付ける。第1スイッチSW1では、受信パケットの宛先MACアドレスが宛先テーブル330に登録されていない、すなわち、未知の宛先へのパケットを受信した場合、受信パケットのVLANと同じVLANに属するすべての宛先(装置)に受信パケットを中継する、いわゆるフラッディングを行う。フラッディングテーブル340は、このフラッディングの際に参照されるテーブルである。
【0051】
図6の例では、フラッディングテーブル340において、VLAN「10」と出力仮想ポート「VPO1,VPO2」とが対応付けられている。同様に、VLAN「20」と出力仮想ポート「VPO1」とが、VLAN「30」と出力仮想ポート「VPO4」とが、VLAN「40」と出力仮想ポート「VPO3」とが、VLAN「60」と出力仮想ポート「VPO4」とが、それぞれ対応付けられている。
【0052】
このようなフラッディングテーブル340の初期設定内容は、VLAN決定テーブル320の初期設定内容に基づき、手動設定される。具体的には、例えば、VLAN決定テーブル320の初期設定において、入力物理ポートPI1が対応付いている入力仮想ポート「VPI1」且つVLAN−ID「10」に対して、VLAN「10」を対応付けるエントリを設定し、入力物理ポートPI2が対応付いている入力仮想ポート「VPI2」且つVLAN−ID「10」に対して、VLAN「10」を対応付けるエントリを設定する。そこで、フラッディングテーブル340において、VLAN「10」に対して、出力仮想ポートである「VPO1,VPO2」が設定される。
【0053】
図7は、図2に示す実物理ポート変換テーブルの初期設定内容の一例を示す説明図である。実物理ポート変換テーブル350は、実物理ポート変換部240によって仮想ポートが物理ポートに変換される際に参照される。図7に示すように、実物理ポート変換テーブル350は、出力仮想ポートと出力物理ポートとを対応付ける。
【0054】
図7の例では、実物理ポート変換テーブル350において、出力仮想ポート「VP01」(仮想ポートVP1の出力側仮想ポートを意味する)と出力物理ポート「PO1」(物理ポートP11の出力側物理ポートを意味する)とが対応付けられている。同様に、実物理ポート変換テーブル350では、出力仮想ポート「VP02」と出力物理ポート「PO2」とが、出力仮想ポート「VP03」と出力物理ポート「PO3」とが、出力仮想ポート「VP04」と出力物理ポート「PO4」とが、それぞれ対応付けられている。このような実物理ポート変換テーブル350の初期設定内容は、ユーザ(システム管理者等)により手動設定される。
【0055】
図8は、図2に示すVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。VLAN−ID変換テーブル360は、VLAN−ID変換部250によって出力するパケットのVLAN−IDが決定される際に参照される。図8に示すように、VLAN−ID変換テーブル360は、出力仮想ポートと、VLAN(VLAN値)と、VLAN−IDとを対応付ける。
【0056】
図8の例では、VLAN−ID変換テーブル360において、出力仮想ポート「VPO1」と、VLAN「10」と、VLAN−ID「10」とが対応付けられている。同様に、出力仮想ポート「VPO2」とVLAN「20」とVLAN−ID「20」とが、出力仮想ポート「VPO2」とVLAN「10」とVLAN−ID「10」とが、出力仮想ポート「VPO3」とVLAN「40」とVLAN−ID「40」とが、出力仮想ポート「VPO4」とVLAN「30」とVLAN−ID「30」とが、出力仮想ポート「VPO4」とVLAN「60」とVLAN−ID「60」とが、それぞれ対応付けられている。このようなVLAN−ID変換テーブル360の初期設定内容は、ユーザ(システム管理者等)により手動設定される。
【0057】
上述したように、仮想ポートテーブル310,VLAN決定テーブル320,フラッディングテーブル340,実物理ポート変換テーブル350,及びVALN−ID変換テーブル360の各初期設定内容については、ユーザが手動設定する。この設定は、例えば、第1スイッチSW1に接続された管理用端末(パーソナルコンピュータなど)に表示された設定用画面において、ユーザがコマンドを入力して実現することができる。なお、かかる設定用画面は、第1スイッチSW1が生成し、管理用端末に送信して表示させる構成を採用することもできる。また、管理用端末が設定用画面を生成し、表示する構成を採用することもできる。
【0058】
図9は、初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。図9では、設定用画面W1に初期設定のためのコマンドが入力されている。なお、図9では、初期設定の際に入力されるコマンドのうち、一部のコマンドのみ表わしている。具体的には、設定用画面W1のうち、領域Ar1には、物理ポートP12と仮想ポートVP2とを対応付けるコマンドが入力されている。同様に、領域Ar2には、物理ポートP14と、仮想ポートVP4とを対応付けるコマンドが入力されている。なお、図9では省略されているが、他の物理ポートP11、P13についても、それぞれ、仮想ポートVP1,VP3と対応付けるコマンドが入力されている。これらのコマンドの入力により、仮想ポートテーブル310及び実物理ポート変換テーブル350が設定される。
【0059】
また、設定用画面W1のうち、領域Ar3には、仮想ポートVP2と、VLAN−ID「10」とを対応付けるコマンドが入力されている。同様に、領域Ar4には、仮想ポートVP4と、VLAN−ID「30,60」とを対応付けるコマンドが入力されている。なお、図9では省略されているが、他の仮想ポートとVLAN−IDとを対応付けるコマンドも入力される。そして、これらのコマンドの入力により、VLAN決定テーブル320と、フラッディングテーブル340と、VLAN−ID変換テーブル360とが設定される。
【0060】
なお、他のスイッチSW2〜SW5の機能構成は、記憶部300に格納されている各テーブルの設定内容を除き、上述した第1スイッチSW1の機能構成と同じであるので、説明を省略する。
【0061】
前述の仮想ポートテーブル310及び実物理ポート変換テーブル350は、請求項におけるポート対応テーブルに相当する。また、VLAN決定テーブル320,宛先テーブル330,フラッディングテーブル340,およびVLAN−ID変換テーブル360は、請求項における出力先特定テーブルに、ポート仮想化部210は請求項における受信側仮想ポート特定部に、宛先検索部230は請求項における出力先仮想ポート決定部に、実物理ポート変換部240及びVLAN−ID変換部は請求項における出力先決定部に、転送回路100は請求項における出力先特定情報取得部及びパケット中継部に、設定用画面W1はユーザインタフェースに、それぞれ相当する。
【0062】
A2.宛先登録処理及び宛先検索処理:
第1スイッチSW1では、いずれかの物理ポートにおいてレイヤ2フレームを受信すると、宛先登録処理及び宛先検索処理が実行される。宛先登録処理とは、フレームの宛先に関するエントリを宛先テーブル330に追加する処理を意味する。宛先検索処理とは、受信フレームの出力先(出力先の物理ポート及び出力VLAN)を検索して決定する処理を意味する。
【0063】
図10は、第1スイッチにおいて実行される宛先登録処理の手順を示すフローチャートである。第1スイッチSW1において、ポート仮想化部210は、転送回路100から通知される受信フレームの入力ポート情報に基づき、仮想ポートテーブル310を参照して、仮想ポート番号を決定し、VLAN決定部220及び宛先検索部230に通知する(ステップS105)。例えば、第1スイッチSW1の物理ポートP11において、パーソナルコンピュータPC1からパーソナルコンピュータPC3宛てのフレームが受信された場合、ポート仮想化部210は、仮想ポートテーブル310を参照して仮想ポート「VPI1」を決定する。
【0064】
VLAN決定部220は、ポート仮想化部210から通知される仮想ポート番号と、転送回路100から受信パケットのVLAN−IDとに基づき、VLAN決定テーブル320を参照して、VLANを決定し、宛先検索部230に通知する(ステップS110)。例えば、上述のように、パーソナルコンピュータPC1からパーソナルコンピュータPC3宛てのフレームを受信した場合、VLAN決定部220には、入力仮想ポート番号「VPI1」と、VLAN−ID「10」とを受信する。したがって、VLAN決定部220は、図4に示すVLAN決定部320を参照して、VLAN「10」を決定する。
【0065】
宛先検索部230は、VLAN決定部220から通知されるVLAN値と、転送回路100から通知されるヘッダ情報に含まれる送信元MACアドレスと、ポート仮想化部210から通知される決定された入力仮想ポートとを対応付けたエントリを、宛先テーブル330において検索し(ステップS115)、当該エントリが宛先テーブル330に登録済みであるか否かを判定する(ステップS120)。ステップS120において未登録であると判定した場合、宛先検索部230は、VLAN決定部220から通知されるVLAN値と、転送回路100から通知されるヘッダ情報に含まれる送信元MACアドレスと、ポート仮想化部210から通知される決定された仮想ポートとを対応付けた新たなエントリを宛先テーブル330に追加する(ステップS125)。例えば、図5に示す最上段のエントリ(VLAN「10」,MACアドレス「A1」,仮想ポート「VP1」が設定されたエントリ)が、未だ登録されていない状態において、上述したパーソナルコンピュータPC1からパーソナルコンピュータPC3宛てのフレームを受信した場合、図5に示す最上段のエントリが追加される。一方、ステップS120において、登録済みであると判定した場合、宛先登録処理は終了する。このように、第1スイッチSW1では、新たな送信元からフレームを受信した場合や、新たなVLANを介してフレームを受信した場合(新たなVLAN−IDが設定されたフレームを受信した場合)に、送信元のMACアドレスと、VLANと、仮想ポートとを学習する。
【0066】
図11は、第1スイッチにおいて実行される宛先検索処理の手順を示すフローチャートである。第1スイッチSW1において、宛先検索部230は、VLAN決定部220から通知されるVLAN値と、転送回路100から通知されるヘッダ情報に含まれる送信元MACアドレスと、ポート仮想化部210から通知される決定された入力仮想ポートとを対応付けたエントリを、宛先テーブル330において検索し(ステップS205)、当該エントリが宛先テーブル330に登録済みであるか否かを判定する(ステップS210)。なお、VLAN決定部220からのVLAN値の通知は、前述の宛先登録処理のステップS110により行われる。また、ポート仮想化部210からの入力仮想ポートの通知は、前述の宛先登録処理のステップS105により行われる。
【0067】
ステップS210において登録済みであると判定すると、宛先検索部230は、見つかったエントリの仮想ポートが有する出力仮想ポートを、フレームを出力すべき仮想ポートとして決定し、決定した出力仮想ポートとVLAN値とを、実物理ポート変換部240及びVLAN−ID変換部250に通知する(ステップS215)。
【0068】
これに対し、ステップS210において未登録であると判定すると、宛先検索部230は、フラッディングテーブル340を参照し、パケットを受信した仮想ポート、すなわち、前述の宛先登録処理におけるステップS110において決定されたVLAN(VLAN値)に対応付けられた仮想ポートと、同じVLANに対応付けられた出力仮想ポートのうち、パケットを受信した仮想ポートに対応する出力仮想ポートを除く他の出力仮想ポートを、受信パケットを出力すべき仮想ポートとして決定し、決定した仮想ポート及びVLAN値を、実物理ポート変換部240及びVLAN−ID変換部250に通知する(ステップS235)。例えば、パーソナルコンピュータPC1から、図示しないパーソナルコンピュータ宛のフレーム(VLAN−ID:10)を受信した場合、宛先テーブル330には、宛先のパーソナルコンピュータのMACアドレスを含むエントリは存在しない。この場合、ステップS235では、フラッディングテーブル340におけるVLAN「10」のエントリに含まれる出力仮想ポート「VPO1,VPO2」のうち、フレームを受信する物理ポートP11に対応付けられた仮想ポートVP1に対応する出力仮想ポートVOP1を除く、他の出力仮想ポートVPO2を、受信パケットを出力すべき仮想ポートとして決定する。
【0069】
実物理ポート変換部240は、ステップS215又はステップS235において宛先検索部230から通知される出力仮想ポートに基づき、実物理ポート変換テーブル350を参照して、出力先の物理ポートを決定し、転送回路100に通知する(ステップS220)。例えば、前述のように、出力仮想ポートVPO2が通知されると、実物理ポート変換部240は、実物理ポート変換テーブル350を参照して、出力先の物理ポートとして出力物理ポートPO2を決定する。
【0070】
VLAN−ID変換部250は、宛先検索部230から通知される出力仮想ポートとVLAN(VLAN値)に基づき、VLAN−ID変換テーブル30を参照して、VLAN−IDを決定し、転送回路100に通知する(ステップS225)。例えば、前述のように、出力仮想ポート「VP02」及びVLAN「10」が通知されると、VLAN−ID変換部250は、VLAN−ID変換テーブル360を参照して、VLAN−ID「10」を決定する。
【0071】
以上の宛先検索処理の結果、転送回路100は、例えば、出力先となる物理ポート「PO2」とVLAN−ID「10」とが通知されると、受信パケットのヘッダにVLAN−ID「10」を設定し、かかるフレームを物理ポートPO2(すなわち、物理ポートP12の出力側のポート)から出力する。
【0072】
A3.接続ポートの切り替え:
図12は、第1実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。図12では、図1の構成から、第1スイッチSW1における2つのポートにおいて接続ポートの切り替え(接続先の装置の変更)が行われた後の構成を表わしている。具体的には、物理ポートP12において、ネットワークケーブルL3に代えて、ネットワークケーブルL5が差し替えられ、その結果、物理ポートP12には、第5スイッチSW5の物理ポートP51が接続されている。同様に、物理ポートP14において、ネットワークケーブルL5に代えて、ネットワークケーブルL3が差し替えられ、その結果、物理ポートP14には、第3スイッチSW3の物理ポートP31が接続されている。
【0073】
このような接続ポートの切り替えは、例えば、「第1スイッチSW1において、同一VLANを収容する複数の物理ポート同士を互いに隣接させる」といったネットワーク管理を容易にする等の目的で行われる。本実施例では、接続ポートを切り換えた(ネットワークケーブルを差し替えた)後に、後述の再設定処理が実行されることで、切り換えたポートに接続されたスイッチの配下にあるパーソナルコンピュータは正常に通信を行う(再開する)ことができる。ここで、本実施例では、上述した仮想ポートを利用することにより、接続ポートの切り替え後に実行する再設定処理を簡素化している。
【0074】
A4.再設定処理:
図13は、第1実施例において実行される再設定処理の作業手順を示すフローチャートである。図12に示すような接続ポートの切り替えの後、ユーザは、第1スイッチSW1に接続された図示しない管理用端末に設定用画面を表示させ、かかる設定用画面から、物理ポートと仮想ポートとを対応付けるための設定用コマンドを入力する(ステップS305)。
【0075】
図14は、第1実施例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。図14では、設定用画面W1において、図12に示す接続ポート切り替えに対応するコマンドの入力例が表わされている。前述の図9に示すように、初期設定では、物理ポートP12に対して仮想ポートVP2を対応付け、また、物理ポートP14に対して仮想ポートVP4を対応付けるコマンドが入力されていた。これに対し、図12に示す接続ポートの切り替え後には、図14に示すように、領域Ar11には、物理ポートP12と、仮想ポートVP4とを対応付けるコマンドが入力される。同様に、領域Ar12には、物理ポートP14と、仮想ポートVP2とを対応付けるコマンドが入力される。これらのコマンドは、管理者が、第1スイッチSW1の2つの物理ポートP12,P14に対して、それぞれ、接続ポートを切り換える前に互いの物理ポートに対応付けられていた仮想ポートが、入れ替えて対応付けられるように判断して入力される。
【0076】
図13に戻って、ポート仮想化部210は、入力されたコマンドに基づき、仮想ポートテーブル310を更新する(ステップS310)。
【0077】
図15は、図14に示すコマンドが入力された場合に更新された仮想ポートテーブルの設定内容を示す説明図である。上述したように、図14に示すコマンドは、物理ポートP12と仮想ポートVP4とを対応付け、物理ポートP14と仮想ポートVP2とを対応付けるコマンドである。したがって、かかるコマンドが入力された結果、図15に示すように、仮想ポートテーブル310では、入力物理ポートPI2に入力仮想ポートVPI4が対応付けられ、入力物理ポートPI4に入力仮想ポートVPI2が対応付けられる。
【0078】
図13に示すように、仮想ポートテーブル310が更新された後、実物理ポート変換部240は、入力されたコマンドに基づき、実物理ポート変換テーブル350を更新する(ステップS315)。
【0079】
図16は、図14に示すコマンドが入力された場合に更新された実物理ポート変換テーブルの設定内容を示す説明図である。上述したように、図14に示すコマンドは、物理ポートP12と仮想ポートVP4とを対応付け、物理ポートP14と仮想ポートVP2とを対応付けるコマンドである。したがって、かかるコマンドが入力された結果、図16に示すように、実物理ポート変換テーブル350では、出力仮想ポートVPO2に出力物理ポートPO4が対応付けられ、出力仮想ポートVPO4に出力物理ポートPO2が対応付けられる。
【0080】
再設定処理が完了すると、切り替えられたポートに接続されたスイッチの配下にあるパーソナルコンピュータは、データの送受信を正常に行うことができる。例えば、図12に示す接続ポートの切り換えが行われ、上述した再設定処理が行われた後に、パーソナルコンピュータPC3からパーソナルコンピュータPC1にデータを送信する場合について考える。第1スイッチSW1では、パーソナルコンピュータPC3から出力されたパーソナルコンピュータPC1宛のフレームを物理ポートP14で受信すると、図10に示す宛先登録処理と、図11に示す宛先検索処理とが実行される。
【0081】
宛先登録処理のステップS105では、入力ポート情報(入力物理ポート:PI4)に基づき、図15に示す設定変更後の仮想ポートテーブル310が参照されて、入力仮想ポート「VPI2」が決定される。ステップS110では、ヘッダ情報に含まれるVLAN−ID「10」と、仮想ポート番号「VP2(VPI2)」とに基づき、VLAN決定テーブル320が参照されて、VLAN「10」が決定される。VLAN「10」,MAC「A3」,仮想ポート「VP2」のエントリは、宛先テーブル330に既に登録されているので、新たなエントリを追加することなく、宛先登録処理は終了する。
【0082】
宛先検索処理では、ステップS205,210,215が実行され、前述のステップS105で決定されたVLAN値「10」と、宛先MACアドレス「A1」に基づき、宛先テーブル330が参照され、出力仮想ポートとして「VP1(VPO1)」が決定される。ステップS220では、出力先の物理ポートとして、図16に示す更新後の実物理ポート変換テーブル350に基づき、出力物理ポート「PO1(P11)」が決定される。ステップS225では、出力仮想ポート「VPO1」及びVLAN「10」に基づき、VLAN−ID変換テーブル360が参照され、VAN−ID「10」が決定される。
【0083】
こうして、接続ポート切り替え後のパーソナルコンピュータPC3から出力されたパーソナルコンピュータPC1宛のフレームは、第1スイッチSW1において、VLAN−IDとして「10」が設定され、物理ポートP11(出力物理ポートPO1)から出力される。したがって、パーソナルコンピュータPC1では、かかるフレームを自分宛のフレームとして受信することができる。
【0084】
このように、第1実施例の再設定処理において入力されるコマンドは、接続ポート切り換えを行った物理ポートについての、物理ポートと仮想ポートとを新たに対応付けるための設定用コマンドのみである。また、かかるコマンドにより更新されるテーブルは、仮想ポートテーブル310と、実物理ポート変換テーブル350の2つのみである。
【0085】
A5.比較例:
図17は、比較例のスイッチの機能ブロックを示す説明図である。図17に示すスイッチSW10は、比較例としての従来のスイッチであり、ポート仮想化部210と、実物理ポート変換部240と、仮想ポートテーブル310と、実物理ポート変換テーブル350とを備えていない点において、図2に示す第1スイッチSW1と異なり、他の構成は、第1スイッチSW1と同様である。具体的には、スイッチSW10は、物理ポートP11〜P14を有する転送回路700と、ヘッダ処理部800と、記憶部900とを備えている。ヘッダ処理部800は、VLAN決定部820と、宛先検索部830と、VLAN−ID変換部850とを備えている。記憶部900は、VLAN決定テーブル920と、宛先テーブル930と、フラッディングテーブル940と、VLAN−ID変換テーブル960とを格納している。
【0086】
比較例のVLAN決定テーブル920は、入力仮想ポートに代えて、入力物理ポートが用いられる点において、図4に示す第1実施例のVLAN決定テーブル320と異なり、他の構成はVLAN決定テーブル320と同じである。比較例の宛先テーブル930は、仮想ポートに代えて、物理ポートが用いられる点において、図5に示す第1実施例の宛先テーブル330と異なり、他の構成は宛先テーブル330と同じである。比較例のフラッディングテーブル940は、出力仮想ポートに代えて、出力物理ポートが用いられる点において、図6に示す第1実施例のフラッディングテーブル340と異なり、他の構成は、フラッディングテーブル340と同じである。比較例のVLAN−ID変換テーブル960は、入力仮想ポートに代えて、入力物理ポートを用いる点において、第1実施例のVLAN−ID変換テーブル360と異なり、他の構成は、VLAN−ID変換テーブル360と同じである。
【0087】
図18は、比較例において実行される再設定処理の作業手順を示す第1のフローチャートである。図19は、比較例において実行される再設定処理の作業手順を示す第2のフローチャートである。図18に記載の処理の実行後に、図19に記載の処理が実行される。比較例においては、実施例と同様に、図12に示すような接続ポートの切り替えが行われた後、再設定処理が実行される。再設定処理では、まず、ユーザは、スイッチSW10に接続された管理用端末に設定用画面を表示させ、切替前(接続ポート切り替え前)の実物理ポートに関する各種設定を削除するコマンドと、削除した設定内容と同じ内容を切替後の実物理ポートに対して設定するコマンドとを入力する(ステップS805)。
【0088】
図20は、比較例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。図20では、設定用画面W10において、図12に示す接続ポート切り替えに対応する従来の各種コマンドの入力例が表わされている。設定用画面W10のうち、領域Ar81には、物理ポートP12に関する切替前の各種設定を削除するコマンドが入力されている。また、領域Ar82には、物理ポートP14に関する切替前の各種設定を削除するコマンドが入力されている。領域Ar83には、物理ポートP12に関する切替後の各種設定を追加するコマンドが入力されている。具体的には、物理ポートP12に対して、VLAN「30,60」を対応付けるコマンドが入力されている。同様に、領域Ar84には、物理ポートP14に関する切替後の各種設定を追加するコマンドが入力されている。具体的には、物理ポートP14に対して、VLAN「10」を対応付けるコマンドが入力されている。
【0089】
図18に示すように、VLAN決定部820は、入力されたコマンドに従って、VLAN決定テーブル920の各エントリのうち、切替前(接続ポート切り替え前)の実物理ポートに関するエントリを削除する(ステップS810)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、VLAN決定部820は、物理ポートP12,P14に関するエントリをVLAN決定テーブル920から削除する。
【0090】
宛先検索部830は、入力されたコマンドに従って、宛先テーブル930の各エントリのうち、切替前(接続ポート切り替え前)の実物理ポートに関するエントリを削除する(ステップS815)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、宛先検索部830は、物理ポートP12,P14に関するエントリを宛先テーブル930から削除する。
【0091】
VLAN−ID変換部850は、入力されたコマンドに従って、VLAN−ID変換テーブル960の各エントリのうち、切替前の実物理ポートに関するエントリを削除する(ステップS820)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、VLAN−ID変換部850は、物理ポートP12,P14に関するエントリをVLAN−ID変換テーブル960から削除する。
【0092】
宛先検索部830は、入力されたコマンドに従って、フラッディングテーブル940の各エントリのうち、切替前(接続ポート切り替え前)の実物理ポートに関するエントリを削除する(ステップS825)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、宛先検索部830は、物理ポートP12,P14に関するエントリをフラッディングテーブル940から削除する。以上のステップS810〜S825により、各テーブルにおいて、接続ポート切り替え後において不要となるエントリの削除が完了する。
【0093】
ステップS825の後、図19に示すように、VLAN決定部820は、入力されたコマンドに従って、VLAN決定テーブル920において、切替後のポートに関する新たなエントリを追加する(ステップS830)。
【0094】
VLAN−ID変換部850は、入力されたコマンドに従って、VLAN−ID変換テーブル960において、切替後のポートに関する新たなエントリを追加する(ステップS835)。
【0095】
宛先検索部830は、入力されたコマンドに従って、フラッディングテーブル940において、切替後のポートに関する新たなエントリを追加する(ステップS840)。
【0096】
宛先検索部830は、入力されたコマンドに従って、宛先テーブル930において、切替後のポートに関する新たなエントリを追加する(ステップS845)。
【0097】
このように、比較例のスイッチSW10では、接続ポートの切り替えの後、ユーザは、切替前のポートに関するエントリを削除するコマンドと、削除したエントリに設定されていた内容と同一の内容を、切替後の物理ポートに対応付けて設定するコマンドとを入力しなければならない。したがって、設定変更に関するユーザの負担は大きい。加えて、比較例のスイッチSW10では、入力されたコマンドに従って、各テーブルにおいて切替前のポートに関するエントリを各テーブルから削除し、その後、各テーブルにおいて切替後のポートに関する新たなエントリが追加される。したがって、すべてのテーブルの更新が完了するまでに長期間を要することとなる。
【0098】
これに対して、第1実施例の第1スイッチSW1では、再設定処理においてユーザが入力すべきコマンドは、切替後の物理ポートと仮想ポートとを新たに対応付けるための設定用コマンドのみである。したがって、接続ポートの切り替え時におけるユーザの作業負担は極めて小さい。加えて、再設定処理において更新されるテーブルは、仮想ポートテーブル310と、実物理ポート変換テーブル350の2つのみである。したがって、テーブルの更新が完了するまでに要する期間は非常に短い。それゆえ、第1実施例の第1スイッチSW1では、接続ポート切り替え時の運用再開までの期間を短くすることができる。
【0099】
加えて、宛先テーブル330に受信フレームの宛先MACアドレスを含むエントリが登録されていない場合には、パケットを受信した仮想ポートに対応付けられたVLANと同じVLANに対応付けられた出力仮想ポートのうち、パケットを受信した仮想ポートに対応する出力仮想ポートを除く他の出力仮想ポートを、受信パケットを出力するための仮想ポートとして決定しているので、未知の装置(宛先テーブル330に登録されていない装置)に対してもパケットを出力(中継)することができる。
【0100】
また、宛先登録処理を実行して、未知の装置(宛先テーブル330に登録されていない装置)からパケットを受信した場合に、その装置に関するエントリを宛先テーブル330に自動的に追加するので、ネットワークシステム10に新たに参加するクライアント(パーソナルコンピュータ)について、ユーザが手動で宛先テーブル330にエントリを追加せずに済み、ユーザの作業負担を軽減できる。
【0101】
B.第2実施例:
B1.システム構成:
図21は、第2実施例におけるパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。このネットワークシステム10aは、パケット中継装置として、5つのスイッチSW1〜SW5に代えて、第6スイッチSW6,第7スイッチSW7,第8スイッチSW8,第9スイッチSW9を備えている点と、各スイッチSW6〜SW9がリンクアグリゲーション機能を有している点と、このリングアグリゲーション機能によって複数の物理ポートを束ねて得られる1つの論理的なポート(以下、「論理ポート」と呼ぶ)を、出力先の決定などにおいて物理ポートに代えて用いる点とにおいて、第1実施例のネットワークシステム10と異なり、他の構成は、ネットワークシステム10と同じである。
【0102】
図21に示すように、第6スイッチSW6は、第1実施例の第1スイッチSW1と同じ4つの物理ポートP11〜P14を備えている。同様に、第7スイッチSW7は4つの物理ポートP71,P72,P73,P74を、第8スイッチSW8は4つの物理ポートP81,P82,P83,P84を、第9スイッチSW9は4つの物理ポートP91,P92,P93,P94を、それぞれ備えている。
【0103】
第6スイッチSW6が備える物理ポートP11には、ネットワークケーブルL7が接続されている。また、物理ポートP12にはネットワークケーブルL81が、物理ポートP13にはネットワークケーブルL82が、物理ポートP14にはネットワークケーブルL9が、それぞれ接続されている。第6スイッチSW6は、他の3台のスイッチSW7〜SW9と接続されている。具体的には、第6スイッチSW6は、ネットワークケーブルL7を介して第7スイッチSW7と接続されている。また、第6スイッチSW6は、2本のネットワークケーブルL81,L82を介して第8スイッチSW8と、ネットワークケーブルL9を介して第9スイッチSW9と、それぞれ接続されている。
【0104】
前述のように、第6スイッチSW6と第8スイッチSW8とは、2本のケーブルL81,L82で接続されているが、これは、リンクアグリゲーション機能を実現するためである。すなわち、これら2つのケーブルで接続されるリンクを、1つの論理的な回線(以下、「論理回線」と呼ぶ)LAG1として用いることにより、通信帯域の拡大や冗長性の確保を実現している。このとき、第6スイッチSW6では、2本のネットワークケーブルL81,L82と接続される2つの物理ポートP12,P13が、1つの論理的なポートとして用いられる。同様に、第8スイッチSW8では、2つの物理ポートP81,P82が1つの論理的なポートとして用いられる。
【0105】
図22は、図21に示す第6スイッチの機能ブロックを示す説明図である。第6スイッチSW6は、ヘッダ処理部200aがLAG検索部260を備えている点と、記憶部300aにおいて、実物理ポート変換テーブル350に代えて回線ポート変換テーブル350aが格納されている点と、記憶部300aにおいて、LAGテーブル370が格納されている点とにおいて、図2に示す第1実施例の第1スイッチSW1と異なり、他の構成は第1スイッチSW1と同じである。LAG検索部260は、論理回線が接続された物理ポートを検索する機能部である。
【0106】
図23は、第2実施例における仮想ポートテーブルの初期設定内容の一例を示す説明図である。第2実施例では、入力物理ポート「PI3」に対して入力仮想ポート「VPI2」が対応付けられている点と、入力物理ポート「PI4」に対して入力仮想ポート「VP3」が対応付けられている点とにおいて、図3に示す第1実施例の設定内容と異なり、他の設定内容は図3と同じである。このように、2つの入力物理ポート「PI2,PI3」に対して、同一の入力仮想ポート「VPI2」が対応付けられているのは、これらの入力物理ポートPI2,PI3は、論理回線LAG1において1つの論理ポートを形成するためである。
【0107】
図24は、第2実施例におけるVLAN決定テーブルの初期設定内容の一例を示す説明図である。図24に示す最上段から数えて上から3つのエントリは、図4に示す第1実施例の設定内容と同じである。図24に示す4段目から6段目までのエントリは、図4における対応するエントリと異なる。具体的には、4段目のエントリでは、入力仮想ポート「VPI2」と、VLAN−ID「40」と、VLAN「40」とが対応付けられている。また、5段目のエントリでは入力仮想ポート「VPI3」とVLAN−ID「30」とVLAN「30」と、6段目のエントリでは入力仮想ポート「VPI3」とVLAN−ID「60」とVLAN「60」と、それぞれ対応付けられている。
【0108】
図25は、第2実施例における宛先テーブルの初期設定内容の一例を示す説明図である。図25に示す最上段から数えて上から3つのエントリは、図5に示す第1実施例の設定内容と同じである。図25に示す4段目から6段目までのエントリは、図4における対応するエントリと異なる。具体的には、4段目のエントリでは、VLAN「30」と、MACアドレス「A5」と、仮想ポート「VP3」とが対応付けられている。また、5段目のエントリではVLAN「40」とMACアドレス「A4」と仮想ポート「VP2」とが、6段目のエントリではVLAN「60」とMACアドレス「A6」と仮想ポート「VP3」とが、それぞれ対応付けられている。
【0109】
図26は、第2実施例におけるフラッディングテーブルの初期設定内容の一例を示す説明図である。図26に示す最上段から数えて上から2つのエントリは、図6に示す第1実施例の設定内容と同じである。図26に示す3段目から5段目までのエントリは、図6における対応するエントリと異なる。具体的には、3段目のエントリでは、VLAN「30」と、出力仮想ポート「VPO3」とが対応付けられている。また、4段目のエントリではVLAN「40」と出力仮想ポート「VPO2」とが、5段目のエントリではVLAN「60」と出力仮想ポート「VPO3」とが、それぞれ対応付けられている。
【0110】
図27は、図22に示す回線ポート変換テーブルの初期設定内容の一例を示す説明図である。回線ポート変換テーブル350aでは、出力仮想ポートと、出力回線ポートとが対応付けられている。出力回線ポートとは、出力物理ポートと、出力論理ポートとを含む意味である。具体的には、図27に示すように、初期設定では、出力ポート「VPO1」と、出力回線ポートとして出力物理ポート「PO1」とが対応付けられている。また、出力ポート「VPO2」と、出力回線ポートとして論理回線「LAG1」とが対応付けられている。また、出力仮想ポート「VPO3」と、出力回線ポートとして出力物理ポート「PO4」とが対応付けられている。ここで、上から2段目のエントリでは、出力論理ポートに変えて、論理回線番号が対応付けられている。第2実施例では、後述するように、LAGテーブル370を用いて、論理回線番号から出力回線ポートに変換される。
【0111】
図28は、第2実施例におけるVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。図28に示す最上段から数えて上から3つのエントリは、図8に示す第1実施例の設定内容と同じである。図28に示す4段目から6段目までのエントリは、図8における対応するエントリと異なる。具体的には、4段目のエントリでは、出力仮想ポート「VPO2」と、VLAN「40」と、VLAN−ID「40」とが、対応付けられている。また、5段目のエントリでは出力仮想ポート「VPO3」とVLAN「30」とVLAN−ID「30」とが、6段目のエントリでは出力仮想ポート「VPO3」とVLAN「60」とVLAN−ID「60」とが、それぞれ対応付けられている。
【0112】
図29は、図22に示すLAGテーブルの初期設定内容を示す説明図である。LAGテーブル370は、第2の実施例において出力先を決定する際に参照されるテーブルであり、論理回線と、出力先総数と、出力物理ポートとを対応付ける。出力先総数とは、論理回線を構成するリンク数(束ねられた物理回線数)を意味する。図29に示すように、初期状態においては、LAG370には、論理回線「LAG1」と、出力総数「2」と、2つの出力物理ポート「PO2,PO3」とが対応付けられている。
【0113】
宛先テーブル330を除く上述した各テーブルは、第1実施例の仮想ポートテーブル310等と同様に、ユーザ(システム管理者等)により手動設定される。例えば、第6スイッチSW6に接続された管理用端末に表示された設定用画面において、ユーザがコマンドを入力して実現することができる。
【0114】
図30は、第2実施例において、初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。図30では、設定用画面W2に初期設定のためのコマンドが入力されている。なお、図30では、第1実施例の図9と同様に、初期設定の際に入力されるコマンドのうち、一部のコマンドのみ表わしている。図30では、設定用画面W2のうち、領域Ar21には、物理ポート「P11」と、仮想ポート「VP1」とを対応付けるコマンドが入力されている。同様に、領域Ar22には、2つの物理ポート「P12,P13」と仮想ポート「VP2」とを対応付けるコマンドが入力されている。なお、図30では省略されているが、他の物理ポートP14についても、仮想ポートVP3と対応付けるコマンドが入力されている。これらのコマンドの入力により、仮想ポートテーブル310及び回線ポート変換テーブル350aが設定される。
【0115】
また、設定用画面W2のうち、領域Ar23には、仮想ポートVP1と、VLAN−ID「10,20」とを対応付けるコマンドが入力されている。なお、後述の領域Ar25に入力されたコマンド、および仮想ポート「VP3」とVLAN−ID「30,60」とを対応付ける図示しないコマンドの入力により、VLAN決定テーブル320と、フラッディングテーブル340と、VLAN−ID変換テーブル360とが設定される。
【0116】
また、設定用画面W2のうち、領域Ar24には、仮想ポートVP2と、論理回線LAG1とを対応付けるコマンドが入力されている。領域Ar22に入力された前述のコマンドによって回線ポート変換テーブル350aにおいて出力仮想ポート「VPO2(VP2)」に対応付けられた出力回線ポート「PO2,PO3(P12,P13)」が、領域Ar24に入力されたコマンドにより、論理回線「LAG1」に更新される。加えて、前述の領域Ar22に入力されたコマンドと、領域Ar24に入力されたコマンドとにより、LAGテーブル370が設定される。
【0117】
また、領域Ar25には、論理回線LAG1と、VLAN−ID「10,40」とを対応付けるコマンドが入力されている。かかるコマンドの入力により、上述したように、VLAN決定テーブル320,フラッディングテーブル340,およびVLAN−ID変換テーブル360の設定が実現される。
【0118】
B2.宛先検索処理:
図31は、第2実施例の宛先検索処理の手順を示すフローチャートである。第2実施例の宛先検索処理は、ステップS220に代えてステップS220aを実行する点と、ステップS222,S223,S224を追加して実行する点とにおいて、図11に示す第1実施例の宛先検索処理と異なり、他の処理は第1実施例と同じである。
【0119】
具体的には、前述のステップS215及びS235において、出力仮想ポートが決定されると、実物理ポート変換部240は、宛先検索部230から通知される出力仮想ポートに基づき、回線ポート変換テーブル350aを参照して、出力仮想ポートを出力回線ポートに変換する(ステップS220a)。
【0120】
例えば、図21に示すパーソナルコンピュータPC1からパーソナルコンピュータPC3にデータを送る場合、ステップS215が実行されて出力仮想ポート「VPO2」が通知される。したがって、実物理ポート変換部240は、図27に示す回線ポート変換テーブル350aを参照して、出力先回線「LAG1」に変換する。
【0121】
LAG検索部260は、ステップS220aで変換された後の回線ポートは、論理ポートであるか否かを判定し(ステップS222)、論理ポートであると判定すると(ステップS222:YES)、回線ポート(LAG番号)が設定されたエントリをLAGテーブル370において検索する(ステップS223)。例えば、前述のように、変換後の出力回線ポートが論理ポートを意味する「LAG1」であれば、LAG検索部260は、図29に示すLAGテーブル370を参照して、エントリを見つけることができる。
【0122】
LAG検索部260は、ステップS223で見つかったエントリに設定されている物理ポートの中から、所定のアルゴリズムに基づき、パケット(レイヤ2フレーム)を出力するための物理ポートを決定し、転送回路100に通知する(ステップS224)。例えば、前述のように、ステップS223において、図29に示す論理回線LAG1が設定されたエントリが発見された場合、このエントリには2つの出力物理ポートPO2,PO3が設定されている。そこで、LAG検索部260は、これら2つの出力物理ポートPO2,PO3のうち、いずれかの出力物理ポートを、パケットを出力するための物理ポートとして決定する。物理ポートを決定するための所定のアルゴリズムとしては、例えば、宛先MACアドレスや送信元MACアドレスなどの経路情報に基づき、2種類のハッシュ値(例えば、「0」と「1」)のいずれかが算出される算出式を用いてハッシュ値を求め、得られたハッシュ値に基づき決定する方法を採用することができる。また、例えば、ラウンドロビン方式で、複数ある物理ポートを所定の順序で選択する方法を採用することもできる。
【0123】
ステップS224において、出力物理ポートが決定されると、前述のステップS225が実行され、VLAN−IDが決定され、転送回路100に通知される。このようにして、例えば、ステップS224において、パケットを出力する物理ポートとして「PO2」が決定され、ステップS225において、VLAN−IDとして「10」が決定されると、転送回路100は、パーソナルコンピュータPC1から受信したフレームのヘッダにVLAN−ID「10」を設定し、かかるフレームを物理ポートPO2(すなわち、物理ポートP12の出力側のポート)から出力する。
【0124】
B3.接続ポートの切り替え:
図32は、第2実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。図32では、図21の構成から、第6スイッチSW6における2つのポートにおいて接続ポートの切り替えが行われた後の構成を表わしている。具体的には、物理ポートP11において、ネットワークケーブルL7に代えて、ネットワークケーブルL81が差し替えられ、その結果、物理ポートP11には、第8スイッチSW8の物理ポートP81が接続されている。同様に、物理ポートP12において、ネットワークケーブルL81に代えて、ネットワークケーブルL7が差し替えられ、その結果、物理ポートP12には、第7スイッチSW7の物理ポートP71が接続されている。
【0125】
第2実施例では、第1実施例と同様に、接続ポートの切り替えの後に、後述の再設定処理が実行されることで、切り換えたポートに接続されたスイッチの配下にあるパーソナルコンピュータは正常に通信を行う(再開する)ことができる。また、第2実施例では、第1実施例と同様に、仮想ポートを利用することにより、接続ポートの切り替え後に実行する再設定処理を簡素化している。
【0126】
B4.再設定処理:
図33は、第2実施例において実行される再設定処理の作業手順を示すフローチャートである。第2実施例の再設定処理は、ステップS315に代えてステップS315aを実行する点と、ステップS320,S325の処理を追加して実行する点とにおいて、図13に示す第1実施例の再設定処理と異なり、他の処理は第1実施例と同じである。
【0127】
図34は、第2実施例において、再設定処理のステップS310で入力される設定用コマンドの入力例を示す説明図である。図34では、設定用画面W2において、図32に示す接続ポート切り替えに対応するコマンドの入力例が表わされている。前述の図30に示すように、初期設定では、物理ポートP11に対して仮想ポートVP1を対応付け、また、物理ポートP12,P13に対して仮想ポートVP2を対応付けるコマンドが入力されていた。これに対し、図32に示す接続ポートの切り替え時には、図34に示すように、設定用画面W2のうち、領域Ar31には、物理ポートP12と仮想ポートVP1とを対応付けるコマンドが入力される。同様に、領域Ar32には、物理ポートP11と仮想ポートVP2とを対応付けるコマンドが入力される。なお、物理ポートP13に関しては、既に仮想ポートVP2と対応付いている為、改めて対応付ける必要はない。これらのコマンドは、管理者が、第6スイッチSW6の2つのP11,P12に対して、それぞれ、接続ポートを切り替える前に互いの物理ポートに対応付けられていた仮想ポートを、入れ替えて対応付けるように判断して入力される。
【0128】
図35は、図34に示すコマンドが入力された場合に更新される仮想ポートテーブルの設定内容を示す説明図である。仮想ポートテーブル310の設定内容は、図23に示す初期設定内容と比べて、2つの入力物理ポート「PI1,PI2」に関するエントリが更新(変更)されている。具体的には、入力物理ポート「PI1」に対して、入力仮想ポート「VPI2」が対応付けられている。また、入力物理ポート「PI2」に対して、入力仮想ポート「VPI1」が対応付けられている。
【0129】
ステップS310の実行後、実物理ポート変換部240は、入力されたコマンドに基づき、回線ポート変換テーブル350aを更新する(ステップS315a)。
【0130】
図36は、図34に示すコマンドが入力された場合に更新される回線ポート変換テーブルの設定内容を示す説明図である。上述したように、図34に示すコマンドは、物理ポートP12と仮想ポートVP1とを対応付け、物理ポートP11と仮想ポートVP2とを対応付けるコマンドである。したがって、かかるコマンドが入力された結果、図36に示すように、回線ポート変換テーブル350aでは、出力仮想ポートVPO1に出力物理ポートPO2が対応付けられている。なお、出力仮想ポートVPO2に対して対応付けられている論理回線LAG1については、図34に示すコマンドの入力では更新(変更)されない。
【0131】
LAG検索部260は、入力されたコマンドに基づき、回線ポート変換テーブル350a及びLAGテーブル370を参照して、接続ポート切り替えの対象となるポートが、論理ポートを構成する物理ポートであるか否かを判定する(ステップS320)。例えば、図34に示す領域Ar31に入力されたコマンドでは、仮想ポートVP1に対して、物理ポートP11に代えて、物理ポートP12が対応付けられている。また、領域Ar32に入力されたコマンドでは、仮想ポートVP2に対して、物理ポートP12に代えて物理ポートP11が新たに対応付けられている。したがって、LAG検索部260は、接続ポート切り替えの対象となるポートは、2つの物理ポートP11,P12であると特定することができる。また、図29に示すLAGテーブル370を参照することにより、LAG検索部260は、2つの物理ポートP11,P12は、論理回線LAG1を構成する物理ポートであると判定することができる。
【0132】
前述のステップS320において、接続ポート切り替えの対象となるポートが論理ポートを構成する物理ポートであると判定された場合(ステップS320:YES)、LAG検索部260は、ステップS305で入力されたコマンドに基づき、LAGテーブル370を更新する(ステップS325)。図34に示すように、領域Ar32に入力されたコマンドにより、仮想ポートVP2に対して、2つの物理ポートP11,P13が対応付けられている。ここで、図36に示すように、回線ポート変換テーブル350aにおいて、仮想ポートVP2に対して論理回線LAG1が対応付けられている。したがって、領域Ar32に入力されたコマンドにより、LAG検索部260は、論理回線LAG1に対して、2つの物理ポートP11,P13を対応付ければよいことが分かる。
【0133】
図37は、図34に示すコマンドが入力された場合に更新されるLAGテーブルの設定内容を示す説明図である。上述のように、図34の領域Ar32に入力されたコマンドに基づき、LAG検索部260は、論理回線LAG1に対して、2つの物理ポートP11,P13を対応付ければよいことが分かるので、図37に示すように、論理回線LAG1のエントリに対して、出力物理ポート番号として「PO1」(物理ポートP11の出力側ポート)と、「PO3」(物理ポートP13の出力側ポート)とが対応付けられている。
【0134】
前述のステップS320において、接続ポート切り替えの対象となるポートが論理ポートを構成する物理ポートでないと判定された場合(ステップS320:NO)、再設定処理は終了する。したがって、この場合、LAGテーブル370は更新されない。
【0135】
再設定処理が完了すると、切り替えられたポートに接続されたスイッチの配下にあるパーソナルコンピュータは、データの送受信を正常に行うことができる。例えば、図32に示す接続ポートの切り換えが行われ、上述した再設定処理が行われた後に、パーソナルコンピュータPC1からパーソナルコンピュータPC3にデータを送信する場合について考える。
【0136】
宛先登録処理のステップS105では、入力ポート情報(入力物理ポート:PI2)に基づき、図35に示す設定変更後の仮想ポートテーブル310が参照されて、仮想ポート番号「VP1」が決定される。ステップS110では、ヘッダ情報に含まれるVLAN−ID「10」と、仮想ポート番号「VP1(VPI1)」に基づき、図24に示すVLAN決定テーブル320が参照されて、VLAN「10」が決定される。VLAN「10」,MAC「A1」,仮想ポート「VP1」のエントリは、図25に示す宛先テーブル330に既に登録されているので、新たなエントリを追加することなく、宛先登録処理は終了する。
【0137】
宛先検索処理では、ステップS205,S210,S215が実行され、前述の宛先登録処理で決定されたVLAN値「10」と、宛先MACアドレス「A3」に基づき、図25に示す宛先テーブル330が参照され、出力仮想ポートとして「VP2(VPO2)」が決定される。ステップS220aでは、図36に示す回線ポート変換テーブル350aが参照され、回線ポートとして「LAG1」が決定される。したがって、ステップS222において、「変換後の回線ポートは論理ポートである」(ステップS222:YES)と判定され、ステップS223が実行される。ステップS223では、図37に示す設定変更後のLAGテーブルにおいて、「LAG1」が設定されたエントリが検索され、ステップS224では、図37に示すエントリに設定されている2つの物理ポートP12,P13のうち、いずれかの物理ポートが、パケットを出力する物理ポートとして決定される。ステップS225では、出力仮想ポート「VPO2」と、VLAN「10」とに基づき、図28に示すVLAN−ID変換テーブル360が参照され、VLAN−ID「10」が決定される。
【0138】
こうして、接続ポート切り替え後のパーソナルコンピュータPC1から出力されたパーソナルコンピュータPC3宛のフレームは、第6スイッチSW6において、VLAN−IDとして「10」が設定され、物理ポートP12(出力物理ポートPO2)又は物理ポートP13(出力物理ポートPO3)から出力される。したがって、パーソナルコンピュータPC3では、かかるフレームを自分宛のフレームとして受信することができる。
【0139】
以上説明した第2実施例の第6スイッチSW6は、第1実施例の第1スイッチSW1と同様の効果を有する。加えて、第2実施例の第6スイッチSW6では、論理ポートを構成する物理ポートの一部又は全部が接続ポート切り替えの対象ポートであったとしても、簡易なコマンドを入力のみで、接続ポートの切り替えを実現できる。また、接続ポートの切り替え時に更新されるテーブルは、仮想ポートテーブル310と、回線ポート変換テーブル350aと、LAGテーブル370とであり、他の4つのテーブル320,330,340,360は更新させないようにすることができる。したがって、接続ポート切り替え時の運用再開までの期間を短くすることができる。
【0140】
C.変形例:
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【0141】
C1.変形例1:
各実施例では、パケット中継装置としてレイヤ2スイッチを採用していたが、本発明はこれに限定されるものではない。例えば、レイヤ2スイッチに代えて、レイヤ3スイッチやルータなどレイヤ3パケットを中継する装置や、ファイバチャネルスイッチや、ATM(Asynchronous Transfer Mode)スイッチなど、レイヤ2フレームを除く、他の任意のパケット(データの集まり)を中継する装置を採用することができる。なお、例えば、レイヤ2スイッチに代えてルータを採用する場合には、レイヤ3パケットを出力するインタフェース情報(例えば、物理ポート)と、仮想ポートとを対応付けることが好ましい。このような構成により、レイヤ3スイッチやルータが備えるルーティングテーブルを、接続ポートの切り替えが起こるたびに更新せずに済み、接続ポートの切り替えに伴うダウンタイムを短くすることができる。
【0142】
また、上述したレイヤ2スイッチやルータなどのパケットを中継する専用装置に限らず、パケットを中継する機能を有する他の装置を採用することもできる。例えば、サーバ装置や、ストレージ装置を採用することもできる。具体的には、サーバ装置が複数の入出力インタフェースを備える構成において、各入出力インタフェースを、仮想ポートと対応付けることで、各入出力インタフェースに接続された装置(例えば、他のサーバ装置)の故障等により、接続インタフェースを切り替える場合などに、切り替え後の運用再開までの期間を短くすることができる。また、各装置のポートに関連付けられた情報の保持(更新されないようにすること)を実現することができる。
【0143】
C2.変形例2:
各実施例では、宛先検索処理のステップS210において、宛先テーブルに受信フレームの宛先MACアドレスを含むエントリが登録されていない場合に、フラッディングを行うものとしていたが、本発明はこれに限定されるものではない。例えば、宛先テーブルに宛先MACアドレスが登録されていない場合には、フラッディングの実行に代えて、受信パケットを廃棄する、又は、受信パケットの廃棄と共に、廃棄した旨を送信元に送信する構成を採用することもできる。
【0144】
C3.変形例3:
各実施例では、パケットの出力先(宛先)を決定する機能部(ヘッダ処理部200,200a及び記憶部300,300a)と、パケットを転送する機能部(転送回路100)とは、同一の筐体に組み込まれていたが、これに代えて、これら2つの機能部を、互いに異なる筐体に組み込むこともできる。例えば、転送回路100を有するスイッチと、かかるスイッチに接続されたスイッチとは別の装置(筐体)であって、ヘッダ処理部200,200a、及び記憶部300,300aを備える装置(例えば、パーソナルコンピュータ)と、を採用することもできる。この構成では、スイッチと、スイッチに接続された出力先を決定する機能を有する装置とが、請求項におけるパケット中継装置に相当する。
【0145】
C4.変形例4:
各実施例では、宛先登録処理を実行し、新たに接続された装置からパケットを受信した場合に、受信したパケットのヘッダ情報や、受信したポートの情報等から、宛先テーブル330にエントリを追加(学習)する構成であったが、本発明はこれに限定されるものではない。例えば、予め、ユーザが、想定されるすべての端末に関する宛先エントリを宛先テーブル330に登録しておく構成を採用することもできる。
【0146】
C5.変形例5:
各実施例では、設定用画面は、スイッチSW1,SW6に接続された管理端末に表示されていたが、本発明はこれに限定されるものではない。例えば、スイッチSW1,SW6が、筐体前面などに表示部(例えば、液晶ディスプレイ等)を備える構成であれば、かかる表示部に、設定用画面を表示させる構成を採用することもできる。また、設定用画面のユーザインタフェースは、CUI(Character-based User Interface)であったが、CUIに代えて、GUI(Graphical User Interface)を採用することもできる。
【0147】
C6.変形例6:
各実施例では、ネットワークシステム10,10aでは、VLANが設定されていたが、これに代えて、VLANが設定されていないシステムにも本発明を適用することができる。この構成では、例えば、以下のようにして出力先となる物理ポートを決定することができる。先ず、予め宛先テーブルとして、宛先MACアドレスと仮想ポートとを対応付けておく。そして、パケットを受信すると、宛先テーブルを参照して、受信パケットの宛先MACアドレスに基づき出力先となる仮想ポートを決定し、実物理ポート変換テーブル350、または、回線ポート変換テーブル350a及びLAGテーブル370を参照して、対応する物理ポートを決定する。このような構成においても、接続ポートの切り替えの際に、宛先テーブルの更新を省略でき、運用再開までの期間を短くすることができる。
【0148】
C7.変形例7:
本発明において、ネットワークシステムの構成は、各実施例における構成に限定されるものではない。例えば、スイッチの数は、第1実施例では5台、第2実施例では4台であったが、任意の台数を採用することができる。また、各スイッチに接続されるクライアントは、パーソナルコンピュータであったが、パーソナルコンピュータに代えて、サーバ装置や、ストレージ装置や、PDA(Personal Digital Assistants)や、携帯電話端末など、データを送受信する任意の装置を採用することができる。
【0149】
C8.変形例8:
各実施例において、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。また、これとは逆に、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよい。
【符号の説明】
【0150】
10,10a…ネットワークシステム
100…転送回路
200,200a…ヘッダ処理部
210…ポート仮想化部
220…VLAN決定部
230…宛先検索部
240…実物理ポート変換部
250…VLAN−ID変換部
260…LAG検索部
300,300a…記憶部
310…仮想ポートテーブル
320…VLAN決定テーブル
330…宛先テーブル
340…フラッディングテーブル
350…実物理ポート変換テーブル
350a…回線ポート変換テーブル
360…VLAN−ID変換テーブル
370…LAGテーブル
SW1…第1スイッチ
SW2…第2スイッチ
SW3…第3スイッチ
SW4…第4スイッチ
SW5…第5スイッチ
SW6…第6スイッチ
SW7…第7スイッチ
SW8…第8スイッチ
SW9…第9スイッチ
L2〜L5,L7,L81,L82,L9…ネットワークケーブル
PC1〜PC6…パーソナルコンピュータ
P11〜P14,P21〜P24,P31〜P34,P41〜P44,P51〜P54,P71〜P74,P81〜P84,P91〜P94…物理ポート
Ar1〜Ar4,Ar11,Ar12,Ar21,Ar22,Ar23,Ar24,Ar25,Ar31,Ar32,Ar81,Ar82,Ar83,Ar84…領域
LAG1…論理回線
W1,W2,W10…設定用画面
700…転送回路
800…ヘッダ処理部
820…VLAN決定部
830…宛先検索部
850…VLAN−ID変換部
900…記憶部
920…VLAN決定テーブル
930…宛先テーブル
940…フラッディングテーブル
960…VLAN−ID変換テーブル
【技術分野】
【0001】
本発明は、パケット中継装置に関する。
【背景技術】
【0002】
ローカルエリアネットワーク(LAN)等のネットワークを構成するための装置として、スイッチやルータといったパケット中継装置が用いられる。パケット中継装置は、複数の物理ポートを有し、各物理ポートに接続されるケーブルを介してクライアントや他のパケット中継装置と接続される。パケット中継装置は、パケットを受信すると、パケットのヘッダに含まれている情報(送信元アドレス,宛先アドレス,VLAN−IDなど)や、受信した物理ポートなどに基づき、宛先を決定するためのテーブルを参照して、出力先(出力先となる物理ポートや、出力先のVLANなど)を決定する。出力先を決定するためのテーブルとしては、例えば、レイヤ2スイッチでは、物理ポートとVLAN−ID(クライアントで付与するVLANの識別情報)とVLAN値(スイッチ内でVLANを識別する情報)とを対応付けるテーブルや、宛先MAC(Media Access Control)アドレスと出力先物理ポートと出力先VLAN−IDとを対応付けるテーブルなど、複数のテーブルが用いられる。
【0003】
このようなパケット中継装置では、運用の都合上、既にケーブルが接続されている物理ポート(以下、「切替前の物理ポート」と呼ぶ)に代えて、他の物理ポート(以下、「切替後の物理ポート」と呼ぶ)にケーブルをつなぎ替える(以下、「接続ポート切り替え」と呼ぶ)ことで、通信に用いる物理ポートを変更することがある。この場合、ケーブルのつなぎ替え作業に加えて、出力先を決定するための各種テーブルの設定内容を変更する作業が必要となる。例えば、ユーザは、レイヤ2スイッチに接続された管理端末を操作して、各テーブルにおいて、切替前の物理ポートに関するエントリを削除し、その後、削除したエントリの設定内容のうち、物理ポート番号を変更した内容で、切替後の物理ポートについてのエントリを追加する。このような接続ポート切り替えに伴う作業負担を軽減するために、接続ポート切り替えを検出すると、フォワーディングテーブルから切替前の物理ポートに関するエントリを自動的に削除する技術が提案されている(特許文献1)。なお、フォワーディングテーブルを更新する際には、スイッチの運用は停止されている。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】国際公開番号 WO−2008/111128
【発明の概要】
【発明が解決しようとする課題】
【0005】
接続ポート切り替えを検出するとテーブルから切替前の物理ポートに関するエントリを自動的に削除する技術では、切替前の物理ポートに関するすべてのエントリの削除が行なわれ、その後、切替後の物理ポートに関するエントリの追加や更新が行われるため、テーブルの更新に長期間を要していた。特に、更新すべきテーブルが複数存在する場合には、すべてのテーブルの更新完了まで長期間を要することとなり、運用再開(更新されたテーブルを用いたパケット中継処理の再開)まで長期間を要するという問題があった。
【0006】
本発明は、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることを目的とする。
【課題を解決するための手段】
【0007】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0008】
[適用例1]パケット中継装置であって、
パケットを送受信する複数の物理ポートと、
前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付けるポート対応テーブルと、
前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける出力先特定テーブルと、
前記受信パケットから前記出力先特定情報を取得する出力先特定情報取得部と、
前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する出力先仮想ポート決定部と、
前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する出力先決定部と、
を備える、パケット中継装置。
【0009】
適用例1のパケット中継装置では、出力先を決定する際に参照される出力先特定テーブルにおいて、出力先特定情報に対して、物理ポート又は論理ポートではなく、仮想ポートが対応付けられ、かつ、ポート対応テーブルにおいて、物理ポートまたは論理ポートと、仮想ポートとが1:1に対応付けられている。したがって、接続ポートを切り替えた際には、ポート対応テーブルにおける物理ポートまたは論理ポートと仮想ポートとの対応付けを変更(更新)するだけでよく、出力先特定テーブルを更新することを省略できる。一般に、ポート対応テーブルに比較して出力先特定テーブルは複雑であり、また、出力先特定テーブルはより多くのテーブルから構成されるので、適用例1の構成によって、接続ポートの切り替えに伴う設定変更に要する期間を短くすることができる。したがって、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることができる。加えて、接続ポート切り替えに伴う設定変更のユーザ負担を軽減することができる。
【0010】
[適用例2]請求項1に記載のパケット中継装置において、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスを含み、
前記出力先特定テーブルは、少なくとも、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの宛先アドレスとを対応付ける宛先テーブルを含み、
前記出力先仮想ポート決定部は、前記出力先特定テーブルを参照して、前記受信パケットの宛先アドレスに基づき、前記受信パケットの出力先となる前記仮想ポートを決定する、パケット中継装置。
【0011】
このような構成により、接続ポートの切り替えの際に、仮想ポートと受信パケットの宛先アドレスとが対応付けられている、比較的複雑な宛先テーブルを更新することを省略できる。
【0012】
[適用例3]請求項2に記載のパケット中継装置において、さらに、
前記ポート対応テーブルを参照して、前記受信パケットを受信した前記物理ポート又は前記論理ポートに対応する前記仮想ポートを特定する受信側仮想ポート特定部と、
前記決定された出力先に、前記受信パケットを中継するパケット中継部と、
を備え、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスと、前記受信パケットのヘッダに設定されているVLAN−IDと、を含み、
前記宛先テーブルは、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記宛先アドレスと、前記パケット中継装置においてVLANを識別するためのVLAN値と、を対応付け、
前記出力先特定テーブルは、
前記宛先テーブルと、
前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記VLAN−IDと、前記VLAN値と、を対応付けるVLAN決定テーブルと、
前記出力先仮想ポートと、前記VLAN値と、前記VLAN−IDと、を対応付けるVLAN−ID変換テーブルと、
を含み、
前記出力先決定部は、前記VLAN決定テーブルを参照して、前記特定された受信側仮想ポートと、前記受信パケットの前記VLAN−IDと、に基づき、前記受信パケットの送信元が所属するVLANの前記VLAN値を決定し、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照して、前記決定されたVLAN値と、前記受信パケットのヘッダに含まれる前記宛先アドレスと、に基づき、前記受信パケットについての前記出力先仮想ポートを決定し、
前記出力先決定部は、前記VLAN−ID変換テーブルを参照して、前記決定された出力先仮想ポートと、前記決定されたVLAN値とに基づき、前記受信パケットを出力する際に用いる前記VLAN−IDを決定し、
前記パケット中継部は、前記決定されたVLAN−IDを前記受信されたパケットのヘッダに書き込み、前記出力先として決定された前記物理ポートまたは前記論理ポートから、前記受信パケットを出力する、パケット中継装置。
【0013】
このような構成により、パケット中継装置及びパケット中継装置に接続される装置にVLANが設定されている場合に、かかるVLAN内でのパケットの中継を実現できる。加えて、出力テーブルとして、VLAN決定テーブルと、宛先テーブルと、VLAN−ID変換テーブルの合計3つのテーブルを含む構成であっても、接続ポートが切り替えられた際には、ユーザは、ポート対応テーブルのみ更新すればよく、接続ポートの切り替え時の設定変更に要する期間を短くすることができると共に、ユーザの設定作業の負担を軽減することができる。
【0014】
[適用例4]請求項3に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照した際に、前記決定されたVLAN値と、前記受信パケットの前記宛先アドレスとが、前記宛先テーブルにおいて、いずれの前記仮想ポートにも対応付けられていない場合には、前記受信パケットを受信した前記仮想ポートに対応付けられている前記VLAN値と同じVLAN値に対応付けられている前記仮想ポートであって、前記受信パケットを受信した仮想ポートを除く他のすべての仮想ポートを、前記出力先仮想ポートとして決定する、パケット中継装置。
【0015】
このような構成により、パケット中継装置は、宛先テーブルにおいてVLAN値とパケットのヘッダに含まれる宛先アドレスとが、いずれの仮想ポートに対応付けられていない場合、すなわち、未知の宛先へのパケットを受信した場合であっても、かかる宛先に向けてパケットを出力(中継)することができる。
【0016】
[適用例5]請求項3または請求項4に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記受信パケットが受信された際に、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスとが、いずれの仮想ポートにも対応付けられていない場合には、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスと、前記受信パケットを受信した前記物理ポートまたは前記論理ポートに対応付けられた仮想ポートと、を対応付ける、パケット中継装置。
【0017】
このような構成により、パケット中継装置は、VLAN値と送信元アドレスとが宛先テーブルにおいていずれの仮想ポートに対応付けられていない場合、すなわち、未知の装置(送信元)からパケットを受信した場合に、かかる送信元についてのアドレスと、VLAN値と、仮想ポートとを、宛先テーブルに対応付けるので、その後、かかる未知の装置宛のパケットを受信した場合に、宛先テーブルを参照して、出力先を特定することができる。したがって、新たな装置がパケット中継装置に接続される際に、ユーザは、かかる装置について宛先テーブルに登録する必要がなく、ユーザの作業負担を軽減することができる。
【0018】
[適用例6]請求項1ないし請求項5のいずれかに記載のパケット中継装置において、さらに、
前記ポート対応テーブルにおける、前記複数の物理ポートと前記複数の仮想ポートとの対応関係、または、前記複数の論理ポートと前記複数の仮想ポートとの対応関係の更新を許容するユーザインタフェースを備える、パケット中継装置。
【0019】
このような構成により、接続ポートの変更があった場合に、ユーザは、かかるユーザインタフェースを利用してポート対応テーブルを更新することができる。
【0020】
[適用例7]請求項1ないし請求項6のいずれかに記載のパケット中継装置において、
前記パケットは、レイヤ2フレームである、パケット中継装置。
【0021】
このような構成により、パケット中継装置として、レイヤ2フレームを中継する装置(例えば、レイヤ2スイッチ)を採用することができ、レイヤ2スイッチ等における接続ポートの切り替え時の運用再開までの期間を短くすることができる。
【0022】
[適用例8]パケットを送受信する複数の物理ポートを有するパケット中継装置において、受信パケットの出力先を決定するための方法であって、
(a)前記パケット中継装置において、前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける工程と、
(b)前記パケット中継装置において、前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける工程と、
(c)前記パケット中継装置において、前記受信パケットから前記出力先特定情報を取得する工程と、
(d)前記パケット中継装置において、前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する工程と、
(e)前記パケット中継装置において、前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する工程と、
を備える、方法。
【0023】
適用例8の方法では、出力先を決定する際に参照される出力先特定テーブルにおいて、出力先特定情報に対して、物理ポート又は論理ポートではなく、仮想ポートが対応付けられ、かつ、ポート対応テーブルにおいて、物理ポートまたは論理ポートと、仮想ポートとが1:1に対応付けられている。したがって、接続ポートを切り替えた際には、ポート対応テーブルにおける物理ポートまたは論理ポートと仮想ポートとの対応付けを変更(更新)するだけでよく、出力先特定テーブルを更新することを省略できる。一般に、ポート対応テーブルに比較して出力先特定テーブルは複雑であり、また、出力先特定テーブルはより多くのテーブルから構成されるので、適用例8の方法によって、接続ポートの切り替えに伴う設定変更に要する期間を短くすることができる。したがって、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることができる。加えて、接続ポート切り替えに伴う設定変更のユーザ負担を軽減することができる。
【0024】
[適用例9]コンピュータと、パケットを送受信する複数の物理ポートと、を有するパケット中継装置において、受信パケットの出力先を決定するためのプログラムであって、
(a)各前記物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける機能と、
(b)前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける機能と、
(c)前記受信パケットから前記出力先特定情報を取得する機能と、
(d)前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する機能と、
(e)前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する機能と、
を前記コンピュータに実現させるためのプログラム。
【0025】
適用例9のプログラムでは、出力先を決定する際に参照される出力先特定テーブルにおいて、出力先特定情報に対して、物理ポート又は論理ポートではなく、仮想ポートが対応付けられ、かつ、ポート対応テーブルにおいて、物理ポートまたは論理ポートと、仮想ポートとが1:1に対応付けられている。したがって、接続ポートを切り替えた際には、ポート対応テーブルにおける物理ポートまたは論理ポートと仮想ポートとの対応付けを変更(更新)するだけでよく、出力先特定テーブルを更新することを省略できる。一般に、ポート対応テーブルに比較して出力先特定テーブルは複雑であり、また、出力先特定テーブルはより多くのテーブルから構成されるので、適用例9のプログラムによって、接続ポートの切り替えに伴う設定変更に要する期間を短くすることができる。したがって、パケット中継装置において、接続ポート切り替え時の運用再開までの期間を短くすることができる。加えて、接続ポート切り替えに伴う設定変更のユーザ負担を軽減することができる。
【0026】
[適用例10]請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0027】
このような構成により、かかる記録媒体を用いてコンピュータにプログラムを読み取らせ、各機能を実現させることができる。
【0028】
なお、本発明は、種々の態様で実現することが可能であり、例えば、ネットワークシステム、またはネットワークシステムの制御方法、これらネットワークシステムや制御方法の機能を実現するためのコンピュータープログラム、そのコンピュータープログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【0029】
【図1】本発明の一実施例としてのパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。
【図2】図1に示す第1スイッチの機能ブロックを示す説明図である。
【図3】図2に示す仮想ポートテーブルの初期設定内容の一例を示す説明図である。
【図4】図2に示すVLAN決定テーブルの初期設定内容の一例を示す説明図である。
【図5】図2に示す宛先テーブルの初期設定内容の一例を示す説明図である。
【図6】図2に示すフラッディングテーブルの初期設定内容の一例を示す説明図である。
【図7】図2に示す実物理ポート変換テーブルの初期設定内容の一例を示す説明図である。
【図8】図2に示すVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。
【図9】初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。
【図10】第1スイッチにおいて実行される宛先登録処理の手順を示すフローチャートである。
【図11】第1スイッチにおいて実行される宛先検索処理の手順を示すフローチャートである。
【図12】第1実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。
【図13】第1実施例において実行される再設定処理の作業手順を示すフローチャートである。
【図14】第1実施例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。
【図15】図14に示すコマンドが入力された場合に更新された仮想ポートテーブルの設定内容を示す説明図である。
【図16】図14に示すコマンドが入力された場合に更新された実物理ポート変換テーブルの設定内容を示す説明図である。
【図17】比較例のスイッチの機能ブロックを示す説明図である。
【図18】比較例において実行される再設定処理の作業手順を示す第1のフローチャートである。
【図19】比較例において実行される再設定処理の作業手順を示す第2のフローチャートである。
【図20】比較例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。
【図21】第2実施例におけるパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。
【図22】図21に示す第6スイッチの機能ブロックを示す説明図である。
【図23】第2実施例における仮想ポートテーブルの初期設定内容の一例を示す説明図である。
【図24】第2実施例におけるVLAN決定テーブルの初期設定内容の一例を示す説明図である。
【図25】第2実施例における宛先テーブルの初期設定内容の一例を示す説明図である。
【図26】第2実施例におけるフラッディングテーブルの初期設定内容の一例を示す説明図である。
【図27】図22に示す回線ポート変換テーブルの初期設定内容の一例を示す説明図である。
【図28】第2実施例におけるVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。
【図29】図22に示すLAGテーブルの初期設定内容を示す説明図である。
【図30】第2実施例において初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。
【図31】第2実施例の宛先検索処理の手順を示すフローチャートである。
【図32】第2実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。
【図33】第2実施例において実行される再設定処理の作業手順を示すフローチャートである。
【図34】第2実施例において再設定処理のステップS310で入力される設定用コマンドの入力例を示す説明図である。
【図35】図34に示すコマンドが入力された場合に更新される仮想ポートテーブルの設定内容を示す説明図である。
【図36】図34に示すコマンドが入力された場合に更新される回線ポート変換テーブルの設定内容を示す説明図である。
【図37】図34に示すコマンドが入力された場合に更新されるLAGテーブルの設定内容を示す説明図である。
【発明を実施するための形態】
【0030】
A.第1実施例:
A1.システム構成:
図1は、本発明の一実施例としてのパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。このネットワークシステム10は、パケット中継装置としての第1スイッチSW1,第2スイッチSW2,第3スイッチSW3,第4スイッチSW4,第5スイッチSW5と、クライアントとしての6台のパーソナルコンピュータPC1,PC2,PC3,PC4,PC5,PC6とを備え、各クライアント間におけるデータの送受信を実現する。
【0031】
5台のスイッチSW1〜SW5は、いずれもレイヤ2(OSI参照モデルにおける第2層(データリンク層))のフレームを中継するスイッチである。第1スイッチSW1は、4つの物理ポートP11,P12,P13,P14を備えている。ここで、「物理ポート」とは、実在するポートであり、独立した1本(1対)のケーブル(回線)が接続されるポートを意味する。また、各物理ポートは、入力物理ポートと出力物理ポートとを有する。物理ポートP11にはネットワークケーブルL2が接続されている。同様に、物理ポートP12にはネットワークケーブルL3が、物理ポートP13にはネットワークケーブルL4が、物理ポートP14にはネットワークケーブルL5が、それぞれ接続されている。第1スイッチSW1は、他の4台のスイッチSW2〜SW5と接続されている。具体的には、第1スイッチSW1は、ネットワークケーブルL2を介して第2スイッチSW2と接続されている。また、第1スイッチSW1は、ネットワークケーブルL3を介して第3スイッチSW3と、ネットワークケーブルL4を介して第4スイッチSW4と、ネットワークケーブルL5を介して第5スイッチSW5と、それぞれ接続されている。
【0032】
第2スイッチSW2は、4つの物理ポートP21,P22,P23,P24を備えている。物理ポートP21には、ネットワークケーブルL2が接続されている。物理ポートP22には、ネットワークケーブルを介してパーソナルコンピュータPC1が接続されている。同様に、物理ポートP23には、ネットワークケーブルを介してパーソナルコンピュータPC2が接続されている。物理ポートP24には、ネットワークケーブルは接続されていない。
【0033】
第3スイッチSW3は、4つの物理ポートP31,P32,P33,P34を備えている。物理ポートP31には、ネットワークケーブルL3が接続されている。物理ポートP32には、ネットワークケーブルを介してパーソナルコンピュータPC3が接続されている。2つの物理ポートP33,P34には、ネットワークケーブルは接続されていない。
【0034】
第4スイッチSW4は、4つの物理ポートP41,P42,P43,P44を備えている。物理ポートP41には、ネットワークケーブルL4が接続されている。物理ポートP42には、ネットワークケーブルを介してパーソナルコンピュータPC4が接続されている。2つの物理ポートP43,P44には、ネットワークケーブルは接続されていない。
【0035】
第5スイッチSW5は、4つの物理ポートP51,P52,P53,P54を備えている。物理ポートP51には、ネットワークケーブルL5が接続されている。物理ポートP52には、ネットワークケーブルを介してパーソナルコンピュータPC5が接続されている。同様に、物理ポートP53には、ネットワークケーブルを介してパーソナルコンピュータPC6が接続されている。物理ポートP54には、ネットワークケーブルは接続されていない。
【0036】
パーソナルコンピュータPC1〜PC6は、いずれも、レイヤ2での通信を実現する図示しないネットワークインタフェースカードを備え、かかるネットワークインタフェースカードにネットワークケーブルが接続されている。各パーソナルコンピュータPC1〜PC6のネットワークインタフェースカードには、それぞれMAC(Media Access Control)アドレスが設定されている。具体的には、パーソナルコンピュータPC1のネットワークインタフェースカードには、MACアドレス「A1」が設定されている。一般に、MACアドレスは48ビットで表わされるが、本実施例では、説明の便宜上、模式的な識別子によりMACアドレスを表わしている。同様に、パーソナルコンピュータPC2のネットワークインタフェースカードにはMACアドレス「A2」が、パーソナルコンピュータPC3のネットワークインタフェースカードにはMACアドレス「A3」が、パーソナルコンピュータPC4のネットワークインタフェースカードにはMACアドレス「A4」が、パーソナルコンピュータPC5のネットワークインタフェースカードにはMACアドレス「A5」が、パーソナルコンピュータPC6のネットワークインタフェースカードにはMACアドレス「A6」が、それぞれ設定されている。
【0037】
また、各パーソナルコンピュータPC1〜PC6には、自らが所属するVLANのVLAN−IDが設定されている。具体的には、パーソナルコンピュータPC1には、VLAN−ID「10」が設定されている。同様に、パーソナルコンピュータPC2にはVLAN−ID「20」が、パーソナルコンピュータPC3にはVLAN−ID「10」が、パーソナルコンピュータPC4にはVLAN−ID「40」が、パーソナルコンピュータPC5にはVLAN−ID「30」が、パーソナルコンピュータPC6にはVLAN−ID「60」が、それぞれ設定されている。VLAN−IDとは、VLANに所属する各クライアントにおいて、VLANを識別するための識別子である。
【0038】
図2は、図1に示す第1スイッチの機能ブロックを示す説明図である。図2に示すように、第1スイッチSW1は、転送回路100と、ヘッダ処理部200と、記憶部300とを備えている。転送回路100は、前述の物理ポートP11〜P14を備えており、これら物理ポートP11〜P14において受信する信号からレイヤ2フレームを抽出し、また、出力先となる物理ポートP11〜P14からレイヤ2フレームを表わす信号を出力する。加えて、転送回路100は、抽出したレイヤ2フレームのヘッダ内の情報と、入力ポートに関する情報(レイヤ2フレームを入力した物理ポートの情報)とをヘッダ処理部200に通知する。
【0039】
ヘッダ処理部200は、転送回路100から通知されるヘッダ情報及び入力ポート情報を解析して、出力先を決定する機能部であり、例えば、ASIC(Application Specific Integrated Circuit)によって構成することができる。ヘッダ処理部200は、ポート仮想化部210と、VLAN決定部220と、宛先検索部230と、実物理ポート変換部240と、VLAN−ID変換部250とを備えている。
【0040】
ポート仮想化部210は、物理ポートを後述する仮想ポートに変換する。VLAN決定部220は、受信パケットの属するVLANを決定する。宛先検索部230は、受信パケットの出力先(転送先)として仮想ポートを検索する。実物理ポート変換部240は、仮想ポートを物理ポートに変換する。VLAN−ID変換部250は、出力するパケットのVLAN−IDを決定する。
【0041】
記憶部300は、書き込み自在な不揮発性メモリ(例えば、EEPROM:Electronically Erasable and Programmable Read Only Memory)で構成することができる。記憶部300には、予め、仮想ポートテーブル310と、VLAN決定テーブル320と、宛先テーブル330と、フラッディングテーブル340と、実物理ポート変換テーブル350と、VLAN−ID変換テーブル360とを備えている。
【0042】
図3は、図2に示す仮想ポートテーブルの初期設定内容の一例を示す説明図である。仮想ポートテーブル310は、ポート仮想化部210が物理ポートを仮想ポートに変換する際に参照される。図3に示すように、仮想ポートテーブル310は、入力物理ポートと入力仮想ポートとを対応付ける。入力物理ポートとは、物理ポートが有する入力側の物理ポートを意味し、入力仮想ポートとは、仮想ポートが有する入力側の仮想的なポートを意味する。ここで、「仮想ポート」とは、実在するポートとは異なり、仮想的な(論理的な)ポートであり、各テーブルの設定上においてのみ用いられるポートを意味する。そして、仮想ポートは、物理ポートと同様に、入力仮想ポート(入力側の仮想的なポート)と、出力仮想ポート(出力側の仮想的なポート)とを有する。
【0043】
図3の例では、仮想ポートテーブル310において、入力物理ポート「PI1」(物理ポートP11の入力側の物理ポートを意味する)と、入力仮想ポート「VPI1」(仮想ポートVP1の入力側の仮想ポートを意味する)とが対応付けられている。同様に、仮想ポートテーブル310では、入力物理ポート「PI2」と入力仮想ポート「VPI2」とが、入力物理ポート「PI3」と入力仮想ポート「VPI3」とが、入力物理ポート「PI4」と入力仮想ポート「VPI4」とが、それぞれ対応付けられている。このように、仮想ポートテーブル310では、入力物理ポートと入力仮想ポートとは1対1に対応付けられている。換言すると、各入力物理ポートは、1つの入力仮想ポートとのみ対応付けられ、かつ、各仮想入力ポートは、1つの入力物理ポートとのみ対応付けられている。
【0044】
このような仮想ポートテーブル310の初期設定内容は、ユーザ(システム管理者等)により、手動設定される。なお、図3の例では、入力物理ポートと入力仮想ポートとが、番号順に対応付けられているが、これに限らず、入力物理ポートと入力仮想ポートとを1対1に対応付ける任意の方法で、入力物理ポートと入力仮想ポートとを対応付けることができる。
【0045】
図4は、図2に示すVLAN決定テーブルの初期設定内容の一例を示す説明図である。VLAN決定テーブル320は、VLAN決定部320によってVLANが設定される際に参照される。図4に示すように、VLAN決定テーブル320は、入力仮想ポートと、VLAN−IDと、VLAN(VLAN値)とを対応付ける。なお、VLAN−IDは、IEEE802.1Qにおいて規定されているように、レイヤ2フレームのヘッダの一部(VLANタグ)に設定される。VLAN(VLAN値)とは、第1スイッチSW1の内部において、各VLANを識別するための識別子であり、本実施例では、VLAN−IDと同じ値を用いる。なお、VLAN−IDとして、VLAN値とは異なる値を設定する構成を採用することもできる。
【0046】
図4の例では、VLAN決定テーブル320において、入力仮想ポート「VPI1」と、VLAN−ID「10」と、VLAN(VLAN値)「10」とが、互いに対応付けられている。同様に、VLAN決定テーブル320では、入力仮想ポート「VPI2」とVLAN−ID「20」とVLAN「20」とが、入力仮想ポート「VPI2」とVLAN−ID「40」とVLAN「40」とが、入力仮想ポート「VPI3」とVLAN−ID「10」とVLAN「10」とが、入力仮想ポート「VPI4」とVLAN−ID「30」とVLAN「30」とが、入力仮想ポート「VPI4」とVLAN−ID「60」とVLAN「60」とが、それぞれ対応付けられている。同じ入力仮想ポートに対して、複数のVLAN−ID(及びVLAN値)が対応付けられているのは、1つの仮想ポートに複数のVLANを設定し得るからである。なお、第1スイッチSW1(及び他のすべてのスイッチSW2〜SW6)は、異なるVLANの間ではパケット(レイヤ2フレーム)を中継せず、同じVLAN間に属している物理ポートの間でのみパケットを中継する。かかる構成により、ネットワークを複数の論理的なネットワークセグメントに分割することができ、或るネットワークセグメント内での通信が他のネットワークセグメント内での通信に影響を与えることを抑制することができる。
【0047】
このようなVLAN決定テーブル320の初期設定内容は、仮想ポートテーブル310の初期設定内容に基づき、ユーザ(システム管理者等)により、手動設定される。具体的には、例えば、ユーザは、仮想ポートテーブル310の初期設定において、入力仮想ポート「VPI1」に対応付けられている入力物理ポート「PI1」の先には、VLAN−ID「10,20」の値を持ったPCが接続される。そこで、ユーザは、VLAN決定テーブル320において、入力仮想ポート「VPI1」且つVLAN−ID「10」に対して、VLAN「10」を対応付けるエントリ(第1行目のエントリ)と、入力仮想ポート「VPI1」且つVLAN−ID「20」に対して、VLAN「20」を対応付けるエントリ(第2行目のエントリ)とを設定する。
【0048】
図5は、図2に示す宛先テーブルの初期設定内容の一例を示す説明図である。宛先テーブル330は、宛先検索部230により受信パケットの出力先を決定する際に参照される。図5に示すように、宛先テーブル330は、VLAN(VLAN値)と、MACアドレスと、仮想ポートとを対応付ける。
【0049】
図5の例では、宛先テーブル330において、VLAN「10」と、MACアドレス「A1」と、仮想ポート「VP1」とが、互いに対応付けられている。同様に、宛先テーブル330では、VLAN「10」とMACアドレス「A3」と仮想ポート「VP2」とが、VLAN「20」とMACアドレス「A2」と仮想ポート「VP1」とが、VLAN「30」とMACアドレス「A5」と仮想ポート「VP4」とが、VLAN「40」とMACアドレス「A4」と仮想ポート「VP3」とが、VLAN「60」とMACアドレス「A6」と仮想ポート「VP4」とが、それぞれ対応付けられている。宛先テーブル330の各設定内容は、後述の宛先登録処理により設定される。
【0050】
図6は、図2に示すフラッディングテーブルの初期設定内容の一例を示す説明図である。フラッディングテーブル340は、受信パケットに設定されている宛先MACアドレスが、宛先テーブル330に登録されていない場合に参照されるテーブルであり、VLAN(VLAN値)と、出力仮想ポートとを対応付ける。第1スイッチSW1では、受信パケットの宛先MACアドレスが宛先テーブル330に登録されていない、すなわち、未知の宛先へのパケットを受信した場合、受信パケットのVLANと同じVLANに属するすべての宛先(装置)に受信パケットを中継する、いわゆるフラッディングを行う。フラッディングテーブル340は、このフラッディングの際に参照されるテーブルである。
【0051】
図6の例では、フラッディングテーブル340において、VLAN「10」と出力仮想ポート「VPO1,VPO2」とが対応付けられている。同様に、VLAN「20」と出力仮想ポート「VPO1」とが、VLAN「30」と出力仮想ポート「VPO4」とが、VLAN「40」と出力仮想ポート「VPO3」とが、VLAN「60」と出力仮想ポート「VPO4」とが、それぞれ対応付けられている。
【0052】
このようなフラッディングテーブル340の初期設定内容は、VLAN決定テーブル320の初期設定内容に基づき、手動設定される。具体的には、例えば、VLAN決定テーブル320の初期設定において、入力物理ポートPI1が対応付いている入力仮想ポート「VPI1」且つVLAN−ID「10」に対して、VLAN「10」を対応付けるエントリを設定し、入力物理ポートPI2が対応付いている入力仮想ポート「VPI2」且つVLAN−ID「10」に対して、VLAN「10」を対応付けるエントリを設定する。そこで、フラッディングテーブル340において、VLAN「10」に対して、出力仮想ポートである「VPO1,VPO2」が設定される。
【0053】
図7は、図2に示す実物理ポート変換テーブルの初期設定内容の一例を示す説明図である。実物理ポート変換テーブル350は、実物理ポート変換部240によって仮想ポートが物理ポートに変換される際に参照される。図7に示すように、実物理ポート変換テーブル350は、出力仮想ポートと出力物理ポートとを対応付ける。
【0054】
図7の例では、実物理ポート変換テーブル350において、出力仮想ポート「VP01」(仮想ポートVP1の出力側仮想ポートを意味する)と出力物理ポート「PO1」(物理ポートP11の出力側物理ポートを意味する)とが対応付けられている。同様に、実物理ポート変換テーブル350では、出力仮想ポート「VP02」と出力物理ポート「PO2」とが、出力仮想ポート「VP03」と出力物理ポート「PO3」とが、出力仮想ポート「VP04」と出力物理ポート「PO4」とが、それぞれ対応付けられている。このような実物理ポート変換テーブル350の初期設定内容は、ユーザ(システム管理者等)により手動設定される。
【0055】
図8は、図2に示すVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。VLAN−ID変換テーブル360は、VLAN−ID変換部250によって出力するパケットのVLAN−IDが決定される際に参照される。図8に示すように、VLAN−ID変換テーブル360は、出力仮想ポートと、VLAN(VLAN値)と、VLAN−IDとを対応付ける。
【0056】
図8の例では、VLAN−ID変換テーブル360において、出力仮想ポート「VPO1」と、VLAN「10」と、VLAN−ID「10」とが対応付けられている。同様に、出力仮想ポート「VPO2」とVLAN「20」とVLAN−ID「20」とが、出力仮想ポート「VPO2」とVLAN「10」とVLAN−ID「10」とが、出力仮想ポート「VPO3」とVLAN「40」とVLAN−ID「40」とが、出力仮想ポート「VPO4」とVLAN「30」とVLAN−ID「30」とが、出力仮想ポート「VPO4」とVLAN「60」とVLAN−ID「60」とが、それぞれ対応付けられている。このようなVLAN−ID変換テーブル360の初期設定内容は、ユーザ(システム管理者等)により手動設定される。
【0057】
上述したように、仮想ポートテーブル310,VLAN決定テーブル320,フラッディングテーブル340,実物理ポート変換テーブル350,及びVALN−ID変換テーブル360の各初期設定内容については、ユーザが手動設定する。この設定は、例えば、第1スイッチSW1に接続された管理用端末(パーソナルコンピュータなど)に表示された設定用画面において、ユーザがコマンドを入力して実現することができる。なお、かかる設定用画面は、第1スイッチSW1が生成し、管理用端末に送信して表示させる構成を採用することもできる。また、管理用端末が設定用画面を生成し、表示する構成を採用することもできる。
【0058】
図9は、初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。図9では、設定用画面W1に初期設定のためのコマンドが入力されている。なお、図9では、初期設定の際に入力されるコマンドのうち、一部のコマンドのみ表わしている。具体的には、設定用画面W1のうち、領域Ar1には、物理ポートP12と仮想ポートVP2とを対応付けるコマンドが入力されている。同様に、領域Ar2には、物理ポートP14と、仮想ポートVP4とを対応付けるコマンドが入力されている。なお、図9では省略されているが、他の物理ポートP11、P13についても、それぞれ、仮想ポートVP1,VP3と対応付けるコマンドが入力されている。これらのコマンドの入力により、仮想ポートテーブル310及び実物理ポート変換テーブル350が設定される。
【0059】
また、設定用画面W1のうち、領域Ar3には、仮想ポートVP2と、VLAN−ID「10」とを対応付けるコマンドが入力されている。同様に、領域Ar4には、仮想ポートVP4と、VLAN−ID「30,60」とを対応付けるコマンドが入力されている。なお、図9では省略されているが、他の仮想ポートとVLAN−IDとを対応付けるコマンドも入力される。そして、これらのコマンドの入力により、VLAN決定テーブル320と、フラッディングテーブル340と、VLAN−ID変換テーブル360とが設定される。
【0060】
なお、他のスイッチSW2〜SW5の機能構成は、記憶部300に格納されている各テーブルの設定内容を除き、上述した第1スイッチSW1の機能構成と同じであるので、説明を省略する。
【0061】
前述の仮想ポートテーブル310及び実物理ポート変換テーブル350は、請求項におけるポート対応テーブルに相当する。また、VLAN決定テーブル320,宛先テーブル330,フラッディングテーブル340,およびVLAN−ID変換テーブル360は、請求項における出力先特定テーブルに、ポート仮想化部210は請求項における受信側仮想ポート特定部に、宛先検索部230は請求項における出力先仮想ポート決定部に、実物理ポート変換部240及びVLAN−ID変換部は請求項における出力先決定部に、転送回路100は請求項における出力先特定情報取得部及びパケット中継部に、設定用画面W1はユーザインタフェースに、それぞれ相当する。
【0062】
A2.宛先登録処理及び宛先検索処理:
第1スイッチSW1では、いずれかの物理ポートにおいてレイヤ2フレームを受信すると、宛先登録処理及び宛先検索処理が実行される。宛先登録処理とは、フレームの宛先に関するエントリを宛先テーブル330に追加する処理を意味する。宛先検索処理とは、受信フレームの出力先(出力先の物理ポート及び出力VLAN)を検索して決定する処理を意味する。
【0063】
図10は、第1スイッチにおいて実行される宛先登録処理の手順を示すフローチャートである。第1スイッチSW1において、ポート仮想化部210は、転送回路100から通知される受信フレームの入力ポート情報に基づき、仮想ポートテーブル310を参照して、仮想ポート番号を決定し、VLAN決定部220及び宛先検索部230に通知する(ステップS105)。例えば、第1スイッチSW1の物理ポートP11において、パーソナルコンピュータPC1からパーソナルコンピュータPC3宛てのフレームが受信された場合、ポート仮想化部210は、仮想ポートテーブル310を参照して仮想ポート「VPI1」を決定する。
【0064】
VLAN決定部220は、ポート仮想化部210から通知される仮想ポート番号と、転送回路100から受信パケットのVLAN−IDとに基づき、VLAN決定テーブル320を参照して、VLANを決定し、宛先検索部230に通知する(ステップS110)。例えば、上述のように、パーソナルコンピュータPC1からパーソナルコンピュータPC3宛てのフレームを受信した場合、VLAN決定部220には、入力仮想ポート番号「VPI1」と、VLAN−ID「10」とを受信する。したがって、VLAN決定部220は、図4に示すVLAN決定部320を参照して、VLAN「10」を決定する。
【0065】
宛先検索部230は、VLAN決定部220から通知されるVLAN値と、転送回路100から通知されるヘッダ情報に含まれる送信元MACアドレスと、ポート仮想化部210から通知される決定された入力仮想ポートとを対応付けたエントリを、宛先テーブル330において検索し(ステップS115)、当該エントリが宛先テーブル330に登録済みであるか否かを判定する(ステップS120)。ステップS120において未登録であると判定した場合、宛先検索部230は、VLAN決定部220から通知されるVLAN値と、転送回路100から通知されるヘッダ情報に含まれる送信元MACアドレスと、ポート仮想化部210から通知される決定された仮想ポートとを対応付けた新たなエントリを宛先テーブル330に追加する(ステップS125)。例えば、図5に示す最上段のエントリ(VLAN「10」,MACアドレス「A1」,仮想ポート「VP1」が設定されたエントリ)が、未だ登録されていない状態において、上述したパーソナルコンピュータPC1からパーソナルコンピュータPC3宛てのフレームを受信した場合、図5に示す最上段のエントリが追加される。一方、ステップS120において、登録済みであると判定した場合、宛先登録処理は終了する。このように、第1スイッチSW1では、新たな送信元からフレームを受信した場合や、新たなVLANを介してフレームを受信した場合(新たなVLAN−IDが設定されたフレームを受信した場合)に、送信元のMACアドレスと、VLANと、仮想ポートとを学習する。
【0066】
図11は、第1スイッチにおいて実行される宛先検索処理の手順を示すフローチャートである。第1スイッチSW1において、宛先検索部230は、VLAN決定部220から通知されるVLAN値と、転送回路100から通知されるヘッダ情報に含まれる送信元MACアドレスと、ポート仮想化部210から通知される決定された入力仮想ポートとを対応付けたエントリを、宛先テーブル330において検索し(ステップS205)、当該エントリが宛先テーブル330に登録済みであるか否かを判定する(ステップS210)。なお、VLAN決定部220からのVLAN値の通知は、前述の宛先登録処理のステップS110により行われる。また、ポート仮想化部210からの入力仮想ポートの通知は、前述の宛先登録処理のステップS105により行われる。
【0067】
ステップS210において登録済みであると判定すると、宛先検索部230は、見つかったエントリの仮想ポートが有する出力仮想ポートを、フレームを出力すべき仮想ポートとして決定し、決定した出力仮想ポートとVLAN値とを、実物理ポート変換部240及びVLAN−ID変換部250に通知する(ステップS215)。
【0068】
これに対し、ステップS210において未登録であると判定すると、宛先検索部230は、フラッディングテーブル340を参照し、パケットを受信した仮想ポート、すなわち、前述の宛先登録処理におけるステップS110において決定されたVLAN(VLAN値)に対応付けられた仮想ポートと、同じVLANに対応付けられた出力仮想ポートのうち、パケットを受信した仮想ポートに対応する出力仮想ポートを除く他の出力仮想ポートを、受信パケットを出力すべき仮想ポートとして決定し、決定した仮想ポート及びVLAN値を、実物理ポート変換部240及びVLAN−ID変換部250に通知する(ステップS235)。例えば、パーソナルコンピュータPC1から、図示しないパーソナルコンピュータ宛のフレーム(VLAN−ID:10)を受信した場合、宛先テーブル330には、宛先のパーソナルコンピュータのMACアドレスを含むエントリは存在しない。この場合、ステップS235では、フラッディングテーブル340におけるVLAN「10」のエントリに含まれる出力仮想ポート「VPO1,VPO2」のうち、フレームを受信する物理ポートP11に対応付けられた仮想ポートVP1に対応する出力仮想ポートVOP1を除く、他の出力仮想ポートVPO2を、受信パケットを出力すべき仮想ポートとして決定する。
【0069】
実物理ポート変換部240は、ステップS215又はステップS235において宛先検索部230から通知される出力仮想ポートに基づき、実物理ポート変換テーブル350を参照して、出力先の物理ポートを決定し、転送回路100に通知する(ステップS220)。例えば、前述のように、出力仮想ポートVPO2が通知されると、実物理ポート変換部240は、実物理ポート変換テーブル350を参照して、出力先の物理ポートとして出力物理ポートPO2を決定する。
【0070】
VLAN−ID変換部250は、宛先検索部230から通知される出力仮想ポートとVLAN(VLAN値)に基づき、VLAN−ID変換テーブル30を参照して、VLAN−IDを決定し、転送回路100に通知する(ステップS225)。例えば、前述のように、出力仮想ポート「VP02」及びVLAN「10」が通知されると、VLAN−ID変換部250は、VLAN−ID変換テーブル360を参照して、VLAN−ID「10」を決定する。
【0071】
以上の宛先検索処理の結果、転送回路100は、例えば、出力先となる物理ポート「PO2」とVLAN−ID「10」とが通知されると、受信パケットのヘッダにVLAN−ID「10」を設定し、かかるフレームを物理ポートPO2(すなわち、物理ポートP12の出力側のポート)から出力する。
【0072】
A3.接続ポートの切り替え:
図12は、第1実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。図12では、図1の構成から、第1スイッチSW1における2つのポートにおいて接続ポートの切り替え(接続先の装置の変更)が行われた後の構成を表わしている。具体的には、物理ポートP12において、ネットワークケーブルL3に代えて、ネットワークケーブルL5が差し替えられ、その結果、物理ポートP12には、第5スイッチSW5の物理ポートP51が接続されている。同様に、物理ポートP14において、ネットワークケーブルL5に代えて、ネットワークケーブルL3が差し替えられ、その結果、物理ポートP14には、第3スイッチSW3の物理ポートP31が接続されている。
【0073】
このような接続ポートの切り替えは、例えば、「第1スイッチSW1において、同一VLANを収容する複数の物理ポート同士を互いに隣接させる」といったネットワーク管理を容易にする等の目的で行われる。本実施例では、接続ポートを切り換えた(ネットワークケーブルを差し替えた)後に、後述の再設定処理が実行されることで、切り換えたポートに接続されたスイッチの配下にあるパーソナルコンピュータは正常に通信を行う(再開する)ことができる。ここで、本実施例では、上述した仮想ポートを利用することにより、接続ポートの切り替え後に実行する再設定処理を簡素化している。
【0074】
A4.再設定処理:
図13は、第1実施例において実行される再設定処理の作業手順を示すフローチャートである。図12に示すような接続ポートの切り替えの後、ユーザは、第1スイッチSW1に接続された図示しない管理用端末に設定用画面を表示させ、かかる設定用画面から、物理ポートと仮想ポートとを対応付けるための設定用コマンドを入力する(ステップS305)。
【0075】
図14は、第1実施例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。図14では、設定用画面W1において、図12に示す接続ポート切り替えに対応するコマンドの入力例が表わされている。前述の図9に示すように、初期設定では、物理ポートP12に対して仮想ポートVP2を対応付け、また、物理ポートP14に対して仮想ポートVP4を対応付けるコマンドが入力されていた。これに対し、図12に示す接続ポートの切り替え後には、図14に示すように、領域Ar11には、物理ポートP12と、仮想ポートVP4とを対応付けるコマンドが入力される。同様に、領域Ar12には、物理ポートP14と、仮想ポートVP2とを対応付けるコマンドが入力される。これらのコマンドは、管理者が、第1スイッチSW1の2つの物理ポートP12,P14に対して、それぞれ、接続ポートを切り換える前に互いの物理ポートに対応付けられていた仮想ポートが、入れ替えて対応付けられるように判断して入力される。
【0076】
図13に戻って、ポート仮想化部210は、入力されたコマンドに基づき、仮想ポートテーブル310を更新する(ステップS310)。
【0077】
図15は、図14に示すコマンドが入力された場合に更新された仮想ポートテーブルの設定内容を示す説明図である。上述したように、図14に示すコマンドは、物理ポートP12と仮想ポートVP4とを対応付け、物理ポートP14と仮想ポートVP2とを対応付けるコマンドである。したがって、かかるコマンドが入力された結果、図15に示すように、仮想ポートテーブル310では、入力物理ポートPI2に入力仮想ポートVPI4が対応付けられ、入力物理ポートPI4に入力仮想ポートVPI2が対応付けられる。
【0078】
図13に示すように、仮想ポートテーブル310が更新された後、実物理ポート変換部240は、入力されたコマンドに基づき、実物理ポート変換テーブル350を更新する(ステップS315)。
【0079】
図16は、図14に示すコマンドが入力された場合に更新された実物理ポート変換テーブルの設定内容を示す説明図である。上述したように、図14に示すコマンドは、物理ポートP12と仮想ポートVP4とを対応付け、物理ポートP14と仮想ポートVP2とを対応付けるコマンドである。したがって、かかるコマンドが入力された結果、図16に示すように、実物理ポート変換テーブル350では、出力仮想ポートVPO2に出力物理ポートPO4が対応付けられ、出力仮想ポートVPO4に出力物理ポートPO2が対応付けられる。
【0080】
再設定処理が完了すると、切り替えられたポートに接続されたスイッチの配下にあるパーソナルコンピュータは、データの送受信を正常に行うことができる。例えば、図12に示す接続ポートの切り換えが行われ、上述した再設定処理が行われた後に、パーソナルコンピュータPC3からパーソナルコンピュータPC1にデータを送信する場合について考える。第1スイッチSW1では、パーソナルコンピュータPC3から出力されたパーソナルコンピュータPC1宛のフレームを物理ポートP14で受信すると、図10に示す宛先登録処理と、図11に示す宛先検索処理とが実行される。
【0081】
宛先登録処理のステップS105では、入力ポート情報(入力物理ポート:PI4)に基づき、図15に示す設定変更後の仮想ポートテーブル310が参照されて、入力仮想ポート「VPI2」が決定される。ステップS110では、ヘッダ情報に含まれるVLAN−ID「10」と、仮想ポート番号「VP2(VPI2)」とに基づき、VLAN決定テーブル320が参照されて、VLAN「10」が決定される。VLAN「10」,MAC「A3」,仮想ポート「VP2」のエントリは、宛先テーブル330に既に登録されているので、新たなエントリを追加することなく、宛先登録処理は終了する。
【0082】
宛先検索処理では、ステップS205,210,215が実行され、前述のステップS105で決定されたVLAN値「10」と、宛先MACアドレス「A1」に基づき、宛先テーブル330が参照され、出力仮想ポートとして「VP1(VPO1)」が決定される。ステップS220では、出力先の物理ポートとして、図16に示す更新後の実物理ポート変換テーブル350に基づき、出力物理ポート「PO1(P11)」が決定される。ステップS225では、出力仮想ポート「VPO1」及びVLAN「10」に基づき、VLAN−ID変換テーブル360が参照され、VAN−ID「10」が決定される。
【0083】
こうして、接続ポート切り替え後のパーソナルコンピュータPC3から出力されたパーソナルコンピュータPC1宛のフレームは、第1スイッチSW1において、VLAN−IDとして「10」が設定され、物理ポートP11(出力物理ポートPO1)から出力される。したがって、パーソナルコンピュータPC1では、かかるフレームを自分宛のフレームとして受信することができる。
【0084】
このように、第1実施例の再設定処理において入力されるコマンドは、接続ポート切り換えを行った物理ポートについての、物理ポートと仮想ポートとを新たに対応付けるための設定用コマンドのみである。また、かかるコマンドにより更新されるテーブルは、仮想ポートテーブル310と、実物理ポート変換テーブル350の2つのみである。
【0085】
A5.比較例:
図17は、比較例のスイッチの機能ブロックを示す説明図である。図17に示すスイッチSW10は、比較例としての従来のスイッチであり、ポート仮想化部210と、実物理ポート変換部240と、仮想ポートテーブル310と、実物理ポート変換テーブル350とを備えていない点において、図2に示す第1スイッチSW1と異なり、他の構成は、第1スイッチSW1と同様である。具体的には、スイッチSW10は、物理ポートP11〜P14を有する転送回路700と、ヘッダ処理部800と、記憶部900とを備えている。ヘッダ処理部800は、VLAN決定部820と、宛先検索部830と、VLAN−ID変換部850とを備えている。記憶部900は、VLAN決定テーブル920と、宛先テーブル930と、フラッディングテーブル940と、VLAN−ID変換テーブル960とを格納している。
【0086】
比較例のVLAN決定テーブル920は、入力仮想ポートに代えて、入力物理ポートが用いられる点において、図4に示す第1実施例のVLAN決定テーブル320と異なり、他の構成はVLAN決定テーブル320と同じである。比較例の宛先テーブル930は、仮想ポートに代えて、物理ポートが用いられる点において、図5に示す第1実施例の宛先テーブル330と異なり、他の構成は宛先テーブル330と同じである。比較例のフラッディングテーブル940は、出力仮想ポートに代えて、出力物理ポートが用いられる点において、図6に示す第1実施例のフラッディングテーブル340と異なり、他の構成は、フラッディングテーブル340と同じである。比較例のVLAN−ID変換テーブル960は、入力仮想ポートに代えて、入力物理ポートを用いる点において、第1実施例のVLAN−ID変換テーブル360と異なり、他の構成は、VLAN−ID変換テーブル360と同じである。
【0087】
図18は、比較例において実行される再設定処理の作業手順を示す第1のフローチャートである。図19は、比較例において実行される再設定処理の作業手順を示す第2のフローチャートである。図18に記載の処理の実行後に、図19に記載の処理が実行される。比較例においては、実施例と同様に、図12に示すような接続ポートの切り替えが行われた後、再設定処理が実行される。再設定処理では、まず、ユーザは、スイッチSW10に接続された管理用端末に設定用画面を表示させ、切替前(接続ポート切り替え前)の実物理ポートに関する各種設定を削除するコマンドと、削除した設定内容と同じ内容を切替後の実物理ポートに対して設定するコマンドとを入力する(ステップS805)。
【0088】
図20は、比較例の再設定処理において設定用画面に入力されるコマンドの一例を示す説明図である。図20では、設定用画面W10において、図12に示す接続ポート切り替えに対応する従来の各種コマンドの入力例が表わされている。設定用画面W10のうち、領域Ar81には、物理ポートP12に関する切替前の各種設定を削除するコマンドが入力されている。また、領域Ar82には、物理ポートP14に関する切替前の各種設定を削除するコマンドが入力されている。領域Ar83には、物理ポートP12に関する切替後の各種設定を追加するコマンドが入力されている。具体的には、物理ポートP12に対して、VLAN「30,60」を対応付けるコマンドが入力されている。同様に、領域Ar84には、物理ポートP14に関する切替後の各種設定を追加するコマンドが入力されている。具体的には、物理ポートP14に対して、VLAN「10」を対応付けるコマンドが入力されている。
【0089】
図18に示すように、VLAN決定部820は、入力されたコマンドに従って、VLAN決定テーブル920の各エントリのうち、切替前(接続ポート切り替え前)の実物理ポートに関するエントリを削除する(ステップS810)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、VLAN決定部820は、物理ポートP12,P14に関するエントリをVLAN決定テーブル920から削除する。
【0090】
宛先検索部830は、入力されたコマンドに従って、宛先テーブル930の各エントリのうち、切替前(接続ポート切り替え前)の実物理ポートに関するエントリを削除する(ステップS815)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、宛先検索部830は、物理ポートP12,P14に関するエントリを宛先テーブル930から削除する。
【0091】
VLAN−ID変換部850は、入力されたコマンドに従って、VLAN−ID変換テーブル960の各エントリのうち、切替前の実物理ポートに関するエントリを削除する(ステップS820)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、VLAN−ID変換部850は、物理ポートP12,P14に関するエントリをVLAN−ID変換テーブル960から削除する。
【0092】
宛先検索部830は、入力されたコマンドに従って、フラッディングテーブル940の各エントリのうち、切替前(接続ポート切り替え前)の実物理ポートに関するエントリを削除する(ステップS825)。図20に示すコマンド(領域Ar81,Ar82に入力されているコマンド)が入力されると、宛先検索部830は、物理ポートP12,P14に関するエントリをフラッディングテーブル940から削除する。以上のステップS810〜S825により、各テーブルにおいて、接続ポート切り替え後において不要となるエントリの削除が完了する。
【0093】
ステップS825の後、図19に示すように、VLAN決定部820は、入力されたコマンドに従って、VLAN決定テーブル920において、切替後のポートに関する新たなエントリを追加する(ステップS830)。
【0094】
VLAN−ID変換部850は、入力されたコマンドに従って、VLAN−ID変換テーブル960において、切替後のポートに関する新たなエントリを追加する(ステップS835)。
【0095】
宛先検索部830は、入力されたコマンドに従って、フラッディングテーブル940において、切替後のポートに関する新たなエントリを追加する(ステップS840)。
【0096】
宛先検索部830は、入力されたコマンドに従って、宛先テーブル930において、切替後のポートに関する新たなエントリを追加する(ステップS845)。
【0097】
このように、比較例のスイッチSW10では、接続ポートの切り替えの後、ユーザは、切替前のポートに関するエントリを削除するコマンドと、削除したエントリに設定されていた内容と同一の内容を、切替後の物理ポートに対応付けて設定するコマンドとを入力しなければならない。したがって、設定変更に関するユーザの負担は大きい。加えて、比較例のスイッチSW10では、入力されたコマンドに従って、各テーブルにおいて切替前のポートに関するエントリを各テーブルから削除し、その後、各テーブルにおいて切替後のポートに関する新たなエントリが追加される。したがって、すべてのテーブルの更新が完了するまでに長期間を要することとなる。
【0098】
これに対して、第1実施例の第1スイッチSW1では、再設定処理においてユーザが入力すべきコマンドは、切替後の物理ポートと仮想ポートとを新たに対応付けるための設定用コマンドのみである。したがって、接続ポートの切り替え時におけるユーザの作業負担は極めて小さい。加えて、再設定処理において更新されるテーブルは、仮想ポートテーブル310と、実物理ポート変換テーブル350の2つのみである。したがって、テーブルの更新が完了するまでに要する期間は非常に短い。それゆえ、第1実施例の第1スイッチSW1では、接続ポート切り替え時の運用再開までの期間を短くすることができる。
【0099】
加えて、宛先テーブル330に受信フレームの宛先MACアドレスを含むエントリが登録されていない場合には、パケットを受信した仮想ポートに対応付けられたVLANと同じVLANに対応付けられた出力仮想ポートのうち、パケットを受信した仮想ポートに対応する出力仮想ポートを除く他の出力仮想ポートを、受信パケットを出力するための仮想ポートとして決定しているので、未知の装置(宛先テーブル330に登録されていない装置)に対してもパケットを出力(中継)することができる。
【0100】
また、宛先登録処理を実行して、未知の装置(宛先テーブル330に登録されていない装置)からパケットを受信した場合に、その装置に関するエントリを宛先テーブル330に自動的に追加するので、ネットワークシステム10に新たに参加するクライアント(パーソナルコンピュータ)について、ユーザが手動で宛先テーブル330にエントリを追加せずに済み、ユーザの作業負担を軽減できる。
【0101】
B.第2実施例:
B1.システム構成:
図21は、第2実施例におけるパケット中継装置を用いたネットワークシステムの概略構成を示す説明図である。このネットワークシステム10aは、パケット中継装置として、5つのスイッチSW1〜SW5に代えて、第6スイッチSW6,第7スイッチSW7,第8スイッチSW8,第9スイッチSW9を備えている点と、各スイッチSW6〜SW9がリンクアグリゲーション機能を有している点と、このリングアグリゲーション機能によって複数の物理ポートを束ねて得られる1つの論理的なポート(以下、「論理ポート」と呼ぶ)を、出力先の決定などにおいて物理ポートに代えて用いる点とにおいて、第1実施例のネットワークシステム10と異なり、他の構成は、ネットワークシステム10と同じである。
【0102】
図21に示すように、第6スイッチSW6は、第1実施例の第1スイッチSW1と同じ4つの物理ポートP11〜P14を備えている。同様に、第7スイッチSW7は4つの物理ポートP71,P72,P73,P74を、第8スイッチSW8は4つの物理ポートP81,P82,P83,P84を、第9スイッチSW9は4つの物理ポートP91,P92,P93,P94を、それぞれ備えている。
【0103】
第6スイッチSW6が備える物理ポートP11には、ネットワークケーブルL7が接続されている。また、物理ポートP12にはネットワークケーブルL81が、物理ポートP13にはネットワークケーブルL82が、物理ポートP14にはネットワークケーブルL9が、それぞれ接続されている。第6スイッチSW6は、他の3台のスイッチSW7〜SW9と接続されている。具体的には、第6スイッチSW6は、ネットワークケーブルL7を介して第7スイッチSW7と接続されている。また、第6スイッチSW6は、2本のネットワークケーブルL81,L82を介して第8スイッチSW8と、ネットワークケーブルL9を介して第9スイッチSW9と、それぞれ接続されている。
【0104】
前述のように、第6スイッチSW6と第8スイッチSW8とは、2本のケーブルL81,L82で接続されているが、これは、リンクアグリゲーション機能を実現するためである。すなわち、これら2つのケーブルで接続されるリンクを、1つの論理的な回線(以下、「論理回線」と呼ぶ)LAG1として用いることにより、通信帯域の拡大や冗長性の確保を実現している。このとき、第6スイッチSW6では、2本のネットワークケーブルL81,L82と接続される2つの物理ポートP12,P13が、1つの論理的なポートとして用いられる。同様に、第8スイッチSW8では、2つの物理ポートP81,P82が1つの論理的なポートとして用いられる。
【0105】
図22は、図21に示す第6スイッチの機能ブロックを示す説明図である。第6スイッチSW6は、ヘッダ処理部200aがLAG検索部260を備えている点と、記憶部300aにおいて、実物理ポート変換テーブル350に代えて回線ポート変換テーブル350aが格納されている点と、記憶部300aにおいて、LAGテーブル370が格納されている点とにおいて、図2に示す第1実施例の第1スイッチSW1と異なり、他の構成は第1スイッチSW1と同じである。LAG検索部260は、論理回線が接続された物理ポートを検索する機能部である。
【0106】
図23は、第2実施例における仮想ポートテーブルの初期設定内容の一例を示す説明図である。第2実施例では、入力物理ポート「PI3」に対して入力仮想ポート「VPI2」が対応付けられている点と、入力物理ポート「PI4」に対して入力仮想ポート「VP3」が対応付けられている点とにおいて、図3に示す第1実施例の設定内容と異なり、他の設定内容は図3と同じである。このように、2つの入力物理ポート「PI2,PI3」に対して、同一の入力仮想ポート「VPI2」が対応付けられているのは、これらの入力物理ポートPI2,PI3は、論理回線LAG1において1つの論理ポートを形成するためである。
【0107】
図24は、第2実施例におけるVLAN決定テーブルの初期設定内容の一例を示す説明図である。図24に示す最上段から数えて上から3つのエントリは、図4に示す第1実施例の設定内容と同じである。図24に示す4段目から6段目までのエントリは、図4における対応するエントリと異なる。具体的には、4段目のエントリでは、入力仮想ポート「VPI2」と、VLAN−ID「40」と、VLAN「40」とが対応付けられている。また、5段目のエントリでは入力仮想ポート「VPI3」とVLAN−ID「30」とVLAN「30」と、6段目のエントリでは入力仮想ポート「VPI3」とVLAN−ID「60」とVLAN「60」と、それぞれ対応付けられている。
【0108】
図25は、第2実施例における宛先テーブルの初期設定内容の一例を示す説明図である。図25に示す最上段から数えて上から3つのエントリは、図5に示す第1実施例の設定内容と同じである。図25に示す4段目から6段目までのエントリは、図4における対応するエントリと異なる。具体的には、4段目のエントリでは、VLAN「30」と、MACアドレス「A5」と、仮想ポート「VP3」とが対応付けられている。また、5段目のエントリではVLAN「40」とMACアドレス「A4」と仮想ポート「VP2」とが、6段目のエントリではVLAN「60」とMACアドレス「A6」と仮想ポート「VP3」とが、それぞれ対応付けられている。
【0109】
図26は、第2実施例におけるフラッディングテーブルの初期設定内容の一例を示す説明図である。図26に示す最上段から数えて上から2つのエントリは、図6に示す第1実施例の設定内容と同じである。図26に示す3段目から5段目までのエントリは、図6における対応するエントリと異なる。具体的には、3段目のエントリでは、VLAN「30」と、出力仮想ポート「VPO3」とが対応付けられている。また、4段目のエントリではVLAN「40」と出力仮想ポート「VPO2」とが、5段目のエントリではVLAN「60」と出力仮想ポート「VPO3」とが、それぞれ対応付けられている。
【0110】
図27は、図22に示す回線ポート変換テーブルの初期設定内容の一例を示す説明図である。回線ポート変換テーブル350aでは、出力仮想ポートと、出力回線ポートとが対応付けられている。出力回線ポートとは、出力物理ポートと、出力論理ポートとを含む意味である。具体的には、図27に示すように、初期設定では、出力ポート「VPO1」と、出力回線ポートとして出力物理ポート「PO1」とが対応付けられている。また、出力ポート「VPO2」と、出力回線ポートとして論理回線「LAG1」とが対応付けられている。また、出力仮想ポート「VPO3」と、出力回線ポートとして出力物理ポート「PO4」とが対応付けられている。ここで、上から2段目のエントリでは、出力論理ポートに変えて、論理回線番号が対応付けられている。第2実施例では、後述するように、LAGテーブル370を用いて、論理回線番号から出力回線ポートに変換される。
【0111】
図28は、第2実施例におけるVLAN−ID変換テーブルの初期設定内容の一例を示す説明図である。図28に示す最上段から数えて上から3つのエントリは、図8に示す第1実施例の設定内容と同じである。図28に示す4段目から6段目までのエントリは、図8における対応するエントリと異なる。具体的には、4段目のエントリでは、出力仮想ポート「VPO2」と、VLAN「40」と、VLAN−ID「40」とが、対応付けられている。また、5段目のエントリでは出力仮想ポート「VPO3」とVLAN「30」とVLAN−ID「30」とが、6段目のエントリでは出力仮想ポート「VPO3」とVLAN「60」とVLAN−ID「60」とが、それぞれ対応付けられている。
【0112】
図29は、図22に示すLAGテーブルの初期設定内容を示す説明図である。LAGテーブル370は、第2の実施例において出力先を決定する際に参照されるテーブルであり、論理回線と、出力先総数と、出力物理ポートとを対応付ける。出力先総数とは、論理回線を構成するリンク数(束ねられた物理回線数)を意味する。図29に示すように、初期状態においては、LAG370には、論理回線「LAG1」と、出力総数「2」と、2つの出力物理ポート「PO2,PO3」とが対応付けられている。
【0113】
宛先テーブル330を除く上述した各テーブルは、第1実施例の仮想ポートテーブル310等と同様に、ユーザ(システム管理者等)により手動設定される。例えば、第6スイッチSW6に接続された管理用端末に表示された設定用画面において、ユーザがコマンドを入力して実現することができる。
【0114】
図30は、第2実施例において、初期設定時に設定用画面に入力されるコマンドの一例を示す説明図である。図30では、設定用画面W2に初期設定のためのコマンドが入力されている。なお、図30では、第1実施例の図9と同様に、初期設定の際に入力されるコマンドのうち、一部のコマンドのみ表わしている。図30では、設定用画面W2のうち、領域Ar21には、物理ポート「P11」と、仮想ポート「VP1」とを対応付けるコマンドが入力されている。同様に、領域Ar22には、2つの物理ポート「P12,P13」と仮想ポート「VP2」とを対応付けるコマンドが入力されている。なお、図30では省略されているが、他の物理ポートP14についても、仮想ポートVP3と対応付けるコマンドが入力されている。これらのコマンドの入力により、仮想ポートテーブル310及び回線ポート変換テーブル350aが設定される。
【0115】
また、設定用画面W2のうち、領域Ar23には、仮想ポートVP1と、VLAN−ID「10,20」とを対応付けるコマンドが入力されている。なお、後述の領域Ar25に入力されたコマンド、および仮想ポート「VP3」とVLAN−ID「30,60」とを対応付ける図示しないコマンドの入力により、VLAN決定テーブル320と、フラッディングテーブル340と、VLAN−ID変換テーブル360とが設定される。
【0116】
また、設定用画面W2のうち、領域Ar24には、仮想ポートVP2と、論理回線LAG1とを対応付けるコマンドが入力されている。領域Ar22に入力された前述のコマンドによって回線ポート変換テーブル350aにおいて出力仮想ポート「VPO2(VP2)」に対応付けられた出力回線ポート「PO2,PO3(P12,P13)」が、領域Ar24に入力されたコマンドにより、論理回線「LAG1」に更新される。加えて、前述の領域Ar22に入力されたコマンドと、領域Ar24に入力されたコマンドとにより、LAGテーブル370が設定される。
【0117】
また、領域Ar25には、論理回線LAG1と、VLAN−ID「10,40」とを対応付けるコマンドが入力されている。かかるコマンドの入力により、上述したように、VLAN決定テーブル320,フラッディングテーブル340,およびVLAN−ID変換テーブル360の設定が実現される。
【0118】
B2.宛先検索処理:
図31は、第2実施例の宛先検索処理の手順を示すフローチャートである。第2実施例の宛先検索処理は、ステップS220に代えてステップS220aを実行する点と、ステップS222,S223,S224を追加して実行する点とにおいて、図11に示す第1実施例の宛先検索処理と異なり、他の処理は第1実施例と同じである。
【0119】
具体的には、前述のステップS215及びS235において、出力仮想ポートが決定されると、実物理ポート変換部240は、宛先検索部230から通知される出力仮想ポートに基づき、回線ポート変換テーブル350aを参照して、出力仮想ポートを出力回線ポートに変換する(ステップS220a)。
【0120】
例えば、図21に示すパーソナルコンピュータPC1からパーソナルコンピュータPC3にデータを送る場合、ステップS215が実行されて出力仮想ポート「VPO2」が通知される。したがって、実物理ポート変換部240は、図27に示す回線ポート変換テーブル350aを参照して、出力先回線「LAG1」に変換する。
【0121】
LAG検索部260は、ステップS220aで変換された後の回線ポートは、論理ポートであるか否かを判定し(ステップS222)、論理ポートであると判定すると(ステップS222:YES)、回線ポート(LAG番号)が設定されたエントリをLAGテーブル370において検索する(ステップS223)。例えば、前述のように、変換後の出力回線ポートが論理ポートを意味する「LAG1」であれば、LAG検索部260は、図29に示すLAGテーブル370を参照して、エントリを見つけることができる。
【0122】
LAG検索部260は、ステップS223で見つかったエントリに設定されている物理ポートの中から、所定のアルゴリズムに基づき、パケット(レイヤ2フレーム)を出力するための物理ポートを決定し、転送回路100に通知する(ステップS224)。例えば、前述のように、ステップS223において、図29に示す論理回線LAG1が設定されたエントリが発見された場合、このエントリには2つの出力物理ポートPO2,PO3が設定されている。そこで、LAG検索部260は、これら2つの出力物理ポートPO2,PO3のうち、いずれかの出力物理ポートを、パケットを出力するための物理ポートとして決定する。物理ポートを決定するための所定のアルゴリズムとしては、例えば、宛先MACアドレスや送信元MACアドレスなどの経路情報に基づき、2種類のハッシュ値(例えば、「0」と「1」)のいずれかが算出される算出式を用いてハッシュ値を求め、得られたハッシュ値に基づき決定する方法を採用することができる。また、例えば、ラウンドロビン方式で、複数ある物理ポートを所定の順序で選択する方法を採用することもできる。
【0123】
ステップS224において、出力物理ポートが決定されると、前述のステップS225が実行され、VLAN−IDが決定され、転送回路100に通知される。このようにして、例えば、ステップS224において、パケットを出力する物理ポートとして「PO2」が決定され、ステップS225において、VLAN−IDとして「10」が決定されると、転送回路100は、パーソナルコンピュータPC1から受信したフレームのヘッダにVLAN−ID「10」を設定し、かかるフレームを物理ポートPO2(すなわち、物理ポートP12の出力側のポート)から出力する。
【0124】
B3.接続ポートの切り替え:
図32は、第2実施例における接続ポートの切り替え後のネットワークシステムの構成例を示す説明図である。図32では、図21の構成から、第6スイッチSW6における2つのポートにおいて接続ポートの切り替えが行われた後の構成を表わしている。具体的には、物理ポートP11において、ネットワークケーブルL7に代えて、ネットワークケーブルL81が差し替えられ、その結果、物理ポートP11には、第8スイッチSW8の物理ポートP81が接続されている。同様に、物理ポートP12において、ネットワークケーブルL81に代えて、ネットワークケーブルL7が差し替えられ、その結果、物理ポートP12には、第7スイッチSW7の物理ポートP71が接続されている。
【0125】
第2実施例では、第1実施例と同様に、接続ポートの切り替えの後に、後述の再設定処理が実行されることで、切り換えたポートに接続されたスイッチの配下にあるパーソナルコンピュータは正常に通信を行う(再開する)ことができる。また、第2実施例では、第1実施例と同様に、仮想ポートを利用することにより、接続ポートの切り替え後に実行する再設定処理を簡素化している。
【0126】
B4.再設定処理:
図33は、第2実施例において実行される再設定処理の作業手順を示すフローチャートである。第2実施例の再設定処理は、ステップS315に代えてステップS315aを実行する点と、ステップS320,S325の処理を追加して実行する点とにおいて、図13に示す第1実施例の再設定処理と異なり、他の処理は第1実施例と同じである。
【0127】
図34は、第2実施例において、再設定処理のステップS310で入力される設定用コマンドの入力例を示す説明図である。図34では、設定用画面W2において、図32に示す接続ポート切り替えに対応するコマンドの入力例が表わされている。前述の図30に示すように、初期設定では、物理ポートP11に対して仮想ポートVP1を対応付け、また、物理ポートP12,P13に対して仮想ポートVP2を対応付けるコマンドが入力されていた。これに対し、図32に示す接続ポートの切り替え時には、図34に示すように、設定用画面W2のうち、領域Ar31には、物理ポートP12と仮想ポートVP1とを対応付けるコマンドが入力される。同様に、領域Ar32には、物理ポートP11と仮想ポートVP2とを対応付けるコマンドが入力される。なお、物理ポートP13に関しては、既に仮想ポートVP2と対応付いている為、改めて対応付ける必要はない。これらのコマンドは、管理者が、第6スイッチSW6の2つのP11,P12に対して、それぞれ、接続ポートを切り替える前に互いの物理ポートに対応付けられていた仮想ポートを、入れ替えて対応付けるように判断して入力される。
【0128】
図35は、図34に示すコマンドが入力された場合に更新される仮想ポートテーブルの設定内容を示す説明図である。仮想ポートテーブル310の設定内容は、図23に示す初期設定内容と比べて、2つの入力物理ポート「PI1,PI2」に関するエントリが更新(変更)されている。具体的には、入力物理ポート「PI1」に対して、入力仮想ポート「VPI2」が対応付けられている。また、入力物理ポート「PI2」に対して、入力仮想ポート「VPI1」が対応付けられている。
【0129】
ステップS310の実行後、実物理ポート変換部240は、入力されたコマンドに基づき、回線ポート変換テーブル350aを更新する(ステップS315a)。
【0130】
図36は、図34に示すコマンドが入力された場合に更新される回線ポート変換テーブルの設定内容を示す説明図である。上述したように、図34に示すコマンドは、物理ポートP12と仮想ポートVP1とを対応付け、物理ポートP11と仮想ポートVP2とを対応付けるコマンドである。したがって、かかるコマンドが入力された結果、図36に示すように、回線ポート変換テーブル350aでは、出力仮想ポートVPO1に出力物理ポートPO2が対応付けられている。なお、出力仮想ポートVPO2に対して対応付けられている論理回線LAG1については、図34に示すコマンドの入力では更新(変更)されない。
【0131】
LAG検索部260は、入力されたコマンドに基づき、回線ポート変換テーブル350a及びLAGテーブル370を参照して、接続ポート切り替えの対象となるポートが、論理ポートを構成する物理ポートであるか否かを判定する(ステップS320)。例えば、図34に示す領域Ar31に入力されたコマンドでは、仮想ポートVP1に対して、物理ポートP11に代えて、物理ポートP12が対応付けられている。また、領域Ar32に入力されたコマンドでは、仮想ポートVP2に対して、物理ポートP12に代えて物理ポートP11が新たに対応付けられている。したがって、LAG検索部260は、接続ポート切り替えの対象となるポートは、2つの物理ポートP11,P12であると特定することができる。また、図29に示すLAGテーブル370を参照することにより、LAG検索部260は、2つの物理ポートP11,P12は、論理回線LAG1を構成する物理ポートであると判定することができる。
【0132】
前述のステップS320において、接続ポート切り替えの対象となるポートが論理ポートを構成する物理ポートであると判定された場合(ステップS320:YES)、LAG検索部260は、ステップS305で入力されたコマンドに基づき、LAGテーブル370を更新する(ステップS325)。図34に示すように、領域Ar32に入力されたコマンドにより、仮想ポートVP2に対して、2つの物理ポートP11,P13が対応付けられている。ここで、図36に示すように、回線ポート変換テーブル350aにおいて、仮想ポートVP2に対して論理回線LAG1が対応付けられている。したがって、領域Ar32に入力されたコマンドにより、LAG検索部260は、論理回線LAG1に対して、2つの物理ポートP11,P13を対応付ければよいことが分かる。
【0133】
図37は、図34に示すコマンドが入力された場合に更新されるLAGテーブルの設定内容を示す説明図である。上述のように、図34の領域Ar32に入力されたコマンドに基づき、LAG検索部260は、論理回線LAG1に対して、2つの物理ポートP11,P13を対応付ければよいことが分かるので、図37に示すように、論理回線LAG1のエントリに対して、出力物理ポート番号として「PO1」(物理ポートP11の出力側ポート)と、「PO3」(物理ポートP13の出力側ポート)とが対応付けられている。
【0134】
前述のステップS320において、接続ポート切り替えの対象となるポートが論理ポートを構成する物理ポートでないと判定された場合(ステップS320:NO)、再設定処理は終了する。したがって、この場合、LAGテーブル370は更新されない。
【0135】
再設定処理が完了すると、切り替えられたポートに接続されたスイッチの配下にあるパーソナルコンピュータは、データの送受信を正常に行うことができる。例えば、図32に示す接続ポートの切り換えが行われ、上述した再設定処理が行われた後に、パーソナルコンピュータPC1からパーソナルコンピュータPC3にデータを送信する場合について考える。
【0136】
宛先登録処理のステップS105では、入力ポート情報(入力物理ポート:PI2)に基づき、図35に示す設定変更後の仮想ポートテーブル310が参照されて、仮想ポート番号「VP1」が決定される。ステップS110では、ヘッダ情報に含まれるVLAN−ID「10」と、仮想ポート番号「VP1(VPI1)」に基づき、図24に示すVLAN決定テーブル320が参照されて、VLAN「10」が決定される。VLAN「10」,MAC「A1」,仮想ポート「VP1」のエントリは、図25に示す宛先テーブル330に既に登録されているので、新たなエントリを追加することなく、宛先登録処理は終了する。
【0137】
宛先検索処理では、ステップS205,S210,S215が実行され、前述の宛先登録処理で決定されたVLAN値「10」と、宛先MACアドレス「A3」に基づき、図25に示す宛先テーブル330が参照され、出力仮想ポートとして「VP2(VPO2)」が決定される。ステップS220aでは、図36に示す回線ポート変換テーブル350aが参照され、回線ポートとして「LAG1」が決定される。したがって、ステップS222において、「変換後の回線ポートは論理ポートである」(ステップS222:YES)と判定され、ステップS223が実行される。ステップS223では、図37に示す設定変更後のLAGテーブルにおいて、「LAG1」が設定されたエントリが検索され、ステップS224では、図37に示すエントリに設定されている2つの物理ポートP12,P13のうち、いずれかの物理ポートが、パケットを出力する物理ポートとして決定される。ステップS225では、出力仮想ポート「VPO2」と、VLAN「10」とに基づき、図28に示すVLAN−ID変換テーブル360が参照され、VLAN−ID「10」が決定される。
【0138】
こうして、接続ポート切り替え後のパーソナルコンピュータPC1から出力されたパーソナルコンピュータPC3宛のフレームは、第6スイッチSW6において、VLAN−IDとして「10」が設定され、物理ポートP12(出力物理ポートPO2)又は物理ポートP13(出力物理ポートPO3)から出力される。したがって、パーソナルコンピュータPC3では、かかるフレームを自分宛のフレームとして受信することができる。
【0139】
以上説明した第2実施例の第6スイッチSW6は、第1実施例の第1スイッチSW1と同様の効果を有する。加えて、第2実施例の第6スイッチSW6では、論理ポートを構成する物理ポートの一部又は全部が接続ポート切り替えの対象ポートであったとしても、簡易なコマンドを入力のみで、接続ポートの切り替えを実現できる。また、接続ポートの切り替え時に更新されるテーブルは、仮想ポートテーブル310と、回線ポート変換テーブル350aと、LAGテーブル370とであり、他の4つのテーブル320,330,340,360は更新させないようにすることができる。したがって、接続ポート切り替え時の運用再開までの期間を短くすることができる。
【0140】
C.変形例:
なお、上記各実施例における構成要素の中の、独立クレームでクレームされた要素以外の要素は、付加的な要素であり、適宜省略可能である。また、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【0141】
C1.変形例1:
各実施例では、パケット中継装置としてレイヤ2スイッチを採用していたが、本発明はこれに限定されるものではない。例えば、レイヤ2スイッチに代えて、レイヤ3スイッチやルータなどレイヤ3パケットを中継する装置や、ファイバチャネルスイッチや、ATM(Asynchronous Transfer Mode)スイッチなど、レイヤ2フレームを除く、他の任意のパケット(データの集まり)を中継する装置を採用することができる。なお、例えば、レイヤ2スイッチに代えてルータを採用する場合には、レイヤ3パケットを出力するインタフェース情報(例えば、物理ポート)と、仮想ポートとを対応付けることが好ましい。このような構成により、レイヤ3スイッチやルータが備えるルーティングテーブルを、接続ポートの切り替えが起こるたびに更新せずに済み、接続ポートの切り替えに伴うダウンタイムを短くすることができる。
【0142】
また、上述したレイヤ2スイッチやルータなどのパケットを中継する専用装置に限らず、パケットを中継する機能を有する他の装置を採用することもできる。例えば、サーバ装置や、ストレージ装置を採用することもできる。具体的には、サーバ装置が複数の入出力インタフェースを備える構成において、各入出力インタフェースを、仮想ポートと対応付けることで、各入出力インタフェースに接続された装置(例えば、他のサーバ装置)の故障等により、接続インタフェースを切り替える場合などに、切り替え後の運用再開までの期間を短くすることができる。また、各装置のポートに関連付けられた情報の保持(更新されないようにすること)を実現することができる。
【0143】
C2.変形例2:
各実施例では、宛先検索処理のステップS210において、宛先テーブルに受信フレームの宛先MACアドレスを含むエントリが登録されていない場合に、フラッディングを行うものとしていたが、本発明はこれに限定されるものではない。例えば、宛先テーブルに宛先MACアドレスが登録されていない場合には、フラッディングの実行に代えて、受信パケットを廃棄する、又は、受信パケットの廃棄と共に、廃棄した旨を送信元に送信する構成を採用することもできる。
【0144】
C3.変形例3:
各実施例では、パケットの出力先(宛先)を決定する機能部(ヘッダ処理部200,200a及び記憶部300,300a)と、パケットを転送する機能部(転送回路100)とは、同一の筐体に組み込まれていたが、これに代えて、これら2つの機能部を、互いに異なる筐体に組み込むこともできる。例えば、転送回路100を有するスイッチと、かかるスイッチに接続されたスイッチとは別の装置(筐体)であって、ヘッダ処理部200,200a、及び記憶部300,300aを備える装置(例えば、パーソナルコンピュータ)と、を採用することもできる。この構成では、スイッチと、スイッチに接続された出力先を決定する機能を有する装置とが、請求項におけるパケット中継装置に相当する。
【0145】
C4.変形例4:
各実施例では、宛先登録処理を実行し、新たに接続された装置からパケットを受信した場合に、受信したパケットのヘッダ情報や、受信したポートの情報等から、宛先テーブル330にエントリを追加(学習)する構成であったが、本発明はこれに限定されるものではない。例えば、予め、ユーザが、想定されるすべての端末に関する宛先エントリを宛先テーブル330に登録しておく構成を採用することもできる。
【0146】
C5.変形例5:
各実施例では、設定用画面は、スイッチSW1,SW6に接続された管理端末に表示されていたが、本発明はこれに限定されるものではない。例えば、スイッチSW1,SW6が、筐体前面などに表示部(例えば、液晶ディスプレイ等)を備える構成であれば、かかる表示部に、設定用画面を表示させる構成を採用することもできる。また、設定用画面のユーザインタフェースは、CUI(Character-based User Interface)であったが、CUIに代えて、GUI(Graphical User Interface)を採用することもできる。
【0147】
C6.変形例6:
各実施例では、ネットワークシステム10,10aでは、VLANが設定されていたが、これに代えて、VLANが設定されていないシステムにも本発明を適用することができる。この構成では、例えば、以下のようにして出力先となる物理ポートを決定することができる。先ず、予め宛先テーブルとして、宛先MACアドレスと仮想ポートとを対応付けておく。そして、パケットを受信すると、宛先テーブルを参照して、受信パケットの宛先MACアドレスに基づき出力先となる仮想ポートを決定し、実物理ポート変換テーブル350、または、回線ポート変換テーブル350a及びLAGテーブル370を参照して、対応する物理ポートを決定する。このような構成においても、接続ポートの切り替えの際に、宛先テーブルの更新を省略でき、運用再開までの期間を短くすることができる。
【0148】
C7.変形例7:
本発明において、ネットワークシステムの構成は、各実施例における構成に限定されるものではない。例えば、スイッチの数は、第1実施例では5台、第2実施例では4台であったが、任意の台数を採用することができる。また、各スイッチに接続されるクライアントは、パーソナルコンピュータであったが、パーソナルコンピュータに代えて、サーバ装置や、ストレージ装置や、PDA(Personal Digital Assistants)や、携帯電話端末など、データを送受信する任意の装置を採用することができる。
【0149】
C8.変形例8:
各実施例において、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。また、これとは逆に、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよい。
【符号の説明】
【0150】
10,10a…ネットワークシステム
100…転送回路
200,200a…ヘッダ処理部
210…ポート仮想化部
220…VLAN決定部
230…宛先検索部
240…実物理ポート変換部
250…VLAN−ID変換部
260…LAG検索部
300,300a…記憶部
310…仮想ポートテーブル
320…VLAN決定テーブル
330…宛先テーブル
340…フラッディングテーブル
350…実物理ポート変換テーブル
350a…回線ポート変換テーブル
360…VLAN−ID変換テーブル
370…LAGテーブル
SW1…第1スイッチ
SW2…第2スイッチ
SW3…第3スイッチ
SW4…第4スイッチ
SW5…第5スイッチ
SW6…第6スイッチ
SW7…第7スイッチ
SW8…第8スイッチ
SW9…第9スイッチ
L2〜L5,L7,L81,L82,L9…ネットワークケーブル
PC1〜PC6…パーソナルコンピュータ
P11〜P14,P21〜P24,P31〜P34,P41〜P44,P51〜P54,P71〜P74,P81〜P84,P91〜P94…物理ポート
Ar1〜Ar4,Ar11,Ar12,Ar21,Ar22,Ar23,Ar24,Ar25,Ar31,Ar32,Ar81,Ar82,Ar83,Ar84…領域
LAG1…論理回線
W1,W2,W10…設定用画面
700…転送回路
800…ヘッダ処理部
820…VLAN決定部
830…宛先検索部
850…VLAN−ID変換部
900…記憶部
920…VLAN決定テーブル
930…宛先テーブル
940…フラッディングテーブル
960…VLAN−ID変換テーブル
【特許請求の範囲】
【請求項1】
パケット中継装置であって、
パケットを送受信する複数の物理ポートと、
前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付けるポート対応テーブルと、
前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける出力先特定テーブルと、
前記受信パケットから前記出力先特定情報を取得する出力先特定情報取得部と、
前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する出力先仮想ポート決定部と、
前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する出力先決定部と、
を備える、パケット中継装置。
【請求項2】
請求項1に記載のパケット中継装置において、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスを含み、
前記出力先特定テーブルは、少なくとも、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの宛先アドレスとを対応付ける宛先テーブルを含み、
前記出力先仮想ポート決定部は、前記出力先特定テーブルを参照して、前記受信パケットの宛先アドレスに基づき、前記受信パケットの出力先となる前記仮想ポートを決定する、パケット中継装置。
【請求項3】
請求項2に記載のパケット中継装置において、さらに、
前記ポート対応テーブルを参照して、前記受信パケットを受信した前記物理ポート又は前記論理ポートに対応する前記仮想ポートを特定する受信側仮想ポート特定部と、
前記決定された出力先に、前記受信パケットを中継するパケット中継部と、
を備え、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスと、前記受信パケットのヘッダに設定されているVLAN−IDと、を含み、
前記宛先テーブルは、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記宛先アドレスと、前記パケット中継装置においてVLANを識別するためのVLAN値と、を対応付け、
前記出力先特定テーブルは、
前記宛先テーブルと、
前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記VLAN−IDと、前記VLAN値と、を対応付けるVLAN決定テーブルと、
前記出力先仮想ポートと、前記VLAN値と、前記VLAN−IDと、を対応付けるVLAN−ID変換テーブルと、
を含み、
前記出力先決定部は、前記VLAN決定テーブルを参照して、前記特定された受信側仮想ポートと、前記受信パケットの前記VLAN−IDと、に基づき、前記受信パケットの送信元が所属するVLANの前記VLAN値を決定し、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照して、前記決定されたVLAN値と、前記受信パケットのヘッダに含まれる前記宛先アドレスと、に基づき、前記受信パケットについての前記出力先仮想ポートを決定し、
前記出力先決定部は、前記VLAN−ID変換テーブルを参照して、前記決定された出力先仮想ポートと、前記決定されたVLAN値とに基づき、前記受信パケットを出力する際に用いる前記VLAN−IDを決定し、
前記パケット中継部は、前記決定されたVLAN−IDを前記受信されたパケットのヘッダに書き込み、前記出力先として決定された前記物理ポートまたは前記論理ポートから、前記受信パケットを出力する、パケット中継装置。
【請求項4】
請求項3に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照した際に、前記決定されたVLAN値と、前記受信パケットの前記宛先アドレスとが、前記宛先テーブルにおいて、いずれの前記仮想ポートにも対応付けられていない場合には、前記受信パケットを受信した前記仮想ポートに対応付けられている前記VLAN値と同じVLAN値に対応付けられている前記仮想ポートであって、前記受信パケットを受信した仮想ポートを除く他のすべての仮想ポートを、前記出力先仮想ポートとして決定する、パケット中継装置。
【請求項5】
請求項3または請求項4に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記受信パケットが受信された際に、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスとが、いずれの仮想ポートにも対応付けられていない場合には、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスと、前記受信パケットを受信した前記物理ポートまたは前記論理ポートに対応付けられた仮想ポートと、を対応付ける、パケット中継装置。
【請求項6】
請求項1ないし請求項5のいずれかに記載のパケット中継装置において、さらに、
前記ポート対応テーブルにおける、前記複数の物理ポートと前記複数の仮想ポートとの対応関係、または、前記複数の論理ポートと前記複数の仮想ポートとの対応関係の更新を許容するユーザインタフェースを備える、パケット中継装置。
【請求項7】
請求項1ないし請求項6のいずれかに記載のパケット中継装置において、
前記パケットは、レイヤ2フレームである、パケット中継装置。
【請求項8】
パケットを送受信する複数の物理ポートを有するパケット中継装置において、受信パケットの出力先を決定するための方法であって、
(a)前記パケット中継装置において、前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける工程と、
(b)前記パケット中継装置において、前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける工程と、
(c)前記パケット中継装置において、前記受信パケットから前記出力先特定情報を取得する工程と、
(d)前記パケット中継装置において、前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する工程と、
(e)前記パケット中継装置において、前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する工程と、
を備える、方法。
【請求項9】
コンピュータと、パケットを送受信する複数の物理ポートと、を有するパケット中継装置において、受信パケットの出力先を決定するためのプログラムであって、
(a)各前記物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける機能と、
(b)前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける機能と、
(c)前記受信パケットから前記出力先特定情報を取得する機能と、
(d)前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する機能と、
(e)前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する機能と、
を前記コンピュータに実現させるためのプログラム。
【請求項10】
請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項1】
パケット中継装置であって、
パケットを送受信する複数の物理ポートと、
前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付けるポート対応テーブルと、
前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける出力先特定テーブルと、
前記受信パケットから前記出力先特定情報を取得する出力先特定情報取得部と、
前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する出力先仮想ポート決定部と、
前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する出力先決定部と、
を備える、パケット中継装置。
【請求項2】
請求項1に記載のパケット中継装置において、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスを含み、
前記出力先特定テーブルは、少なくとも、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの宛先アドレスとを対応付ける宛先テーブルを含み、
前記出力先仮想ポート決定部は、前記出力先特定テーブルを参照して、前記受信パケットの宛先アドレスに基づき、前記受信パケットの出力先となる前記仮想ポートを決定する、パケット中継装置。
【請求項3】
請求項2に記載のパケット中継装置において、さらに、
前記ポート対応テーブルを参照して、前記受信パケットを受信した前記物理ポート又は前記論理ポートに対応する前記仮想ポートを特定する受信側仮想ポート特定部と、
前記決定された出力先に、前記受信パケットを中継するパケット中継部と、
を備え、
前記出力先特定情報は、少なくとも、前記受信パケットの宛先アドレスと、前記受信パケットのヘッダに設定されているVLAN−IDと、を含み、
前記宛先テーブルは、前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記宛先アドレスと、前記パケット中継装置においてVLANを識別するためのVLAN値と、を対応付け、
前記出力先特定テーブルは、
前記宛先テーブルと、
前記複数の仮想ポートのうちいずれかの仮想ポートと、前記受信パケットの前記VLAN−IDと、前記VLAN値と、を対応付けるVLAN決定テーブルと、
前記出力先仮想ポートと、前記VLAN値と、前記VLAN−IDと、を対応付けるVLAN−ID変換テーブルと、
を含み、
前記出力先決定部は、前記VLAN決定テーブルを参照して、前記特定された受信側仮想ポートと、前記受信パケットの前記VLAN−IDと、に基づき、前記受信パケットの送信元が所属するVLANの前記VLAN値を決定し、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照して、前記決定されたVLAN値と、前記受信パケットのヘッダに含まれる前記宛先アドレスと、に基づき、前記受信パケットについての前記出力先仮想ポートを決定し、
前記出力先決定部は、前記VLAN−ID変換テーブルを参照して、前記決定された出力先仮想ポートと、前記決定されたVLAN値とに基づき、前記受信パケットを出力する際に用いる前記VLAN−IDを決定し、
前記パケット中継部は、前記決定されたVLAN−IDを前記受信されたパケットのヘッダに書き込み、前記出力先として決定された前記物理ポートまたは前記論理ポートから、前記受信パケットを出力する、パケット中継装置。
【請求項4】
請求項3に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記宛先テーブルを参照した際に、前記決定されたVLAN値と、前記受信パケットの前記宛先アドレスとが、前記宛先テーブルにおいて、いずれの前記仮想ポートにも対応付けられていない場合には、前記受信パケットを受信した前記仮想ポートに対応付けられている前記VLAN値と同じVLAN値に対応付けられている前記仮想ポートであって、前記受信パケットを受信した仮想ポートを除く他のすべての仮想ポートを、前記出力先仮想ポートとして決定する、パケット中継装置。
【請求項5】
請求項3または請求項4に記載のパケット中継装置において、
前記出力先仮想ポート決定部は、前記受信パケットが受信された際に、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスとが、いずれの仮想ポートにも対応付けられていない場合には、前記宛先テーブルにおいて、前記決定されたVLAN値と、前記受信パケットの送信元アドレスと、前記受信パケットを受信した前記物理ポートまたは前記論理ポートに対応付けられた仮想ポートと、を対応付ける、パケット中継装置。
【請求項6】
請求項1ないし請求項5のいずれかに記載のパケット中継装置において、さらに、
前記ポート対応テーブルにおける、前記複数の物理ポートと前記複数の仮想ポートとの対応関係、または、前記複数の論理ポートと前記複数の仮想ポートとの対応関係の更新を許容するユーザインタフェースを備える、パケット中継装置。
【請求項7】
請求項1ないし請求項6のいずれかに記載のパケット中継装置において、
前記パケットは、レイヤ2フレームである、パケット中継装置。
【請求項8】
パケットを送受信する複数の物理ポートを有するパケット中継装置において、受信パケットの出力先を決定するための方法であって、
(a)前記パケット中継装置において、前記複数の物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける工程と、
(b)前記パケット中継装置において、前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける工程と、
(c)前記パケット中継装置において、前記受信パケットから前記出力先特定情報を取得する工程と、
(d)前記パケット中継装置において、前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する工程と、
(e)前記パケット中継装置において、前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する工程と、
を備える、方法。
【請求項9】
コンピュータと、パケットを送受信する複数の物理ポートと、を有するパケット中継装置において、受信パケットの出力先を決定するためのプログラムであって、
(a)各前記物理ポートと複数の仮想ポートとを、または、2以上の前記物理ポートを束ねた論理的なポートである論理ポートであって複数の論理ポートと前記複数の仮想ポートとを、1対1に対応付ける機能と、
(b)前記複数の物理ポートのうちいずれかの物理ポートまたは前記複数の論理ポートのうちいずれかの論理ポートにより受信された受信パケットの出力先を特定するために用いられる出力先特定情報と、前記複数の仮想ポートのうちいずれかの仮想ポートと、を対応付ける機能と、
(c)前記受信パケットから前記出力先特定情報を取得する機能と、
(d)前記出力先特定テーブルを参照して、前記取得された出力先特定情報に基づき、前記受信パケットの出力先となる前記仮想ポートである出力先仮想ポートを決定する機能と、
(e)前記ポート対応テーブルを参照して、前記決定された出力先仮想ポートに対応する前記物理ポートまたは前記論理ポートを、前記受信パケットの出力先として決定する機能と、
を前記コンピュータに実現させるためのプログラム。
【請求項10】
請求項9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【公開番号】特開2012−156732(P2012−156732A)
【公開日】平成24年8月16日(2012.8.16)
【国際特許分類】
【出願番号】特願2011−13522(P2011−13522)
【出願日】平成23年1月26日(2011.1.26)
【出願人】(504411166)アラクサラネットワークス株式会社 (315)
【Fターム(参考)】
【公開日】平成24年8月16日(2012.8.16)
【国際特許分類】
【出願日】平成23年1月26日(2011.1.26)
【出願人】(504411166)アラクサラネットワークス株式会社 (315)
【Fターム(参考)】
[ Back to top ]