JP5881064B2 - 通信装置、通信システム、通信方法、及び、プログラム - Google Patents

通信装置、通信システム、通信方法、及び、プログラム Download PDF

Info

Publication number
JP5881064B2
JP5881064B2 JP2012151442A JP2012151442A JP5881064B2 JP 5881064 B2 JP5881064 B2 JP 5881064B2 JP 2012151442 A JP2012151442 A JP 2012151442A JP 2012151442 A JP2012151442 A JP 2012151442A JP 5881064 B2 JP5881064 B2 JP 5881064B2
Authority
JP
Japan
Prior art keywords
identifier
frame
communication
ether frame
input
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2012151442A
Other languages
English (en)
Other versions
JP2014014051A (ja
JP2014014051A5 (ja
Inventor
通貴 奥野
通貴 奥野
横山 卓
卓 横山
幸三 池上
幸三 池上
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2012151442A priority Critical patent/JP5881064B2/ja
Priority to PCT/JP2013/054113 priority patent/WO2014006926A1/ja
Priority to US14/412,500 priority patent/US9407459B2/en
Publication of JP2014014051A publication Critical patent/JP2014014051A/ja
Publication of JP2014014051A5 publication Critical patent/JP2014014051A5/ja
Application granted granted Critical
Publication of JP5881064B2 publication Critical patent/JP5881064B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4675Dynamic sharing of VLAN information amongst network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • H04L12/4645Details on frame tagging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Landscapes

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

Description

本発明は、通信装置に関し、通信サービスを提供する通信装置に関する。
クラウドコンピューティング(以下、クラウドと省略)では、拠点からデータセンタのサーバを用いるため、必然的に拠点とデータセンタとの間のネットワークを利用する。コンシューマが利用するクラウドにおいて、用いられるネットワークはインターネットである場合が多い。一方で、企業が利用するクラウドにおいて用いられるネットワークは、セキュリティの観点及びネットワーク性能の観点から、VPN(Virtual Private Network)などの仮想ネットワークであることが多い。
複数の仮想ネットワークが物理的な一つのネットワークに共存するため、各仮想ネットワークには独立性を確保される仕組みが必要である。
通信事業者は、仮想ネットワークの独立性を実現するため、IEEE802.1adによって標準化された拡張タグVLAN(Virtual Local Area Network)(例えば、非特許文献1参照)、又は、プロバイダブリッジ(802.1Q−IN−802.1Q、Q−in―Q、二重タグ)と呼ばれる技術を用いた広域イーサネット(登録商標、以下同じ)を利用する。
拡張タグVLANは、VLANタグ付きのイーサフレームに更にVLANタグを付加して通信する技術である。
イーサフレームのうち、外部に付加されたVLANタグは、STAG(Service TAG)と呼ばれる。拡張タグVLANにおけるネットワーク装置は、STAGによって識別されるS−VLANによって、企業間(テナント間)の仮想ネットワークを識別し、イーサフレームを各仮想ネットワークに振り分ける。
また、イーサフレームのうち、STAGより内部(イーサフレームにおけるペイロード側)に付加されたVLANタグは、CTAG(Customer TAG)と呼ばれる。拡張タグVLANにおけるネットワーク装置は、CTAGによって識別されるC−VLANによって、企業内(テナント内)の複数のネットワークを識別し、イーサフレームを企業内の各ネットワークに振り分ける。
前述のように、STAG及びCTAGを用いることによって、拡張タグVLANは、テナント間、及び、テナント内のネットワークの独立性を確保することができる。
さらに、通信事業者は、特定の機能に特化した"アプライアンス(ネットワークアプライアンス)"と呼ばれるシステムを利用して、クラウド向け通信サービスを各テナントに提供する。アプライアンスの例としては、データセンタ間又は拠点間の通信を高速化するWAN最適化装置(WOC:Wide Area Network Optimization Controller、WAN高速化装置)、異常通信を検出したりブロックしたりする侵入検知/侵入防御システム(IDS:Intrusion Detection System/Intrusion Protection System、FW:Fire Wall)、及び、セッション負荷分散装置などを用いたシステムが挙げられる。これらのシステムの機能は、クラウドの通信機能及び通信性能を向上させることができる。このため、以下において、便宜上これらの機能を持つクラウド向け通信サービスを総称して通信サービスと呼ぶ。
通信サービスを提供するためのアプライアンスには、ネットワークの仮想化に対応していないアプライアンスも少なくない。このため、こうしたアプライアンスは、一般的に、各企業の拠点、又は、各企業において論理的にプライベートにされたデータセンタ内に配置されることが多い。
しかし、通信事業者が、通信サービスをクラウドの機能のひとつとして複数の企業(テナント)に提供する場合、アプライアンスは、通信事業者が有する通信局舎内、又は、通信事業者が有するデータセンタにおいてゲートウェイの機能を有する共有装置等に配置されることが想定される。そして、通信事業者は、アプライアンスを、企業(テナント)に対応する仮想ネットワーク毎に設定する必要がある。
その際、一般にアプライアンスは高価であるため、通信事業者が仮想ネットワークと同数のアプライアンスを設置した場合、設備コスト及び運用コストが過剰に増大する。このため、仮想ネットワークと同数のアプライアンスを設置する方法は、非現実的な方法である。
そこで、従来から、課題として"複数の仮想ネットワークが収容されるネットワークシステムにおいて、それら複数の仮想ネットワーク間でアプライアンスを共有すること。"が提案されてきた(例えば、特許文献1参照)。
特許文献1には、その解決手段として、"ネットワークシステムは、アプライアンス、スイッチ、及び管理計算機を備える。管理計算機は変換ポリシーテーブルを備え、各変換エントリは、変換前パケット識別情報と変換後パケット識別情報との対応関係を示す。変換前パケット識別情報は、パケットが属する仮想ネットワークの識別子を含む。変換後パケット識別情報は、異なる仮想ネットワーク間で重複しないように設定される。アプライアンスは処理ルールテーブルを備える。スイッチは、転送テーブルを備える。管理計算機は、変換前パケット識別情報にマッチする受信パケットのパケット識別情報が変換後パケット識別情報に書き換わるように、スイッチの転送テーブルを設定する。また、管理計算機は、アプライアンスの処理ルールテーブルのマッチ条件を、変換後パケット識別情報に設定する。"が記載されている。
一方で、サーバ仮想化技術をネットワークへも適用する方法、すなわち、仮想化ソフト上で仮想マシンのひとつとして通信サービスを提供する方法が提案されている(例えば、特許文献2参照)。
特許文献2には、通信サービスのひとつであるWAN最適化サービスを、仮想化ソフトを利用して実施する手段として、"In one example embodiment, an apparatus may include a first virtual machine provided on a first local device of a plurality of local devices, wherein a portion of resources of the first local device are allocated to the first virtual machine. A virtualization software switch may be provided on the first local device, configured to forward or redirect at least some traffic from the first local device to a WAN (Wide Area Network) optimization virtual appliance, the WAN optimization virtual appliance including at least the first virtual machine, a second virtual machine on a second local device of the plurality of local devices, and a distributed WAN optimization application running at least on the first and second virtual machines."が記載されている。
特開2011−211502号公報 米国特許出願公開第2010/0146074号明細書
"The Evolution of Carrier Ethernet Services-Requirements and Deployment Case Studies",IEEE Communications Magazine, March 2008号,PP69-76
特許文献1に記載された技術を用い、複数の仮想ネットワークにおいてアプライアンスを共有した場合、アプライアンスを利用する一つの企業(テナント)の通信が原因のアプライアンスにおける障害が、同じアプライアンスを利用する他の企業の通信にも悪影響を与える可能性がある。そのため、アプライアンスにおいて処理される通信サービスも、仮想ネットワークのように企業毎に独立性が確保される必要がある。
一方で、特許文献2に記載された技術を用い、通信事業者が複数の利用企業(マルチテナント)に対し、クラウドサービスのひとつとしてWAN最適化などの通信サービスを提供する場合、通信事業者は、広域イーサネットなどの仮想ネットワークの通信と、通信サービスとの、双方に関してテナント間の独立性を保証しつつ、共有のアプライアンスによって各通信サービスを提供することが望ましい。すなわち、通信事業者が、拡張タグVLAN通信と仮想マシン上で実行する通信サービスとを連携して利用できるようにすることが望ましい。
しかしながら、従来技術による仮想マシンによって通信サービスを動作させようとしても、アプライアンスに備わるネットワーク装置は、従来技術の拡張タグVLAN通信のSTAGだけでは、テナントしか識別できず、通信サービスの種類、通信の方向(該当する通信サービスに対してどの論理ポートからパケットを受信するか又は送信するかなど)を識別できない。そこで、これらの技術を適切に融合、及び連携させる技術が必要となる。
本発明は、複数の仮想ネットワークを収容するネットワークにおいて、仮想ネットワーク毎にWAN最適化、及び、ファイアウォールなど、少なくとも一つの通信サービスを、共有の装置における仮想マシンを利用して提供する手段を実現することを目的とする。
本発明の解決手段は、複数の仮想ネットワーク共有の装置が、イーサフレームに含まれる各仮想ネットワークを識別する識別子を、通信サービスを提供する仮想マシンを示す識別子に変換することである。
本発明の代表的な一例を示せば以下の通りである。すなわち、物理ネットワークを介してイーサフレームを互いに送受信するサーバとクライアントとの通信経路上に設置される通信装置であって、前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、前記通信装置は、前記イーサフレームに対して、少なくとも一つの通信サービスを実行する情報処理部と、前記サーバ及びクライアント間で送受信される前記イーサフレームを取込み、前記取込まれたイーサフレームの宛先である前記サーバ又は前記クライアントに向けて前記取込まれたイーサフレームを送信する転送部と、前記イーサフレームを変換するタグ変換部と、を有し、前記情報処理部は、前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記イーサフレームに対して各々の前記通信サービスを実行する仮想マシンを少なくとも一つ、有し、各々の前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、前記タグ変換部は、前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、いずれかの前記通信サービスを実行するいずれかの前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む変換情報を保持し、前記転送部によって取込まれた第1のイーサフレームが入力された場合、前記第1のイーサフレームの第1の識別子と前記変換情報とに基づいて、前記第2の識別子を含む第2のイーサフレームに、前記第1のイーサフレームを変換し、前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力し、前記情報処理部は、いずれかの前記仮想マシンがいずれかの前記通信サービスが実行されたイーサフレームを出力する場合、前記通信サービスを実行した前記仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに、前記通信サービスが実行されたイーサフレームを変換し、前記タグ変換部は、前記第3のイーサフレームが入力され、かつ、前記変換情報が、前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、前記通信サービスを実行する仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む場合、前記第3の識別子と前記変換情報とに基づいて、前記第1の識別子を含む第1のイーサフレームに、前記第3のイーサフレームを変換し、前記転送部は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記第1のイーサフレームを送信する。
本発明の代表的な一形態によると、コストを低減しつつ、仮想ネットワーク毎に通信サービスを提供できる。
本実施例1の通信サービスを提供するためのシステム構成を示すブロック図である。 本実施例1の通信ノード装置の物理的な構成と、物理的な構成によって実装される論理的な構成とを示す説明図である。 本実施例1の広域イーサネットのイーサフレームの変化の流れを示す説明図である。 本実施例1のイーサフレームのフォーマットを示す説明図である。 本実施例1のイーサフレームの例を示す説明図である。 本実施例1のサービステーブルを示す説明図である。 本実施例1の資源管理テーブルを示す説明図である。 本実施例1の変換テーブルを示す説明図である。 本実施例1の通信サービスを追加又は削除する処理を示すフローチャートである。 本実施例1の通信ノード装置におけるタグ変換処理を示すフローチャートである。 本実施例1のタグ変換処理の具体例を示す説明図である。 本実施例1のタグ変換されるイーサフレームの具体例を示す説明図である。 本実施例1のイーサフレームの複製を伴うタグ変換処理の具体例を示す説明図である。 本実施例1のタグ変換処理時に複製されるイーサフレームの具体例を示す説明図である。 本実施例1の通信サービスを連続して実行する場合のタグ変換処理を示す説明図である。 本実施例1の通信サービスを提供するためのシステム構成との比較例を示すブロック図である。 本実施例2のタグ変換処理を実行するシステムを示すブロック図である。 本実施例2のタグ変換装置の物理的な構成と、物理的な構成によって実装される論理的な構成とを示すブロック図である。 本実施例2のサービス提供装置の物理的な構成と、物理的な構成によって実装される論理的な構成とを示すブロック図である。 本実施例2の変換テーブルの例を示す説明図である。 本実施例2のタグ変換処理の具体例を示す説明図である。 本実施例2のMACinMACのイーサフレームを示す説明図である。 本実施例2のVXLANのイーサフレームを示す説明図である。
以下、本発明の実施形態の例を添付図面に基づき説明する。各図における同一符号は同一の構成又は相当する構成を示す。説明の都合上、符号に添え字を追加して識別することがある。
実施例1では、顧客(例えば、企業。以下、テナントと記載)毎にWAN最適化、及び、ファイアウォールなどの複数の通信サービス(クラウド向け通信サービス)を、仮想ネットワークにおいて組合せて提供するための通信ノード装置に関して説明する。
仮想ネットワークを利用した通信サービスの一例として、広域イーサネットがある。広域イーサネットは、テナントのイーサネットフレーム(以下、イーサフレーム)を通信事業者のネットワーク上で透過的に転送して遠隔地の拠点を接続するサービスである。広域イーサネットは、VLAN技術を使ってレイヤ2によってVPNを提供する。
広域イーサネットは、例えば、国内外各地に事業所を持つ複数の企業(テナントに相当)が物理的に同じネットワークを共有している状態において、各企業における事業所が、他の企業の事業所と通信することなく、自企業における一つの論理的なLAN内で通信するように、自企業の他の事業所と通信できるサービスである。
広域イーサネットの実現形態には、IEEE802.1adによって標準化された拡張タグVLANと、IEEE802.1ahによって標準化されたEther over Etherがある。前者の拡張タグVLANは、テナントに含まれる複数のネットワークを識別するためのVLANタグの、イーサフレームの先頭方向の隣に、通信事業者がテナントを識別するためのVLANタグを付加する方法である。拡張タグVLANは、QinQ、又は、プロバイダブリッジとも呼ばれる。
後者のEther over Etherは、テナント(顧客)のイーサフレームを通信事業者のイーサフレームによってカプセル化する方法である。Ether over Etherは、MACinMAC、又は、プロバイダバックボーンブリッジとも呼ばれる。
図1は、本実施例1の通信サービスを提供するためのシステム構成を示すブロック図である。
図1に示すシステム構成は、通信サービスを提供するネットワークシステムの構成を示す。実施例1のネットワークシステムは、A社拠点2−1、B社拠点2−2、通信局舎3、通信事業者網(WAN)4、及び、データセンタ1を有する。
図1におけるシステム構成におけるテナントは、A社、及びB社に対応する二つのテナントである。各テナントには、各仮想ネットワークによって相互に通信する複数のサーバ13及びクライアント20が含まれる。本実施例においてテナントとは、少なくとも一つのクライアント及び少なくとも一つのサーバを含むグループであり、かつ、仮想ネットワークを割り当てられたグループを示す。
A社は、A社拠点2−1を有し、B社は、B社拠点2−2を有する。A社拠点2−1は、A社のLANスイッチ21−1及び複数のクライアント20(20−1〜20−3)を有し、B社拠点2−2は、B社のLANスイッチ21−2及び複数のクライアント20(20−4、20−5)を有する。
データセンタ1は、通信ノード装置10−1、エッジスイッチ11−1、複数のLANスイッチ21(21−1、21−2)、及び、複数のサーバ13(13−1〜13−5)を有する。A社は、LANスイッチ12−1及びサーバ13−1〜3を有し、B社は、LANスイッチ12−2及びサーバ13−4、5を有する。
A社及びB社の各テナントには、異なる仮想ネットワークが割り当てられる。A社は、自らに設定された仮想ネットワークによって、A社間の通信を実現する。また、一つのテナント内においても、VLAN等の仮想ネットワークが割り当てられる。
通信局舎3は、通信ノード装置10−2、及び、エッジスイッチ11−2を有する。通信局舎3、WAN4、データセンタ1が有する通信ノード装置10−1、及び、データセンタ1が有するエッジスイッチ11−1は、通信事業者によって提供されるシステムである。
通信ノード装置10は、本実施例1の通信サービスを、各テナントに提供するための装置である。通信ノード装置10(10−1、10−2)は、受信するイーサフレームに従って、テナントごと(すなわち、仮想ネットワークごと)に通信サービスを提供する。
なお、通信ノード装置10は、エッジスイッチ11の機能を有してもよい。この場合、図1に示すエッジスイッチ11は設置される必要がない。また、図1に示すデータセンタ1は、通信ノード装置10−1を1台のみしか持たないが、データセンタ1は、複数の通信ノード装置10を有してもよい。データセンタ1が複数の通信ノード装置10を有する場合、図1に示す通信ノード装置10−1を中心に複数の通信ノード装置10がスター型に接続されてもよいし、図1に示す通信ノード装置10−1と複数の通信ノード装置10とが数珠つなぎに接続されてもよい。
さらに、データセンタ1における通信ノード装置10−1と同じく、通信局舎3も、複数の通信ノード装置10を有してもよい。
図2は、本実施例1の通信ノード装置10の物理的な構成と、物理的な構成によって実装される論理的な構成とを示す説明図である。
通信ノード装置10は、少なくとも一つの転送カード400、少なくとも一つの情報処理カード100、制御カード200、及び、内部スイッチ300を備える。ただし、図2の例では、転送カード400は2枚としている。なお、図2に示すLAN5は、WAN4を介さずに、エッジスイッチ11に直接接続するためのネットワークを示す。
転送カード400は、イーサフレームを転送するための処理部である。尚、本実施例ではVLANを利用するレイヤ2に関する説明を主としているため、イーサフレームという用語を用いて説明を進めるが、パケットという用語に読み替えても良い。
情報処理カード100は、WAN最適化などの通信サービスを行う処理部である。制御カード200は、通信ノード装置10の各種設定及び各種制御を行う処理部である。内部スイッチ300は、通信ノード装置10に備わるカードを接続するための処理部である。
なお、図2に示す情報処理カード100、転送カード400、及び制御カード200は、通信ノード装置10の構成要素であるが、これらの構成要素の一部、又は、全てが一体となった装置を構成することも可能である。その場合、以降の説明において、制御カード200は制御部、情報処理カード100は情報処理部、転送カード400は転送部を意味する。
転送カード400は、バックプレーンインタフェース416、NP・チップセット410、揮発性メモリ412、及び、不揮発性メモリ413を備える。また、図2に示す転送カード400−1は、ネットワークインタフェース415によって、WAN4と通信するための処理部であり、転送カード400−2は、ネットワークインタフェース411によって、LANスイッチ12又はLANスイッチ21と通信するための処理部である。
バックプレーンインタフェース416は、内部スイッチ300と接続するためのインタフェースである。
NP・チップセット410は、イーサフレーム処理を行うための演算装置である。NP・チップセット410は、NP(Network Processor)及びチップセットを備える。NP・チップセット410は、タグ変換部417を有する。
NP・チップセット410は、WAN4又はLAN5から受信したイーサフレームの宛先を抽出したのち、抽出された宛先に従って、イーサフレームをLAN5又はWAN4へ送信する。本実施例のNP・チップセット410は、イーサフレームをLAN5又はWAN4に送信する前に、イーサフレームを横取り(インタセプト)し、横取りされたイーサフレームをタグ変換部417に処理させる。
タグ変換部417は、変換テーブル703に従って、拡張タグVLANにおけるイーサフレームのタグを変換し、タグを変換されたイーサフレームを情報処理カード100へ転送する。
揮発性メモリ412は、イーサフレームを一時的に保持したり、後述する変換テーブル、及び、フォワーディングテーブル等の各種のテーブル情報を保持したりする記憶装置である。DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)等が揮発性メモリ412の例として挙げられるが、多くの場合は大容量性を重視してDRAMが利用される。揮発性メモリ412には、不揮発性メモリ413から変換テーブル703が読み出される。
不揮発性メモリ413は、プログラム、データ、及び、設定情報等を保持する記憶装置である。HDD(Hard Disc Drive)やSSD(Solid State Drive)、フラッシュメモリ等が不揮発性メモリ413の例として挙げられるが、多くの場合は安価で故障しにくく発熱量が少ないフラッシュメモリが利用される。不揮発性メモリ413に格納されるプログラム及びデータ等は、必要に応じて、NP・チップセット410によって、揮発性メモリ412に読み出される。
情報処理カード100は、バックプレーンインタフェース116、プロセッサ110、チップセット111、揮発性メモリ112、及び、不揮発性メモリ113を備える。バックプレーンインタフェース116は、チップセット111が内部スイッチ300と接続するためのインタフェースである。
プロセッサ110は、例えば、CPU等であり、通信サービスのプログラムを実行する演算装置である。チップセット111は、演算装置を備え、タグ変換部117を有する。タグ変換部117は、タグ変換部417と同じ機能を有し、イーサフレームのタグ変換処理を行う。
揮発性メモリ112は、イーサフレームを一時的に保持したり、変換テーブル703等の各種のテーブル情報を保持したり、プロセッサ110又はチップセット111によってプログラムを展開されたりする記憶領域である。プロセッサ110は、揮発性メモリ112において、複数の仮想マシン、及び、仮想スイッチ190を実行する。
不揮発性メモリ113は、プログラム、データ、及び、設定情報等を保持する記憶領域である。不揮発性メモリ113に格納されたデータ等を揮発性メモリ112に読み出すことによって、プロセッサ110及びチップセット111は、プログラムを実行する。不揮発性メモリ113は、仮想環境を実現するためのプログラムである仮想化ソフトを保持する。
情報処理カード100のプロセッサ110は、マルチテナント対応の通信サービスを提供するため、不揮発性メモリ113が保持する仮想化ソフトを実行する。そして、その結果、プロセッサ110は、複数の仮想マシンとそれらを接続する仮想スイッチ190を含む仮想環境を実行することができる。
図2に示す仮想環境は、4つの仮想マシン(仮想マシン120、仮想マシン130、仮想マシン140、仮想マシン150)と、一つの仮想スイッチ190を含む。仮想マシンは、物理的な計算機と同様に処理を実行する。プロセッサ110は、通信サービス毎の仮想マシンを、仮想ネットワーク毎に実行する。
仮想マシン120は、ゲストOS(Operating System)122を有し、ゲストOS122の上で、A社用の通信サービスであるA社ファイアウォールサービスプログラム121を実行する。また、仮想マシン120は、仮想NIC(VNIC)123及びVNIC124を有する。VNIC123は、WAN4側の通信ポートを有するインタフェースである、VNIC124は、LAN5側の通信ポートを有するインタフェースである。
仮想マシン130は、ゲストOS132を有し、ゲストOS132の上で、A社用の通信サービスであるA社WAN最適化サービスプログラム131を実行する。また、仮想マシン130は、VNIC133及びVNIC134を有する。VNIC133は、WAN4側の通信ポートを有するインタフェースである、VNIC134は、LAN5側の通信ポートを有するインタフェースである。
仮想マシン140は、ゲストOS142を有し、ゲストOS142の上で、B社用の通信サービスであるB社WAN最適化サービスプログラム141を実行する。また、仮想マシン140は、VNIC143及びVNIC144を有する。VNIC143は、WAN4側の通信ポートを有するインタフェースである、VNIC144は、LAN5側の通信ポートを有するインタフェースである。
仮想マシン150は、ゲストOS152を有し、ゲストOS152の上で、B社用の通信サービスであるB社侵入検知システム(IDS:Intrusion Detection System)サービスプログラム151を実行する。図2に示すB社IDSサービスプログラム151は、WAN4側の通信のみの侵入検知を行う。このため、仮想マシン150は、WAN4側の通信ポートであるVNIC153のみを有する。
本実施例において、仮想マシンが、データを転送する通信サービスを提供する仮想マシンである場合、WAN4側及びLAN5側に相当する二つの通信ポートが実装される。このため、このような仮想マシンには、一つの仮想マシンに二つのVNICが割り当てられる。
データを転送する通信サービスには、例えば、WAN最適化、ファイアウォール、IPS(Intrusion Protection System)、及び、セッション負荷分散などの通信サービス(クラウド向け通信サービス)が含まれる。
また、仮想マシンが、データ受信のみを行い、かつ、データを転送しない通信サービスを提供する仮想マシンである場合、仮想マシンには、一つのVNICをデータ転送用に割り当てられる。データを転送しない通信サービスには、例えば、WAN4側からLAN5側へ送信されるイーサフレームだけを処理するIDS(Intrusion Detecsion System)サービスがある。
なお、図示はしないが、通信事業者の管理者等は、データ転送とは別に仮想マシンと制御系の通信を行うために専用のVNICを、各仮想マシンに割り当てても良い。
仮想スイッチ190は、VNIC(123、124、133、134、143、144、153)、又は、転送カード400のNP・チップセット410に備わる物理NICなどのインタフェースからイーサフレームを受信した場合、揮発性メモリ112に格納されるフォワーディングテーブルを参照する。そして、仮想スイッチ190は、フォワーディングテーブルに従って、イーサフレームを転送したり、VLANタグの付加又は削除をしたりする。
制御カード200は、バックプレーンインタフェース216、プロセッサ210、チップセット211、揮発性メモリ212、及び、不揮発性メモリ213を有する。バックプレーンインタフェース216は、内部スイッチ300と接続するためのインタフェースである。
チップセット211は、演算装置を含み、イーサフレームへの転送処理等を行う。プロセッサ210は、例えば、CPU等の演算装置であり、制御プログラム702を実行する。
揮発性メモリ212は、プログラム、データ及びテーブル等を保持するための記憶領域である。また、揮発性メモリ212は、プロセッサ210又はチップセット211によって、不揮発性メモリ213から読み出されたプログラム及びデータ等を展開される記憶領域である。揮発性メモリ212は、制御プログラム702、サービステーブル700、及び、資源管理テーブル701を保持する。
不揮発性メモリ213は、データ、テーブル、プログラム、及び、設定情報等を保持する記憶領域である。
なお、前述の通信ノード装置10が有する各テーブル(サービステーブル700、資源管理テーブル701、変換テーブル703)は、テーブルのフォーマットによって情報を保持する。しかし、本実施例における通信ノード装置10は、各テーブルの情報を保持できれば、いかなる方法を用いてもよく、例えば、CSV形式等の方法によって情報を保持してもよい。
また、タグ変換部117及びタグ変換部417は、各チップセットに含まれる処理部として実装されてもよいし、プログラムによって実装されてもよい。
図1に示すネットワークシステムにおける仮想ネットワーク、すなわち、拡張タグVLANによる広域イーサネットにおける、イーサフレームの流れについて図3を用いて示す。
図3は、本実施例1の広域イーサネットのイーサフレームの変化の流れを示す説明図である。
図3は、本実施例1の広域イーサネットによってイーサフレームに付加されるVLANタグの変化を模式的に示した図である。通信事業者区間7は、通信局舎3、WAN4、及び、データセンタ1が有するエッジスイッチ11−1間のネットワークを示す。ユーザ区間6−1は、クライアント20及びエッジスイッチ11−2間のネットワークを示し、ユーザ区間6−2は、サーバ13及びエッジスイッチ11−1間のネットワークを示す。
図4は、本実施例1のイーサフレームのフォーマットを示す説明図である。
本実施例1のネットワークシステムにおいて送受信されるイーサフレームは、図4に示すイーサフレーム80、イーサフレーム81、及び、イーサフレーム82である。
イーサフレーム80は、MAC DA(Destination Address)90、MAC SA(Source Address)91、タイプ92、Layer2ペイロード(L2ペイロード)93、及び、FCS(Frame Check Sequence)94を含む。
MAC DA90は、イーサフレームの宛先を示すMACアドレスを含む。MAC SA91は、イーサフレームの送信元を示すMACアドレスを含む。タイプ92は、L2ペイロードの種類、又は、L2ペイロードの長さを示す。
L2ペイロード93は、イーサフレームのデータ部である。FCS94には、フレームのエラーを検出するため値が格納される。拡張タグVLANによる広域イーサネットの場合、MAC SA91とタイプ92の間にSTAG96とCTAG95とが挿入される。
図1において、A社拠点2−1が有する各クライアント20は、データセンタ1のA社の各サーバ13(サーバ13−1〜3)とそれぞれ異なる仮想ネットワークを利用して通信する。具体例として、図1において、クライアント20−1とサーバ13−1とは、A社内における同一のVLANに所属する。クライアント20−1とサーバ13−1とが通信する例を以下に説明する。
まず、クライアント20−1は、サーバ13−1に向けてイーサフレーム80を送信する。A社のLANスイッチ21−1は、クライアント20−1及びサーバ13−1間のVLANを一意に示す識別子を含むVLANタグをイーサフレーム80に挿入することによって、図4に示すイーサフレーム81を生成する。このVLANタグはCTAGと呼ばれる。
ここで、イーサフレーム81のVLANタグは、図3に示すイーサフレーム81である。そして、A社のLANスイッチ21−1は、生成されたイーサフレーム81を通信局舎3へ送信する。
広域イーサネットにおいて、拠点側のスイッチ(前述においてA社のLANスイッチ21−1)において挿入されたVLANタグは、CTAGと呼ばれる。A社のLANスイッチ21−1は、図4に示すように、イーサフレーム80のMAC SA91とタイプ92との間にCTAG95を挿入する。
VLANタグ(CTAG)は、図4に示すように、16ビットのTPID(Tag Protocol IDentifier)30と16ビットのTCI(Tag Control Identifier)31とを含む。TCI31は、3ビットの優先度32、1ビットのCFI33、及び、12ビットのVID(VLAN IDentifier)34を含む。
TPID30には、自らが含まれるタグがVLANタグであることを示す識別子(例えば、0x8100)が含まれる。すなわち、CTAG95に含まれるTPID30は、CTAGであることを示す。
VID34は、自らが含まれるイーサフレーム81が送受信されるVLANのVLAN(仮想ネットワーク)番号を示す。一般的に、VID=0とVID=4095とは予約されているため、VID34は、4094個のVLANを示す識別子が含まれる。図3に示す例ではCTAG95のVID34を"Z"としている。
通信局舎3がA社拠点2−1からイーサフレーム81を受信した場合、エッジスイッチ11−2は、テナントであるA社とB社とを識別するVLANタグ(STAG96)を、イーサフレーム81に挿入する。これによって、図4に示すイーサフレーム82が生成される。図3に示すイーサフレーム82は、イーサフレーム82のVLANタグである。エッジスイッチ11−2は、生成されたイーサフレーム82を、通信ノード装置10−2を介してWAN4へ送信する。
広域イーサネットにおいて、通信局舎3において挿入されたVLANタグはSTAGと呼ばれる。エッジスイッチ11−2は、図4に示すように、イーサフレーム81のMAC SA91とCTAG95との間にSTAG96を挿入する。
STAG96は、前述のCTAG95と同様に、16ビットのTPID30と16ビットのTCI31とを含む。STAG96のTPID30は、STAGを示す値であり、IEEE802.1adの規定では、0x88a8である。STAG96のTPID30は、ベンダによって、0x9100、0x9200、又は、0x9300を含んでもよい。図3に示すSTAG96の例では、VID34を"A"としている。
なお、以下に記載される"STAGの値"は、STAG96のVID34の値を示す。
データセンタ1がWAN4を介してイーサフレーム82を受信し、通信事業者がイーサフレーム82の宛先のテナントに通信サービスを提供しない場合、通信ノード装置10−1は、受信したイーサフレーム82をエッジスイッチ11−1に転送する。
なお、データセンタ1がWAN4を介してイーサフレーム82を受信し、通信事業者がイーサフレーム82の宛先のテナントにクラウド通信サービスを提供する場合の通信ノード装置10の処理については後述する。
エッジスイッチ11−1は、イーサフレーム82を受信した場合、テナント(顧客)であるA社とB社とを識別するため、STAG96によってイーサフレーム82を送信するべきテナントを識別する。そして、エッジスイッチ11−1は、イーサフレーム82からSTAG96を削除することによって、図4に示すイーサフレーム81を生成する。そして、STAG96によって識別されたテナント(顧客)のLANスイッチ12に、生成されたイーサフレーム81を送信する。
LANスイッチ12−1は、エッジスイッチ11−1からイーサフレーム81を受信した場合、CTAG95によって仮想ネットワークを識別する。そして、LANスイッチ12−1は、CTAG95を削除することによって、図4に示すイーサフレーム80を生成する。そして、LANスイッチ12−1は、CTAG95によって識別された仮想ネットワークに対応するA社のサーバ13−1へ、生成されたイーサフレーム80を送信する。
このように、テナント(顧客)間又はテナント内の仮想ネットワークを識別する必要がある装置(LANスイッチ21、LANスイッチ12、及び、エッジスイッチ11−1、11−2)は、CTAG95及びSTAG96の付加及び削除を行うことによって各テナント間、又は、テナント内の仮想ネットワークを識別し、広域イーサネットの通信を実現することができる。
次に、データセンタ1がWAN4を介してイーサフレーム82を受信し、通信事業者がイーサフレーム82の宛先のテナントにクラウド通信サービスを提供する場合の通信ノード装置10−1の処理について記載する。
通信ノード装置10−1は、受信したイーサフレームに対して通信サービスを各テナントに提供する場合、イーサフレーム82にタグ変換処理を実行し、タグ変換されたイーサフレームに対して通信サービスを各テナントに提供する。
通信ノード装置10−1は、仮想マシンが有する通信ポート(VNIC123、VNIC133)にイーサフレームを適切に送信するため、各仮想マシンが実行する通信サービスと、仮想マシンの各通信ポートとの組合せを一意に示す識別子を、イーサフレームに付加する。
具体的には、図2及び図3に示す通信ノード装置10−1は、A社ファイアウォールサービスプログラム121とVNIC123との組合せに一つの識別子、A社ファイアウォールサービスプログラム121とVNIC124との組合せに一つの識別子、A社WAN最適化サービスプログラム131とVNIC133との組合せに一つの識別子、及び、A社WAN最適化サービスプログラム131とVNIC134との組合せに一つの識別子の、合計四つの識別子を有する。
本実施例において、通信ノード装置10におけるこれらの識別子を含むタグを、LTAG(Local TAG:図3に示すLTAG97)と呼ぶ。LTAG97は、異なる通信サービス、及び、異なる通信ポートとの間で重複しない識別子を含む。また、仮想ネットワーク毎に、イーサフレームに対して一連の通信サービスを提供するため、通信ノード装置10は、STAG96を、LTAG97に変換するための変換テーブル703を有する。
LTAG97を含むイーサフレームの形式を図4のイーサフレーム83として示す。イーサフレーム83は、イーサフレーム82のSTAG96をLTAG97へ変換(置換)した形式である。LTAG97は、通常のVLANタグと同じフォーマットを有し、TPID30とTCI31とのフィールドを含む。LTAG97がVLANタグと同じフォーマットであることによって、本実施例1のネットワークシステムは、通信ノード装置10、並びに、通信ノード装置10に備わる内部スイッチ300及び仮想スイッチ190に、特殊な技術を導入されることなく、通信ノード装置10、内部スイッチ300及び仮想スイッチ190によって、LTAG97を含むイーサフレームを転送できる。
なお、以下において記載される"LTAGの値"は、LTAG97のVID34の値を示す。
LTAG97のTPID30の値は、各システムによってあらかじめ定められる。LTAG97のTPID30の値は、LTAG97とSTAG96とを識別するため、STAG96のTPID30の値とは異なる値が少なくとも定められる。
また、LTAG97のTPID30の値は、IPv4(TPID=0x0800)、IPv6(TPID=0x86DD)、又は、ARP(TPID=0x0806)などの標準的なプロトコルによって利用されるTPIDとも異なる値が定められる。このため、従来規定されるTPID以外の値であれば、LTAG97のTPID30の値にはいかなる値が定められてもよい。例えば、LTAG97のTPID30の値は、TPID=0x8100でもよいし、STAG96として利用されていなければ0x9100又は0x9200などでもよいし、システムによって定められた特別な値でもよい。
本実施例における通信ノード装置10は、各仮想ネットワークにおいてイーサフレームが送受信される際、拡張タグVLAN通信のイーサフレーム82を横取りする。そして、通信ノード装置10は、横取りしたイーサフレーム82に、タグ変換処理を行い、タグ変換処理されたイーサフレームに対して、仮想マシンによって通信サービスを実行することによって、通信サービスを各テナントに提供する。
通信ノード装置10は、タグ変換処理において、前述の変換テーブル703を参照し、インタセプトされたイーサフレーム82のSTAG96をLTAG97に変換(又は、置換)した後、仮想スイッチ190へイーサフレームを送信する。
通信ノード装置10の仮想スイッチ190がイーサフレームを受信した場合、イーサフレームを受信した仮想スイッチ190は、イーサフレームのLTAG97に対応する仮想マシンの通信ポート(VNIC)へ、イーサフレームを送る。通信ポートへイーサフレームを送る際、仮想スイッチ190は、イーサフレームのLTAG97を削除する。
また、仮想マシン120がイーサフレームに対して通信サービスを実行した後、仮想マシン120の通信ポート(VNIC)は、イーサフレームを出力する。仮想スイッチ190は、仮想マシンから出力されたイーサフレームに、実行された通信サービスとその通信サービスが出力された通信ポートに対応するLTAG97を付加する。
転送カード400は、各仮想マシンによって通信サービスを実行されたイーサフレームを受信した場合、イーサフレームに付加されたLTAG97と、変換テーブルとに基づいて、イーサフレームのLTAG97をSTAG96に変換する。これによって、通信ノード装置10は、仮想マシン120によって処理されたイーサフレームをイーサフレーム82に変換し、イーサフレーム82の宛先へ送信する。
前述の流れによって、通信ノード装置10は、イーサフレームが処理されるべき通信サービスを実行する仮想マシンの通信ポートに、インタセプトされたイーサフレームを転送できる。そして、通信ノード装置10は、仮想ネットワークと通信サービスとを連携させることができる。
具体的なタグの変換処理の例を、図3を用いて説明する。例における変換テーブル703は、以下の通りである。
図3における変換テーブル703は、VNIC123に、VID34を"S"としたLTAG97が割り当てられ、VNIC124に、VID34を"T"としたLTAG97が割り当てられることを示す。また、変換テーブル703は、VNIC133に、VID34を"U"としたLTAG97が割り当てられ、VNIC134に、VID34を"V"としたLTAG97が割り当てられることを示す。また、変換テーブル703は、WAN側から入力されたイーサフレーム82が、VID34が"A"であるSTAG96を含む場合、STAG96をVID34が"S"であるLTAG97に変換することを示す。
このような変換テーブル703は、前述のような値を含むことによって、WAN側からLAN側へ送信されるイーサフレーム82がインタセプトされ、かつ、イーサフレーム82のSTAG96が"A"を示す場合、インタセプトされたイーサフレーム82に対して、A社ファイアウォールサービスプログラム121、及び、A社WAN最適化サービスプログラム131の順番に、通信サービスが実行されることを示す。
また、前述のような変換テーブル703である場合、図3に示す通信ノード装置10−1において、イーサフレーム82のSTAG96が、VID34が"S"であるLTAG97に変換された結果であるイーサフレーム83が生成される。イーサフレーム83は、LTAG97の値に従って仮想マシン120に送信され、仮想マシン120は、イーサフレーム83に対して、A社ファイアウォールサービスプログラム121を実行する。
その後、仮想スイッチ190は、イーサフレーム83に対してVID34が"T"であるLTAGを付加したイーサフレーム84を出力する。出力されたイーサフレーム84は、変換テーブル703に基づいて、LTAG97のVID34が"T"から"U"に変換される。これによってイーサフレーム85が生成される。
そして、イーサフレーム85は、VID34として"U"が割り当てられたVNIC133に送信される。イーサフレーム85が仮想マシン130のVNIC133に入力され、仮想マシン130がイーサフレーム85の内容にA社WAN最適化サービスプログラム131を実行した後、仮想マシン120−2は、イーサフレーム85に対してVID34が"V"であるLTAGを付加したイーサフレーム86を出力する。そして、イーサフレーム86は、LTAG97をSTAG96に変換されることによって、インタセプトされる前の拡張タグVLANのイーサフレーム82に変換される。
その後、通信ノード装置10−1は、イーサフレーム82を、本来の宛先であるエッジスイッチ11(ユーザ区間6−2)へ向けて送信する。前述の処理によって、通信ノード装置10−1は、イーサフレーム82の宛先であるテナントに通信サービスを提供する。
ユーザ区間6−2から通信事業者区間7へイーサフレーム82が送信される場合、通信ノード装置10−1において、前述の変換処理の例と逆方向の処理が行われる。また、通信事業者区間7からユーザ区間6−1へイーサフレーム82が送信される場合、通信ノード装置10−2において、前述の変換処理と同じ方向の処理が行われる。
また、ユーザ区間6−1から通信事業者区間7へイーサフレーム82が送信される場合、通信ノード装置10−2において、前述の変換処理と逆方向の処理が行われる。すなわち、通信ノード装置10−1と通信ノード装置10−2とは同じ機能を有する。
また、A社内の他のVLAN(仮想ネットワーク)における通信、及び、B社内のVLAN(仮想ネットワーク)における通信においても、前述の変換処理と同じ処理が行われる。
なお、前述の変換処理において、STAG96をLTAG97に変換(又は、置換)する例を説明したが、図5に示すように、STAG96の外側にLTAG97を付加してもよい。
図5は、本実施例1のイーサフレーム87の例を示す説明図である。
通信ノード装置10は、タグ変換処理において、イーサフレーム82にLTAG97を挿入することによって、イーサフレーム87を生成してもよい。この場合、変換テーブル703は、拡張VLANタグの先頭がSTAG96である場合、STAG96の隣にLTAG97を付加することを示す情報、又は、拡張VLANタグの先頭がLTAG97である場合、LTAG97を別のLTAG97に置換するか又は削除することを示す情報を含む。
図6は、本実施例1のサービステーブル700を示す説明図である。
制御カード200内のサービステーブル700は、仮想ネットワーク毎に適用する通信サービス、及び、通信サービスに利用する通信ノード装置10内の資源(例えば、仮想マシン等)を管理するためのテーブルである。サービステーブル700は、テナントとの契約に従い通信事業者の管理者によって値が設定されるフィールドと、制御プログラム702によって値が設定されるフィールドとを含む。
サービステーブル700は、管理者によって値が設定されるフィールドに、例えば、テナント710、帯域711、サービス712、サービス品質(遅延度)713、割当コア714、及び、割当メモリ715を含む。
テナント710には、各テナントを一意に識別する識別子が含まれる。テナント710には、各テナントの名称が含まれてもよい。帯域711は、各テナントが契約する通信帯域を示す。
サービス712は、各テナントが利用する通信サービスを示す。サービス品質713は、各テナントが要求するサービス品質を示す。図6に示すサービス品質713は、遅延度がどの程度許容されるか否かを示す値を含む。
割当コア714は、通信サービスを実行するためにプロセッサコア又はスレッドを割り当てる方法、及び、割り当てられるプロセッサコア又はスレッドの数を示す。割当メモリ715は、各テナントに割り当てられるメモリのサイズを示す。
さらに、サービステーブル700は、制御プログラム702によって値が設定されるフィールドに、例えば、STAG716、LTAG717、ポート718、装置番号719、情報処理カード番号720、仮想マシン番号721、及び、VNIC情報722を含む。
STAG716は、各テナントに割り当てられたSTAGの識別子(STAG96のVID34の値に相当)を含む。STAG716の値には、例えば、図1に示すエッジスイッチ11においてテナントを識別するために用いられるSTAG96の値が含まれる。
LTAG717は、通信サービス毎、かつ、通信ポート(VNIC)毎に割り当てられた識別子(LTAG97のVID34の値に相当)を含む。
ポート718は、LTAG717が示す値に割り当てられたVNICの通信ポートを示す。図6に示すポート718は、VNICがWAN4に接続されるか、又は、LAN5に接続されるかを示す値を含む。
装置番号719は、通信ノード装置10の識別子を含む。図6の例では、通信ノード装置10を1台だけとしているため、装置番号719の識別子は1しか記載していないが、N台の通信ノード装置10を利用する場合には、1〜Nの識別子が利用される。
情報処理カード番号720は、各テナントに通信サービスを提供する仮想マシンを有する情報処理カード100の識別子を含む。図6の例では、情報処理カード100を1枚だけとしているため、情報処理カード番号720の識別子は1しか記載していないが、N枚の情報処理カード100を利用する場合には、1〜Nの識別子が利用される。VM番号721は、各テナントに通信サービスを提供する仮想マシンの識別子を含む。
VNIC情報722は、VNICの識別番号、仮想MACアドレス、VLANモード、VID(VLAN番号)、及び、ゲストOS用の仮想IPアドレスなどを示す情報を含む。
VNIC情報722におけるVLANモードは、VLANタグを利用するか否かを示す値である。VNIC情報722におけるVLAN番号は、VLANタグ用ポートとしてVNICを利用する場合のVIDを示す。
本実施例の情報処理カード100は、VNICをVLANモードによって用いる。これによって、VNICとVLANタグの識別子とが一意に対応付けられるため、本実施例の制御プログラム702は、VNICのVLAN番号を、LTAGのVID34と一致させることによって、サービステーブル700のLTAGフィールド717のVID34の値とVNICを示す識別子とを一意に対応付けることができる。
また、これによって、内部スイッチ300及び仮想スイッチ190は、VLAN番号によってイーサフレームを識別し、また、イーサフレームの送信先を特定する処理部は、イーサフレームのLTAG97を参照することによって、LTAG97のVID34に対応するVNICに、イーサフレームを送信できる。同様に、内部スイッチ300及び仮想スイッチ190は、イーサフレームのLTAG97を参照することによって、VNIC情報722が示すVNICを経由して仮想マシンにイーサフレームを送信することができ、ゲストOS上で動く通信サービスで該当イーサフレームに対する処理を実行することができる。
なお、サービステーブル700は、各テナント内で同じ通信サービスを適用することを示す値を必ずしも保持する必要はない。例えば、サービステーブル700は、利用部署毎に、又は、利用者毎に、異なる数又は異なる種類の通信サービスを保持してもよい。この場合、サービステーブル700は、図6に示すSTAG716の他に、CTAG、送信元IPアドレス、宛先IPアドレス、送信元ポート、宛先ポート、及び、プロトコルなどをテナント内の通信の識別子の一部として保持してもよい。CTAGとは、CTAG95のVID34の値であり、テナント内で利用するC−VLANを特定する識別子である。
情報処理カード100のプロセッサ110は、一般的な方法として、通信サービスのプログラムによって、受信したイーサフレームがいずれのテナントのいずれの利用者によって送信されたイーサフレームかを判定し、判定の結果に従って、いずれの通信サービスをイーサフレームに適用するか否かを判定してもよい。このような方法を用いた場合、転送カード400は、イーサフレームを送信する必要がない通信サービスのプログラムに向けてイーサフレームを送信する可能性があり、通信サービスのプログラムにおける負荷も高くなっていた。
しかし、本実施例の転送カード400におけるタグ変換部417は、サービステーブル700に基づいて生成された変換テーブル703を用い、いずれの通信サービスをイーサフレームに適用するかを示す情報をイーサフレームに付加する。このため、転送カード400は、通信サービスを実行するプロセッサ110上の仮想マシンに対して必要最小限のイーサフレームだけを転送すればよい。そして、これによって、仮想マシンの負荷が低減される。
図7は、本実施例1の資源管理テーブル701を示す説明図である。
制御カード200内の資源管理テーブル701は、通信ノード装置10において利用される各種の資源の搭載量、及び、割り当てられていない資源量(割当残量)を管理するためのフィールドと、各VNICに割当て済みのLTAG97のVID34を管理するためのフィールドとを含むテーブルである。
資源管理テーブル701は、資源を管理するためのフィールドに、情報処理カード番号740、搭載コア数(搭載スレッド数)741、搭載メモリ量742、割当済み専有コア数743、割当済み共有コア数744、及び、割当済みメモリ量745を含む。
情報処理カード番号740は、情報処理カード100の識別子を含む。搭載コア数741は、各情報処理カード100のプロセッサ110が、仮想マシンに割り当てるために有するプロセッサコアの数又はスレッドの数を示す。
搭載メモリ量742は、各情報処理カード100の揮発性メモリ112が、仮想マシンに割り当てるために有する記憶領域のサイズを示す。
割当済み専有コア数743は、仮想マシンに専有状態で既に割り当てられたプロセッサコアの数又はスレッドの数を示す。割当済み共有コア数744は、複数の仮想マシンによって共有して使用される状態(共有状態)で既に割り当てられたプロセッサコアの数又はスレッドの数を示す。割当済みメモリ量745は、仮想マシンに割当て済みの記憶領域のサイズを示す。
このため、割当済み専有コア数743の値と割当済み共有コア数744の値との和を、搭載コア数741から減算した値が、プロセッサコア(又はスレッド)の残量である。また、割当済みメモリ量745の値を、搭載メモリ量742から減算した値が、メモリの残量である。
また、資源管理テーブル701は、VNICに割当て済みのLTAG97のVID34を管理するためのフィールドとして、通信ノード装置番号750、未使用LTAG751、及び、未使用LTAG数752を含む。通信ノード装置番号750は、通信ノード装置10を一意に示す識別子である。
未使用LTAG751は、通信ノード装置番号750が保持するLTAG97のVID34の候補のうち未割当てのVID34の値を保持する。未使用LTAG数752は、未割当てのLTAG97のVID34の候補の数(すなわち、LTAGの残り数)を示す。
図3に示すタグ変換処理を行う場合、制御プログラム702は、1個のSTAGに対して、2個以上のLTAGを割り当てることが必要である。このため、LTAGの総数をSTAGの総数と同じ数(例えば、約4000)にした場合、全てのSTAGのパターンに割り当てるべきLTAGの数は不足する。
一方で、1台の通信ノード装置10が有する物理的な資源量を考慮した場合、STAGの総数と同じ数(例えば、約4000)のLTAGを1台の通信ノード装置10が収容できれば十分な場合が多い。また、例えば、資源管理テーブル701がSTAGの総数の4倍などのLTAGを保持した場合、無駄なLTAG97のVID34の候補を保持することになる場合が多い。
そこで、資源管理テーブル701が通信ノード装置10毎に、STAG96の数と同じ数、例えば約4000の、LTAG97のVID34の候補を保持することによって、本実施例の制御プログラム702は、STAG全てにLTAGを割り当てることが可能である。
なお、一つの通信ノード装置10が有する複数の情報処理カード100を少なくとも一つのブロックに分割し、資源管理テーブル701がブロック毎にSTAG96の数と同じ数、例えば約4000の、LTAG97のVID34の候補を保持してもよい。
図8は、本実施例1の変換テーブル703を示す説明図である。
変換テーブル703は、サービステーブル700の内容に基づいて生成され、通信サービスの適用順番、相互に変換されるLTAG及びSTAGの値、イーサフレームを転送すべきVNICを示す値(すなわち、LTAGの値)、及び、通信サービスの種類を示すテーブルである。変換テーブル703は、制御プログラム702によって、揮発性メモリ412、及び、揮発性メモリ112に格納される。これによって、転送カード400上のタグ変換部417、及び、情報処理カード100上のタグ変換部117は、イーサフレームにタグ変換処理等を実行できる。
変換テーブル703は、入力されたイーサフレームを検索するためのフィールドとして、IN TAG40、及び、IN PORT41を含む。また、変換テーブル703は、OUT TAG50、OUT PORT51、及び、SERVICE52を含む。
IN TAG40は、拡張タグVLANのイーサフレームに付加されたタグのうち最も先頭方向に付加されたタグを示す値(TPID30及びVID34の値)を含む。
IN PORT41は、イーサフレームの入力元を示す。図8に示す変換テーブル703において、"WAN"はWAN4を示し、"LAN"はLAN5を示し、"CARD"は情報処理カード100を示す。
IN TAG40が示すイーサフレームがIN PORT41が示す入力元から入力された場合、タグ変換部417及びタグ変換部117は、OUT TAG50に示すタグにイーサフレームのタグを変換し、OUT PORT51が示す出力先にイーサフレームを出力する。これによって、タグ変換部417及びタグ変換部117は、イーサフレームに、SERVICE52が示す通信サービスを実行させる。
なお、SERVICE52が"NONE"を示す変換テーブル703のエントリは、通信サービスを適用せずにタグ変換部417が通信ノード装置10からイーサフレームを出力することを示す。
図8に示す変換テーブル703は、A社(テナントA)用のタグ変換ルール60、B社(テナントB)用のタグ変換ルール61を含む。また、エントリ762〜766を含む。
例えば、STAG96のVID34が"0x000A"であるイーサフレームがWAN4に接続された通信ポートから入力された場合、タグ変換部417は、変換テーブル703のエントリ762に従って、イーサフレームのSTAG96をVID34が"0x001A"であるLTAG97に変換する。
そして、タグ変換部417は、タグを変換されたイーサフレームを、本来の拡張タグVLAN通信の出力先ではなく、CARD#1が示す出力先に向けて転送する。ここで、イーサフレームを転送される情報処理カード100は、通信サービスとしてファイアウォール(FW)を提供する。
なお、変形例として、変換テーブル703は、テナント毎に通信サービスの値を保持しなくてもよく、利用部署毎、又は、利用者毎に、異なる数又は異なる種類の通信サービスの値を保持してもよい。その場合、変換テーブル703は、IN TAG40のフィールドに、STAG及びLTAGの他に、CTAG、送信元IPアドレス、宛先IPアドレス、送信元ポート、宛先ポート、又は、プロトコルなどを示す値を含んでもよい。そして、変換テーブル703は、IN TAG40がCTAG等であるエントリのOUT TAG50にLTAGを示す値を保持してもよい。
このような変換テーブル703の変形例を用いることによって、通信事業者は、例えば、A社(テナントA)における特定のVLAN内の通信のみにファイアウォールのサービスとWAN最適化サービスとを提供し、A社における残りのVLANにおける通信にはファイアウォールの通信サービスのみを提供することができる。
図9は、本実施例1の通信サービスを追加又は削除する処理を示すフローチャートである。
制御プログラム702は、通信事業者の管理者等から通信サービスの追加要求及び削除要求を入力された場合、サービステーブル700及び変換テーブル703を更新する。図9は、通信ノード装置10が起動してから、通信ノード装置10に通信サービスが追加され、さらに、通信ノード装置10から通信サービスが削除される処理を示す。
通信事業者の管理者等によって、通信ノード装置10が起動されると(S501)、制御カード200の制御プログラム702は、サービス追加要求が入力されたか否かを判定する(S502)。サービス追加要求が入力されていないと判定された場合、制御プログラム702は、S508を実行する。
なお、管理者からのサービス追加要求には、追加する通信サービスを利用するテナントの識別子(テナント710の値)と、追加する通信サービスの識別子(サービス712の値)とが含まれる。さらに、サービス追加要求には、追加する通信サービスに対応する、帯域711、サービス品質713、割当コア714、及び、割当メモリ715の値が含まれる。
管理者からサービス追加要求が入力されたと判定された場合、制御プログラム702は、制御カード200の資源管理テーブル701を参照し、追加要求がされた通信サービスを実行する仮想マシンに割り当てる資源(帯域、コア数、メモリ量、及び、LTAG717の値)を確保できるか否か判定する(S503)。
S503において、制御プログラム702は、追加要求された通信サービスの数に従って、LTAG用の値を資源管理テーブル701から取得できた場合、LTAG用の値を確保できたと判定する。なお、制御プログラム702は、追加要求された通信サービスを実行するために、取得できたLTAG用の値を仮想マシンへ割り当てるVNICのVLAN番号とする。
資源が確保できないとS503において判定された場合、制御プログラム702は、通信サービスを実行する仮想マシンを設定できないため、S508を実行する。なお、資源が確保できない場合、制御プログラム702は、管理者に通信サービスを追加できない旨を通知する。
資源が確保できるとS503において判定された場合、制御プログラム702は、サービス追加要求に基づいて、追加要求された通信サービスに確保した資源を用いて、通信サービスを実行するための環境を情報処理カード100に設定する(S504)。資源の設定とは、例えば、帯域の設定(サービステーブル700の帯域711に基づく)、仮想マシンの起動、及び、仮想マシンへの追加要求された通信サービスの設定等である。
S504の後、制御プログラム702は、通信サービスを実行する仮想マシンに割り当てられた資源(コア数、及び、メモリ量)の分を、仮想マシンが起動された情報処理カード100を示す資源管理テーブル701のエントリの、割当済み専有コア数743、割当済み共有コア数744、及び、割当済みメモリ量745に加算する。
そして、制御プログラム702は、S503において資源管理テーブル701から取得されたLTAGの値を、資源管理テーブル701の未使用LTAG751(S501において起動された通信ノード装置10を示すエントリの未使用LTAG751)から削除する。
さらに、制御プログラム702は、サービス追加要求に含まれる値を、サービステーブル700の新たなエントリに格納する。
また、制御プログラム702は、サービス追加要求に含まれるテナント710の値に基づいて、STAGの値を取得する。なお、制御プログラム702は、テナント710の値に基づいて、エッジスイッチ11からSTAGの値を取得してもよい。
そして、制御プログラム702は、取得されたSTAGの値、取得されたLTAGの値、及び、S504において起動された仮想マシンに関する値を、サービステーブル700の新たなエントリのSTAG716、LTAG717、ポート718、装置番号719、情報処理カード番号720、仮想マシン番号721、及び、VNIC情報722に格納する(S505)。これによって、サービス追加要求によって追加された通信サービスに関するエントリが、サービステーブル700に追加される。
S505の後、制御プログラム702は、通信サービスを実行する所定の順番(FWの次はWOCを実行など)と、サービステーブル700が示す各テナントに提供される通信サービスと、不揮発性メモリ213に保持されていた変換テーブル703とを参照し、追加要求された通信サービスを示すエントリを挿入するように、変換テーブル703を更新する。
そして、更新された変換テーブル703を、転送カード400の揮発性メモリ412と、情報処理カード100の揮発性メモリ112とへ格納する(S506)。なお、S506において、制御プログラム702は、制御カード200の揮発性メモリ212又は不揮発性メモリ213に、更新された変換テーブル703を格納する。
S506の後、制御プログラム702は、追加要求された通信サービスを実行する仮想マシンにおいて通信サービスの処理を開始させる(S507)。
S502、S503、又は、S507の後、制御プログラム702は、通信ノード装置10の管理者から通信サービスのサービス削除要求を入力されたか否かを判定する(S508)。サービス削除要求を入力されていないと判定された場合、制御プログラム702は、S502に戻る。
サービス削除要求は、通信サービスを削除するテナントを示す識別子(テナント710の値)と、削除する通信サービスを示す識別子(サービス712の値)とを少なくとも含む。
サービス削除要求を入力されたと判定された場合、制御プログラム702は、削除要求された通信サービスを情報処理カード100において実行するための、情報処理カード100におけるサービスプログラム(仮想マシンにおけるサービスプログラム)を停止する(S509)。
S509の後、制御プログラム702は、サービス削除要求が示すテナントにおいて送受信されるイーサフレームに、サービス削除要求が示す通信サービスを実行しないように、転送カード400、情報処理カード100、及び、制御カード200が有する変換テーブル703を更新する(S510)。例えば、制御プログラム702は、サービス削除要求が示すテナントに対応するエントリのうち、削除すべき通信サービスを示す値をSERVICE52に含むエントリを削除する。
S510の後、制御プログラム702は、削除すべき通信サービスに割り当てられていた資源(帯域、コア、メモリ、及びLTAG等)を、削除すべき通信サービスを実行していた仮想マシンから開放させる(S511)。
そして、制御プログラム702は、サービスプログラムが停止された情報処理カード100を示す資源管理テーブル701のエントリの、割当済み専有コア数743、割当済み共有コア数744、及び、割当済みメモリ量745から、開放された資源量を示す値を減算する。また、制御プログラム702は、サービス削除要求に従って、サービステーブル700からエントリを削除する(S512)。
図9に示す処理によって、通信ノード装置10に通信サービスが追加又は削除された場合、通信ノード装置10において、転送カード400のタグ変換部417及び情報処理カード100のタグ変換部117は、新たな変換テーブル703に従ったタグ変換処理を開始する。
図10は、本実施例1の通信ノード装置10におけるタグ変換処理を示すフローチャートである。
以下に、タグ変換部417におけるタグ変換処理を、図10を用いて説明する。なお、タグ変換部117におけるタグ変換処理とタグ変換部417におけるタグ変換処理とは、図10に示す同じフローによって説明される。
通信ノード装置10の転送カード400がイーサフレームを受信した場合、NP・チップセット410は、イーサフレームをタグ変換部417に入力する(S550)。S550の後、タグ変換部417は、揮発性メモリ412に保持された変換テーブル703を参照する(S551)。
S550及びS551の処理は、通信ノード装置10外のWAN4又はLAN5からイーサフレーム82を受信した場合、通信ノード装置10内の他の転送カード400からイーサフレーム82を受信した場合、又は、通信ノード装置10内の情報処理カード100からイーサフレーム86を入力された場合等に行われる処理である。
タグ変換部417は、入力されたイーサフレームのVLANタグのうち先頭に付加されたタグと、イーサフレームの入力元とを示す値とが、変換テーブル703のIN TAG40及びIN PORT41に含むエントリと、それぞれ一致するか否かを判定する(S552)。
変換テーブル703からエントリに一致するとS552において判定された場合、タグ変換部417は、一致したエントリに複製の指示を示す情報が含まれるか否かを判定する。以下に示す実施例において、タグ変換部417は、S552において一致したエントリのOUT TAG50に二つ以上の値が含まれる場合、複製の指示を示す情報が含まれると判定する。しかし、タグ変換部417は、複製の指示を示す情報が含まれるか否かを判定できれば、いかなる方法によって判定してもよい。
一致したエントリに複製の指示を示す情報が含まれない場合、タグ変換部417は、S554を実行する。一致したエントリに複製の指示を示す情報が含まれる場合、タグ変換部417は、入力されたイーサフレームを複製の指示に従って複製する(S553)。
S553の後、タグ変換部417は、拡張タグVLAN通信におけるイーサフレームの一番外側のタグを、一致したエントリのOUT TAG42の値に従って変換する(S554)。そして、一致したエントリのOUT PORT43の値に従って、タグを変換されたイーサフレームを出力する(S555)。
変換テーブル703に一致するエントリが無いとS552において判定された場合、タグ変換部417は、NP・チップセット410があらかじめ保持する通常のフォワーディングテーブル(MACアドレステーブル又は転送データベース(FDB:Forwarding Data Base)等と呼ばれる)を参照し、入力されたイーサフレームに対応する宛先へ送信する(S556)。
次に、タグ変換部117におけるタグ変換処理を、図10を用いて説明する。ただし、タグ変換部117は、仮想スイッチ190から送信されたイーサフレームにタグ変換処理を実行する。
情報処理カード100が内部スイッチ300側からイーサフレームを受信した場合、プロセッサ110は、受信したイーサフレームを仮想スイッチ190に処理させる。仮想スイッチ190は、イーサフレームを受信した場合、イーサフレームの一番外側のVLANタグを削除する。そして、仮想スイッチ190は、揮発性メモリ112にあらかじめ保持されたフォワーディングテーブルに従って、一番外側のVLANタグが削除されたイーサフレームを、仮想マシンへ転送する。
また、仮想スイッチ190が、仮想マシンからイーサフレームを受信した場合、仮想スイッチ190は、イーサフレームにVLANタグ(本例ではLTAGに相当する)を付加する。そして、VLANタグを付加されたイーサフレームを、揮発性メモリ112にあらかじめ保持されたフォワーディングテーブルに従って、チップセット111に転送する。
チップセット111のタグ変換部117は、仮想スイッチ190からイーサフレームを入力された場合(S550)、揮発性メモリ112に保持された変換テーブル703を参照する(S551)。そして、タグ変換部117は、タグ変換部417によるS552〜S555の処理と同じ処理を実行する。
なお、タグ変換部117によるS552において、エントリが一致しない場合とは、変換テーブル703の生成が失敗であった等の場合のみである。正常に変換テーブル703が生成されている場合、タグ変換部117は、S552において一致するエントリをみつけることができる。
タグ変換部117は、S555において、当該タグ変換部117を有する情報処理カード100(すなわち、タグ変換処理中の情報処理カード100上の仮想スイッチ190)、または、当該タグ変換部117を有する情報処理カード100とは別の情報処理カード100(すなわち、タグ変換処理中の情報処理カード100とは別の情報処理カード100上の仮想スイッチ190)、または、転送カード400に、イーサフレームを出力する。
図10に示すフローチャートの具体例を以下に示す。
図11は、本実施例1のタグ変換処理の具体例を示す説明図である。
図11に示す処理は、A社の仮想ネットワーク通信(拡張タグVLAN通信を用いた広域イーサネット)に通信サービスとしてファイアウォール(FW)とWAN最適化(WOC)とを適用する場合の、通信ノード装置10における処理である。
図11に示す通信ノード装置10は、WAN4からイーサフレーム82−1を入力され、LAN5へイーサフレーム82−2を出力する。
図12は、本実施例1のタグ変換されるイーサフレームの具体例を示す説明図である。
図11に示すイーサフレーム82−1は、図4に示すイーサフレーム82と同じく、MAC DA90、MAC SA91、STAG96、CTAG95、タイプ92、L2ペイロード93、及び、FCS94を含む。図11に示すSTAG96のVID34は"0x000A"であり、"0x000A"はA社を示すVID34の識別子である。
転送カード400−1のNP・チップセット410が図12に示す拡張タグVLANのイーサフレーム82−1をWAN4から入力された場合(S550)、タグ変換部417−1は、揮発性メモリ412に保持される図8に示す変換テーブル703を参照する(S551)。
S551の後、タグ変換部417−1は、イーサフレーム82−1が変換テーブル703のエントリ762(IN TAG40がVID="0x000A"のSTAG96、かつ、IN PORT41がWAN4)に一致すると判定する(S552)。エントリ762のOUT TAG50の値は一つであるため(S553)、タグ変換部417−1は、イーサフレーム82−1のSTAG96を、VID34が"0x001A"であるLTAG97に、エントリ762に従って変換する。この変換によって、図12に示すイーサフレーム83が生成される(S554)。
S554の後、タグ変換部417−1は、エントリ762のOUT PORT51に従って、イーサフレーム83を内部スイッチ300に出力する(S555)。内部スイッチ300は、イーサフレーム83を入力された場合、イーサフレーム83のLTAG97のVID34が"0x001A"に相当する仮想マシンのVNIC(すなわち、VNIC123)が割り当てられた情報処理カード100を特定し、特定された情報処理カード100に向けて、イーサフレーム83を転送する。
情報処理カード100は、イーサフレーム83を入力された場合、仮想スイッチ190によって一番外側のVLANタグ(図11におけるLTAG97)を削除してイーサフレーム81−1とし、削除したVLANタグ(この場合はLTAG97)のVID34の値である"0x001A"に相当するVNIC123へイーサフレーム81−1を入力する。このときイーサフレーム81−1は、CTAG95のみが付与された形式となっている。
こうして、仮想マシン120のゲストOS122上のA社ファイアウォールサービスプログラム121は、VNIC123から入力されたイーサフレーム81−1に対してファイアウォールサービスを実行することができる。ここまでの操作によって、A社ファイアウォールサービスプログラム121に入力されるイーサフレームは、A社内で用いられるCTAG95のみが付与された形式となっている。このため、A社のイーサフレーム、かつ、該当サービス(この場合はファイアウォールサービス)を適用すべきイーサフレームのみとなっていることが保証されており、他社のイーサフレームが混ざったり、該当サービスを適用すべきでないイーサフレームが混ざったりする心配はない。他の仮想マシンも、この点において仮想マシン120と同じであり、CTAG95のみを付加されたイーサフレーム81に対して通信サービスを実行する。
イーサフレーム81−1がA社ファイアウォールサービスプログラム121を通過できるイーサフレームであった場合(すなわち、ファイアウォールによってブロックされなかった場合)、仮想マシン120は、VNIC124から仮想スイッチ190にイーサフレーム81−1を出力する。
仮想スイッチ190は、VNIC124からイーサフレーム81−1を受信した場合、VNIC124に対応するLTAG97(VID34が"0x002A")を、イーサフレーム81−1に付加する。これによって、図12に示すイーサフレーム84が生成される。そして、仮想マシン120は、イーサフレーム84をチップセット111に送信する。チップセット111は、イーサフレーム84をタグ変換部117に入力する。
タグ変換部117がイーサフレーム84を入力された場合(S550)、タグ変換部117は、図10のS551〜S555の処理を実行する。タグ変換部117は、S552において、イーサフレーム84が変換テーブル703のエントリ763(IN TAG40がVID="0x002A"のLTAG97、かつ、IN PORT41がCARD#1(同じ情報処理カード100))に一致すると判定する。
そして、エントリ763のOUT TAG50の値は一つであるため(S553)、タグ変換部117は、エントリ763のOUT TAG50に従ってLTAG97をVID34が"0x003A"であるLTAG97に変換する。この変換によって、図12に示すイーサフレーム85が生成される(S554)。
タグ変換部117は、エントリ763のOUT PORT51に従って、イーサフレーム85を内部スイッチ300へ送信する。
内部スイッチ300は、イーサフレーム85を受信した場合、イーサフレーム85の入力元(情報処理カード100)とLTAG97のVID34が"0x003A"に該当する仮想マシンのVNIC(すなわち、VNIC133)が割り当てられた宛先を情報処理カード100であると特定し、特定された情報処理カード100へ向けてイーサフレーム85を転送する。
情報処理カード100は、イーサフレーム85を受信すると、仮想スイッチ190によって一番外側のVLANタグを削除してイーサフレーム81−2とし、削除したVLANタグのVID34の値である"0x003A"に相当するVNIC133へイーサフレームを入力する。このときイーサフレーム81−2は、CTAG95のみが付与された形式となっている。
こうして、仮想マシン130のゲストOS132上のA社WAN最適化サービスプログラム131は、VNIC133から入力されたイーサフレーム81−2に対してWAN最適化サービスを実行することができる。
A社WAN最適化サービスプログラム131において、イーサフレーム81−2がLAN方向に通過するイーサフレームとして処理された場合、イーサフレーム81−2は、VNIC134から仮想スイッチ190に出力される。そして、仮想スイッチ190は、入力元であるVNIC134に対応するLTAG97(VID34が"0x004A")を、イーサフレーム81−2に付加する。これによって、図12に示すイーサフレーム86が生成される。そして、仮想スイッチ190は、イーサフレーム86をチップセット111に入力する。
チップセット111のタグ変換部117は、イーサフレーム86が入力された場合(S550)、図10に示す処理を実行する。しかし、S552において、タグ変換部117は、変換テーブル703に一致するエントリが存在しないと判定する。このため、タグ変換部117は、あらかじめ保持されたフォワーディングテーブルに従い、内部スイッチ300にイーサフレーム86を出力する(S556)。
内部スイッチ300は、イーサフレーム86の入力元(情報処理カード100)とLTAGのVID34が"0x004A"とに対応する出力先を転送カード400−2である特定し、特定された出力先にイーサフレーム86を出力する。
転送カード400−2のNP・チップセット410がイーサフレーム86を入力された場合(S550)、タグ変換部417−2は、図10に示す処理を開始する。タグ変換部417−2は、イーサフレーム86が変換テーブル703のエントリ764(IN TAG40がVID34="0x004A"のLTAG97、かつ、IN PORT41がCARD#1(情報処理カード100))に一致すると判定する(S552)。
エントリ764のOUT TAG50の値は一つであるため(S553)、タグ変換部417−2は、イーサフレーム86のLTAG97を、VID34が"0x000A"であるSTAG96に、エントリ764に従って変換する。この変換によって、イーサフレーム82−2が生成される(S554)。
タグ変換部417−2は、エントリ764のOUT PORT51に従って、イーサフレーム82−2を、転送カード400−2からLAN5へ出力する(S555)。
以上の処理により、A社の仮想ネットワークサービス(拡張タグVLANを利用した広域イーサネット)に、通信サービスを適用することが可能である。
図10に示す処理の別の具体例を以下に示す。
図13は、本実施例1のイーサフレームの複製を伴うタグ変換処理の具体例を示す説明図である。
図13に示す処理は、B社の仮想ネットワーク通信(拡張タグVLAN通信を用いた広域イーサネット)に通信サービスとして侵入検知(IDS:Intrusion Detection System)とWAN最適化とを適用する場合の、通信ノード装置10における処理である。
図13に示す通信ノード装置10は、WAN4からイーサフレーム72を入力され、LAN5へイーサフレーム72を出力する。
図14は、本実施例1のタグ変換処理時に複製されるイーサフレームの具体例を示す説明図である。
図14に示すイーサフレーム72−1は、図4に示すイーサフレーム82と同じく、MAC DA90、MAC SA91、STAG96、CTAG95、タイプ92、L2ペイロード93、及び、FCS94を含む。図14に示すSTAG96のVID34は、"0x000B"であり、"0x000B"はB社を示すVID34の識別子である。
転送カード400−1のNP・チップセット410が図13に示す拡張タグVLANのイーサフレーム72をWAN4から入力された場合、タグ変換部417−1は、揮発性メモリ412に保持される図8に示す変換テーブル703を参照する(S551)。
S551の後、タグ変換部417−1は、イーサフレーム72が変換テーブル703のエントリ765(IN TAG40がVID="0x000B"のSTAG96、かつ、IN PORT41がWAN4)に一致すると判定する(S552)。S552の後、タグ変換部417−1は、エントリ765のOUT TAG50に二つの値が格納されているため、エントリ765に従って、イーサフレーム72を二つに複製する(S553)。
S553の後、タグ変換部417−1は、複製されたうちの一つのイーサフレーム72のSTAG96を、VID34が"0x005B"であるLTAG97に変換する。この変換によって、図14に示すイーサフレーム73が生成される。
また、タグ変換部417−1は、複製されたうちの別のイーサフレーム72のSTAG96を、VID34が"0x007B"であるLTAG97に変換する。この変換によって、図14に示すイーサフレーム75が生成される(S554)。
S554の後、タグ変換部417−1は、エントリ765のOUT PORT51に従って、イーサフレーム73及びイーサフレーム75を内部スイッチ300に出力する(S555)。
内部スイッチ300は、イーサフレーム75を受信した場合、イーサフレーム75の入力元とLTAG97のVID34の値である"0x007B"に該当する仮想マシンのVNIC153が割り当てられた宛先を情報処理カード100であると特定し、特定された情報処理カード100に向けてイーサフレーム75を転送する。
情報処理カード100は、イーサフレーム75を受信すると、仮想スイッチ190によって一番外側のVLANタグを削除してイーサフレーム71とし、削除したVLANタグのVID34の値である"0x007B"に相当するVNIC153へイーサフレーム71を転送する。このときイーサフレーム71は、CTAG95のみが付与された形式となっている。
こうして、仮想マシン150のゲストOS152上のB社IDSサービスプログラム151は、VNIC153から入力されたイーサフレーム71に対してIDSサービスを実行することができる。
なお、B社IDSサービスプログラム151による処理の結果は、イーサフレームとしてLAN5に送信されず、仮想マシン150(実際には情報処理カード100)に蓄積される。このため、管理者等は、B社IDSサービスプログラム151による処理の結果を、VNIC153経由で収集してもよく、また、別のVNICポートを設定することによって収集してもよい。
また、内部スイッチ300は、イーサフレーム73を入力された場合、イーサフレーム73の入力元とLTAG97のVID34の値である"0x005B"に該当する仮想マシンのVNICが割り当てられた宛先を情報処理カード100であると特定し、特定された情報処理カード100へイーサフレーム73を転送する。
情報処理カード100は、イーサフレーム73を受信すると、仮想スイッチ190によって一番外側のVLANタグを削除してイーサフレーム71とし、削除したVLANタグのVID34の値である"0x005B"に相当するVNIC153へイーサフレーム71を転送する。このときイーサフレーム71は、CTAG95のみが付与された形式となっている。
こうして、仮想マシン140のゲストOS142上のB社WAN最適化サービスプログラム141は、VNIC153から入力されたイーサフレーム71に対してWAN最適化サービスを実行することができる。
B社WAN最適化サービスプログラム141において、イーサフレーム71がLAN方向に通過するイーサフレームとして処理された場合、イーサフレーム71は、VNIC144から仮想スイッチ190に出力される。そして、仮想スイッチ190は、入力元であるVNIC144に対応するLTAG97(VID34が"0x006B")を、イーサフレーム71に付加する。これによって、図14に示すイーサフレーム74が生成される。そして、仮想スイッチ190は、イーサフレーム74をチップセット111に入力する。
チップセット111のタグ変換部117は、イーサフレーム74が入力された場合(S550)、図10に示す処理を実行する。しかし、S552において、タグ変換部117は、変換テーブル703に一致するエントリが存在しないと判定する。このため、タグ変換部117は、あらかじめ保持されたフォワーディングテーブルに従い、内部スイッチ300にイーサフレーム74を出力する(S556)。
内部スイッチ300は、イーサフレーム74が入力された場合、入力元の情報とLTAG97のVID34"0x006B"とに相当する出力先を転送カード400−2であると特定し、特定された出力先にイーサフレーム74を出力する。
転送カード400−2のNP・チップセット410がイーサフレーム74を受信した場合(S550)、タグ変換部417−2は、図10に示す処理を開始する。タグ変換部417−2は、イーサフレーム74が変換テーブル703のエントリ766(IN TAG40がVID34="0x006B"のLTAG97、かつ、IN PORT41がCARD#1(情報処理カード100))に一致すると判定する(S552)。
エントリ766のOUT TAG50の値は一つであるため(S553)、タグ変換部417−2は、イーサフレーム74のLTAG97を、VID34が"0x000B"であるSTAG96に、エントリ766に従って変換する。この変換によって、イーサフレーム72が生成される。
タグ変換部417−2は、エントリ766のOUT PORT51に従って、イーサフレーム72を、転送カード400−2からLAN5へ出力する(S555)。
以上の処理により、B社の仮想ネットワークサービス(拡張タグVLANを利用した広域イーサネット)に、通信サービスを適用することが可能である。
図11に示す処理の変形例を以下に記載する。
図15は、本実施例1の通信サービスを連続して実行する場合のタグ変換処理を示す説明図である。
図11に示すA社向けの通信サービス(仮想マシン120におけるFW及び仮想マシン130におけるWOC)のように、同一の情報処理カード100の同一のプロセッサ110が複数の通信サービスを連続的に実行する場合、管理者は、二つの通信サービス間(すなわち、二つの仮想マシン間)で、仮想スイッチ190がLTAG97を付加する処理を削除してもよい。
そして、管理者は、二つの通信サービスの出力のVNICと入力のVNICとを共通の仮想スイッチによって接続するように設定し、一つの通信サービスによる処理が終了したイーサフレーム(CTAG95のみが付加されたイーサフレーム)を、別の通信サービスによる処理を実行する仮想マシンに直接送信するようにしてもよい。これによって、タグ変換部117によるタグ変換処理が削減され、迅速な処理が可能となる。
例えば、図15に示すように、管理者が、A社ファイアウォールサービスプログラム121のVNIC124とA社WAN最適化サービスプログラム131のVNIC133との間においてのみイーサフレームが通信されるように、仮想スイッチ190を設定する。これによって、タグ変換部117においてLTAG47は付加されないため、二つの仮想マシンはCTAG95のみが付加されたイーサフレーム81を利用することができる。
図15に示す処理は、例えば、管理者が、仮想スイッチ190に、VNIC124の出力がVNIC133の入力となるように、VNIC133の出力がVNIC124の入力となるように設定することによって実装可能である。ここで実装される仮想スイッチ190は、VNIC124又は物理NICなどのインタフェースからイーサフレームを受信した場合、揮発性メモリ112に格納されるフォワーディングテーブルを参照しイーサフレームを転送したり、VLANタグの付加及び削除をしたりする。それ以外の処理は、図11に示す処理と同じである。
前述の本実施例のシステムと比較するためのシステム構成を、図16に示す。
図16は、本実施例1の通信サービスを提供するためのシステム構成との比較例を示すブロック図である。
図16が示すシステム構成は、通信事業者が広域イーサネット上でWAN最適化及びファイアウォールなどの通信サービスを提供する形態を示す。
図1に示すシステム構成と図16に示すシステム構成との相違点を以下に示す。相違点の一つ目は、図16に示す通信局舎3が通信ノード装置10−2を有さず、データセンタ1が通信ノード装置10−1を有さない点である。また、相違点の二つ目は、エッジスイッチ11−2と各社のLANスイッチ21との間にテナント(顧客)毎に独立したアプライアンス950(950−3、950−4)が接続される点である。また、相違点の三つ目は、エッジスイッチ11−1と各社のLANスイッチ12との間にテナント(顧客)毎に独立したアプライアンス950(950−1、950−2)が接続される点である。
図16に示すアプライアンス950を通信事業者が提供した場合、各アプライアンス950はテナント間で独立しているため、A社もB社も、自社向けの通信サービスを通信事業者から提供される広域イーサネットにおいて利用することができる。
通信サービスを提供されるテナント(顧客)が少数である場合、通信事業者は、図16に示すシステム構成を用いることによって、各テナント独自の通信サービスを提供することができる。しかし、テナントが多数である場合、図16に示すシステムでは、必要とするアプライアンス950の数が多数となり、設備コスト及び運用コストの増大を招くことになる。
一方、本実施例1の図1に示すシステム構成は、通信サービスを提供するための仮想マシンが通信ノード装置10(10−1、10−2)に備わるため、必要な通信ノード装置10(アプライアンスに相当)の数を低減できる。このため、本実施例1によれば、通信事業者は、通信サービスを提供するための設備を構築するためのコストを低減できる。
前述のとおり、本実施例1によれば、通信ノード装置10において、テナント、及びVLAN等の複数の仮想ネットワークを識別するSTAGを、通信ノード装置10における処理のためのLTAGに変換することによって、複数の仮想ネットワークを収容するネットワークにおいて、通信サービスを仮想ネットワーク毎に提供することができる。
また、通信サービスを実行する装置を、各テナント間で共有の通信ノード装置10の仮想マシンによって実行することによって、通信事業者の設備コスト及び運用コストを低減することができる。
実施例2におけるネットワークシステムは、実施例1に示す通信ノード装置10を、タグ変換装置とスイッチとサーバとを備えるシステムに置き換えたシステムである。
図17は、本実施例2のタグ変換処理を実行するシステムを示すブロック図である。
図17に示す通信事業者網(WAN)4及びデータセンタ1は、図1に示すWAN4及びデータセンタ1に相当する。図17に示すデータセンタ1は、図1に示す通信ノード装置10に相当する通信ノードシステム1000を有する。
通信ノードシステム1000は、タグ変換装置14、複数のスイッチ15(15−1〜15−M、Mは任意の正数)、及び、複数のサービス提供装置16(16−1〜16−N、Nは任意の正数)を有する。
タグ変換装置14は、WAN4とエッジスイッチ11との間に設置され、タグ変換装置14を通過する拡張タグVLAN通信のイーサフレームを横取りする。そして、タグ変換装置14は、インタセプトされたイーサフレームが通信サービスを適用するイーサフレームである場合、イーサフレームの最外部のVLANタグをSTAG96からLTAG97に変換する。そして、タグ変換装置14は、スイッチ15経由で適用される通信サービスが稼働するサービス提供装置16へイーサフレームを転送する。
また、サービス提供装置16から送信された通信サービス実行済みのイーサフレームを検査し、イーサフレームに更なる通信サービスを実行する必要がある場合、タグ変換装置14は、再度、適用される通信サービスのポートに対応するLTAGにイーサフレームのLTAG97を変換する。そして、タグ変換装置14は、スイッチ15経由で適用される通信サービスが稼働するサービス提供装置16へイーサフレームを転送する。
また、サービス提供装置16から送信されたクラウド向けサービス実行済みのイーサフレームを検査し、イーサフレームに更なる通信サービスを実行する必要がない場合、タグ変換装置14は、イーサフレームのLTAG97を元のSTAG96に変換する。そして、タグ変換装置14は、WAN4又はエッジスイッチ11へイーサフレームを転送する。
図18は、本実施例2のタグ変換装置14の物理的な構成と、物理的な構成によって実装される論理的な構成とを示すブロック図である。
タグ変換装置14は、図2に示す通信ノード装置10の制御カード200と転送カード400との機能を持つ。具体的には、タグ変換装置14は、プロセッサ210、NP・チップセット410、揮発性メモリ212、揮発性メモリ412、及び、不揮発性メモリ413を有する。
プロセッサ210は、例えば、CPU等であり、揮発性メモリ212に展開されたプログラム等を実行するための演算装置である。揮発性メモリ212は、制御プログラム702、サービステーブル700、及び、資源管理テーブル701を保持する。
NP・チップセット410は、イーサフレームに関する処理を行う。NP・チップセット410はタグ変換部417を有する。タグ変換部417は、実施例1の図10に示す処理と同じ処理を実行する。
揮発性メモリ412は、イーサフレームを一時的に保持したり、変換テーブル703、及び、フォワーディングテーブル等の各種のテーブル情報を保持したりする記憶領域である。不揮発性メモリ413は、タグ変換装置14の設定情報を保持する記憶領域である。
実施例2のサービステーブル700、資源管理テーブル701、及び、変換テーブル703は、実施例1のサービステーブル700、資源管理テーブル701、及び、変換テーブル703と同じである。また、実施例2の制御プログラム702も、実施例1の制御プログラム702と同じである。
図19は、本実施例2のサービス提供装置16の物理的な構成と、物理的な構成によって実装される論理的な構成とを示すブロック図である。
サービス提供装置16は、図2に示す通信ノード装置10の情報処理カード100に相当し、汎用的なPC(Personal Computer)サーバによって実装されてもよい。サービス提供装置16は、プロセッサ110、揮発性メモリ112、物理NIC114、及び、不揮発性メモリ113を有する。
プロセッサ110は、例えば、CPU等の演算装置であり、通信サービスのプログラムを実行する演算装置である。物理NIC(ネットワークインタフェース)114は、イーサフレームの送受信を行う。揮発性メモリ112は、イーサフレームを一時的に保持したり、各種のテーブル情報を保持したり、プログラムを展開されたりする。不揮発性メモリ113は、設定情報、プログラム、及び、OS等を保持する記憶領域である。
サービス提供装置16は、サービス提供装置16が有する物理的な構成を接続するための内部バス115を有する。
サービス提供装置16のプロセッサ110と揮発性メモリ112とは、マルチテナントに通信サービスを提供するため、仮想化ソフトによって、複数の仮想マシンとそれらを接続する仮想スイッチ190とを実装する。図19に示すサービス提供装置16は、実施例1の情報処理カード100と同じく仮想マシン120、130、140、及び、150を有する。
図20は、本実施例2の変換テーブル703の例を示す説明図である。
図20の変換テーブル703は、実施例1の変換テーブル703と同じく、図9に示す処理によってサービステーブル700に基づいて生成されたテーブルである。図20に示す変換テーブル703は、エントリ7031〜エントリ7033を含む。
実施例2の変換テーブル703と、実施例1の変換テーブル703との相違点は以下である。相違点は、実施例2の変換テーブル703のIN PORT41及びOUT PORT51が、スイッチ15を示す値を含む点である。
図21は、本実施例2のタグ変換処理の具体例を示す説明図である。
図21に示す処理は、A社の仮想ネットワーク通信(拡張タグVLAN通信を用いた広域イーサネット)に通信サービスとしてファイアウォール(FW)とWAN最適化(WOC)とを適用する場合の、実施例2のデータセンタ1における処理である。
図21に示すタグ変換装置14は、WAN4からイーサフレーム82−1を入力され、エッジスイッチ11へイーサフレーム82−2を出力する。また、図21に示す通信ノードシステム1000において、サービス提供装置16−1が仮想マシン120を有し、サービス提供装置16−2が仮想マシン130を有する。
図21に示す処理において変換されるイーサフレームは、図12に示すイーサフレームと同じである。
STAG96のVID34が"0x000A"であるイーサフレーム82−1がWAN4のポートから入力された場合(S550)、タグ変換装置14のタグ変換部417は、図10に示すS551〜S555を実行する。
具体的には、タグ変換部417は、S551〜S554において、図20に示す変換テーブル703のエントリ7031に従って、VID34に"0x001A"を含むLTAG97にイーサフレーム82−1のSTAG96を変換し、これによってイ−サフレーム83を生成する。また、タグ変換部417は、S555において、エントリ7031のOUT PORT51が示す値(スイッチ15−1)に従って、イーサフレーム83をスイッチ15−1に出力する。
スイッチ15−1は、イーサフレーム83のLTAG97のVID34"0x001A"に該当するVNICを有するサービス提供装置16−1を特定する。そして、スイッチ15−1は、特定されたサービス提供装置16−1へ、イーサフレーム83を転送する。
さらに、サービス提供装置16−1上の仮想スイッチ190−1は、イーサフレーム83を入力された場合、イーサフレーム83の一番外側のVLANタグ(この例ではLTAG97)を削除し、これによって、図12に示すイーサフレーム81−1を生成する。そして、仮想スイッチ190−1は、削除したLTAG97のVID34"0x001A"に基づいて、A社ファイアウォールサービスプログラム121を実行する仮想マシン120のVNIC123へ、イーサフレーム81−1を送信する。
イーサフレーム81−1がA社ファイアウォールサービスプログラム121を通過できるイーサフレームであった場合、VNIC124からイーサフレーム81−1が仮想スイッチ190−1に出力される。そして、仮想スイッチ190−1は、VNIC124に対応するVID34が"0x002A"であるLTAG97をイーサフレーム81−1に付加し、これによって、図12に示すイーサフレーム84を生成する。
仮想スイッチ190−1は、イーサフレーム84をスイッチ15−1に送信する。スイッチ15−1は、イーサフレーム84をタグ変換装置14に転送する。タグ変換装置14がスイッチ15−1からイーサフレーム84を入力された場合(S550)、タグ変換部417は、図10に示すS551〜S555を実行する。
具体的には、タグ変換部417は、S551〜S554において、図20に示す変換テーブル703のエントリ7032に従って、VID34が"0x003A"であるLTAG97にイーサフレーム84のLTAG97を変換し、これによって、イーサフレーム85を生成する。また、タグ変換部417は、S555において、エントリ7032のOUT PORT51が示す値(スイッチ15−1)に従って、イーサフレーム85をスイッチ15−1に出力する。
スイッチ15−1は、入力元(タグ変換装置14)とLTAG97のVID34が"0x003A"に該当する通信サービスが適用されるサービス提供装置16−2を特定し、特定されたサービス提供装置16−2へイーサフレーム85を転送する。
さらに、サービス提供装置16−2上の仮想スイッチ190−2は、イーサフレーム85を入力された場合、イーサフレーム85の一番外側のVLANタグ(この例ではLTAG97)を削除し、これによって、図12に示すイーサフレーム81−2を生成する。そして、仮想スイッチ190−2は、削除したLTAG97のVID34"0x003A"に基づいて、A社WAN最適化サービスプログラム131を実行する仮想マシン130のVNIC133へ、イーサフレーム81−2を送信する。
A社WAN最適化サービスプログラム131において、イーサフレーム81−2がLAN方向に通過するイーサフレームとして処理された場合、イーサフレーム81−2は、VNIC134から仮想スイッチ190−2に出力される。そして、VNIC134に対応するVID34が"0x004A"であるLTAG97をイーサフレーム81−2に付加し、これによって、図12に示すイーサフレーム86を生成する。
仮想スイッチ190−2は、イーサフレーム86をスイッチ15−1に送信する。スイッチ15−1は、イーサフレーム86をタグ変換装置14に転送する。タグ変換装置14がスイッチ15−1からイーサフレーム86を入力された場合(S550)、タグ変換部417は、図10に示すS551〜S555を実行する。
具体的には、タグ変換部417は、S551〜S554において、図20に示す変換テーブル703のエントリ7033に従って、VID34が"0x000A"であるSTAG96にイーサフレーム86のLTAG97を変換し、これによって、イーサフレーム82−2を生成する。また、タグ変換部417は、エントリ7033のOUT PORT51が示す値(LAN)に従って、タグ変換装置14からLAN5(エッジスイッチ11)へイーサフレーム82−2を出力する。
以上の操作により、A社の仮想ネットワークサービス(拡張タグVLANを利用した広域イーサネット)に、通信サービスを適用することが可能である。また、LTAGは通常のVLANタグと同じフォーマットであるため、標準的なスイッチ及びPCサーバを利用して実施例2のシステムを構成することが可能である。
また、実施例2において、タグ変換処理はタグ変換装置14においてのみ行われる。また、変換テーブル703も、タグ変換装置14のみが保持する。これによって、実施例2によれば、サービス提供装置16が遠隔に配置される場合においても、通信事業者はタグ変換装置14のみを管理することによって、仮想ネットワークサービスに通信サービスを提供できる。
なお、実施例1に示す通信ノード装置10、及び、実施例2で示す通信ノードシステム1000において、仮想ネットワークの識別子として、拡張タグVLAN以外を利用してもよい。以下に、拡張タグVLAN以外のイーサフレームを用いる例を記載する。
本実施例において説明された広域イーサネットを実現する技術には、拡張タグVLAN以外に、IEEE802.1ahにおいて定義されるMACinMACを利用する方法がある。MACinMACは、イーサフレーム(MACフレーム)をイーサフレーム(MACフレーム)によってカプセル化して通信する技術である。
MACinMACには、二つの方法がある。一つ目の方法は、イーサフレームをイーサフレーム(MACフレーム)によってカプセル化する際に、STAG及びCTAG付きの拡張タグVLAN通信用のイーサフレームを、MACフレームによってカプセル化する方法である。二つ目の方法は、CTAG付きのイーサフレームを、MACフレームによってカプセル化する方法である。
一つ目の方法によるMACinMACのイーサフレームは、本実施例1の通信ノード装置10及び本実施例2の通信ノードシステム1000によって、拡張タグVLAN通信用のイーサフレーム82として受信される。このため、本実施例1の通信ノード装置10及び本実施例2の通信ノードシステム1000は、受信するイーサフレームをMACinMACによるイーサフレームとして特別に処理する必要はない。
二つ目の方法によるMACinMACのイーサフレームを、図22に示す。
図22は、本実施例2のMACinMACのイーサフレームを示す説明図である。
二つ目の方法によるMACinMACのイーサフレーム820は、イーサフレーム82と、イーサフレーム82の外側に付加されたヘッダとを含む。イーサフレーム82の外側に付加されたヘッダには、MAC DA69、MAC SA68、BTAG67、及び、ITAG66が含まれる。
ITAG66は、テナントを識別する6バイトの値を含む。イーサフレーム82のMAC DA90、及び、MAC SA91と、ITAG66とを含めた18バイト部分をITAGとして規定されてもよい。ITAG66はISID(Service Instance ID)と呼ぶ24ビットの識別子(ISID63)を備えているため、ITAG66は、12ビットのVIDを備えるSTAGよりも多数のテナントを識別できる。
本発明に二つ目の方法によるMACinMACを利用する場合、タグ変換部417は、イーサフレーム82のSTAG96の代わりに、ITAG66をLTAG97に変換する。また、制御プログラム702は、サービステーブル700及び変換テーブル703に、STAG96を示す値の代わりに、ITAG66を示す値を格納する。
ITAG66を変換することによって生成されるLTAG97は、ITAG66と同じフォーマットでもよいし、MACinMACがオプションで含むBTAG67のVLANタグと同じフォーマットでもよい。
さらに、本実施例の変形例としてVLANを利用した拡張タグVLAN以外に、IETF(Internet Engineering Task Force)において審議されているVXLANを利用する方法がある。
図23は、本実施例2のVXLANのイーサフレーム910を示す説明図である。
VXLANは、UDP/IPのイーサフレームによって、イーサフレーム82をカプセル化し、カプセル化されたイーサフレームによって通信する技術である。VXLANにおけるUDP/IPのイーサフレームは、図23に示すように、24ビットの識別子を含む8バイトのVXLANヘッダ906をペイロードの先頭に持つ。
VXLANは、大規模マルチテナントにおけるクラウド構築、及び、複数拠点間の透過的なディザスタリカバリなどを実現する狙いで、審議される技術である。
本実施例にVXLANを適用する場合、タグ変換部417は、イーサフレーム82のSTAG96の代わりに、VXLANヘッダ906をLTAG97に変換する。また、制御プログラム702は、サービステーブル700及び変換テーブル703に、STAG96を示す値の代わりに、VXLANヘッダ906を示す値を格納する。
VXLANヘッダ906を変換することによって生成されるLTAG97は、VXLANヘッダ906と同じフォーマットでもよいし、VXLANにオプションで規定されるCTAG902(VLANタグと同じ)と同じフォーマットでもよい。
前述の通り、MACinMAC、及び、VXLANのいずれを用いた場合も、イーサフレームに含まれる識別子をLTAGに変換する方法、及び、WAN最適化などの通信サービスを実行するための仮想マシンとの組合せ方法は、実施例1に示す通信ノード装置10、及び、実施例2に示す通信ノードシステム1000と同じ方法によって実装できる。
このため、本実施例は、イーサフレームのフォーマットを規定する多様な方法に適用することが可能であり、多くのネットワークシステムにおいて柔軟に適用可能な通信方法を提供する。
なお、前述の実施例において、一つの情報処理カード100又は一つの通信ノードシステム1000における複数の仮想マシンが、連続して通信サービスを実行する方法、及び、並行して通信サービスを実行する方法が記載された。前述に記載されたこれらの方法は、最も単純な例であり、例えば、タグ変換部417がイーサフレームを複数に複製し、その後複製された各イーサフレームに、連続して通信サービスが実行されてもよい。
本実施例によれば、イーサフレームに含まれる仮想ネットワークを識別するタグ(STAG、CTAG、又は、ITAG等に相当)を、通信サービスを提供する仮想マシンの通信ポートを識別するタグ(LTAGに相当)に変換し、仮想ネットワーク毎に通信サービスを適用する。その後、通信サービス及び通信ポートを識別する識別子を、再び元の仮想ネットワークを識別する識別子に変換し、イーサフレームを送信するため、広域イーサネットサービス上で、仮想マシンを利用して通信サービスを連携提供することが可能になる。
また、通信サービスの総数より少数の通信ノード装置10又は通信ノードシステム1000しか必要としないため、通信事業者がクラウドサービスを提供する際の設備コスト、及び、運用コストを低減することが可能になる。
1 データセンタ
2 拠点
3 通信局舎
4 通信事業者網(WAN:広域網)
5 LAN
10 通信ノード装置
11 エッジスイッチ
12、21 LANスイッチ
13 サーバ
14 タグ変換装置
15 スイッチ
16 サービス提供装置
20 クライアント
100 情報処理カード
200 制御カード
300 内部スイッチ
400 転送カード
410 NP・チップセット
700 サービステーブル
701 資源管理テーブル
702 制御プログラム
703 変換テーブル

Claims (19)

  1. 物理ネットワークを介してイーサフレームを互いに送受信するサーバとクライアントとの通信経路上に設置される通信装置であって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記通信装置は、
    前記イーサフレームに対して、少なくとも一つの通信サービスを実行する情報処理部と、
    前記サーバ及びクライアント間で送受信される前記イーサフレームを取込み、前記取込まれたイーサフレームの宛先である前記サーバ又は前記クライアントに向けて前記取込まれたイーサフレームを送信する転送部と、
    前記イーサフレームを変換するタグ変換部と、を有し、
    前記情報処理部は、
    前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記イーサフレームに対して各々の前記通信サービスを実行する仮想マシンを少なくとも一つ有し、
    各々の前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換部は、
    前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、いずれかの前記通信サービスを実行するいずれかの前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む変換情報を保持し、
    前記転送部によって取込まれた第1のイーサフレームが入力された場合、前記第1のイーサフレームの第1の識別子と前記変換情報とに基づいて、前記第2の識別子を含む第2のイーサフレームに、前記第1のイーサフレームを変換し、
    前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力し、
    前記情報処理部は、いずれかの前記仮想マシンがいずれかの前記通信サービスが実行されたイーサフレームを出力する場合、前記通信サービスを実行した前記仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに、前記通信サービスが実行されたイーサフレームを変換し、
    前記タグ変換部は、前記第3のイーサフレームが入力され、かつ、前記変換情報が、前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、前記通信サービスを実行する仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む場合、前記第3の識別子と前記変換情報とに基づいて、前記第1の識別子を含む第1のイーサフレームに、前記第3のイーサフレームを変換し、
    前記転送部は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記第1のイーサフレームを送信することを特徴とする通信装置。
  2. 請求項1に記載の通信装置であって、
    前記変換情報は、第4の識別子が示す第1の前記仮想マシンの前記第2の入出力ポートの次に、前記第3の識別子により前記第2の入出力ポートを示し前記イーサフレームに対して通信サービスを実行する第2の前記仮想マシンの前記第1の入出力ポートを示す第5の識別子を含み、
    前記情報処理部は、前記第1の仮想マシンから前記通信サービスが実行されたイーサフレームを出力する場合、前記通信サービスを実行した前記第1の仮想マシンの前記第2の入出力ポートを示す前記第4の識別子を含む第4のイーサフレームに、前記通信サービスが実行されたイーサフレームを変換し、
    前記タグ変換部は、
    前記第4の識別子を含む前記第4のイーサフレームを入力された場合、前記第4の識別子と前記変換情報とに基づいて、前記第5の識別子を含む第5のイーサフレームに、前記第4のイーサフレームを変換し、
    前記第5の識別子が示す前記第2の仮想マシンの前記第1の入出力ポートに向けて、前記第5のイーサフレームを出力し、
    前記情報処理部は、前記第2の仮想マシンから前記通信サービスが実行されたイーサフレームを出力する場合、前記通信サービスを実行した前記第2の仮想マシンの前記第2の入出力ポートを示す前記第3の識別子を含む前記第3のイーサフレームに、前記通信サービスが実行されたイーサフレームを変換することを特徴とする通信装置。
  3. 請求項1に記載の通信装置であって、
    前記情報処理部は、前記第3の識別子が示す第1の仮想マシンの前記第2の入出力ポートと、前記第1の仮想マシンの次に前記イーサフレームに対して前記通信サービスを実行する第2の仮想マシンの前記第1の入出力ポートと、を接続する仮想スイッチを有し、
    前記仮想スイッチは、前記第1の仮想マシンの前記第2の入出力ポートから出力されるイーサフレームを、前記第2の仮想マシンの前記第1の入出力ポートに入力することを特徴とする通信装置。
  4. 請求項1に記載の通信装置であって、
    前記タグ変換部は、
    前記第1のイーサフレームが入力され、かつ、前記変換情報が、複数の前記第2の識別子を含む場合、前記第1のイーサフレームを複数の前記第1のイーサフレームに複製し、
    前記複製された各第1のイーサフレームを、前記各第2の識別子を含む複数の第2のイーサフレームに変換し、
    前記各第2の識別子が示す第1の入出力ポートに向けて、前記各第2のイーサフレームを出力することを特徴とする通信装置。
  5. 請求項1に記載の通信装置であって、
    前記情報処理部は、前記通信サービスを実行後、前記イーサフレームを出力する必要がある第1の仮想マシンと、前記通信サービスを実行後、前記イーサフレームを転送する必要がない第2の仮想マシンと、を有し、
    前記第1の仮想マシンは、前記第1の入出力ポートと前記第2の入出力ポートとを有し、
    前記第2の仮想マシンは、前記第1の入出力ポートを有するが、前記第2の入出力ポートを有しないことを特徴とする通信装置。
  6. 請求項1に記載の通信装置であって、
    複数の前記サーバと複数の前記クライアントとを含むグループに、少なくとも一つの第1の仮想ネットワークが割り当てられ、
    前記グループに含まれる前記サーバ及び前記クライアントのうち、少なくとも一つの前記サーバと少なくとも一つの前記クライアントに、少なくとも一つの第2の仮想ネットワークが割り当てられ、
    前記第1の識別子は、前記各第1の仮想ネットワークを識別するための識別子と前記各第2の仮想ネットワークを識別するための識別子とを含み、
    前記タグ変換部は、前記イーサフレームに含まれる前記第1の仮想ネットワークを識別するための識別子と前記第2の仮想ネットワークを識別するための識別子とを取得することによって、前記イーサフレームから前記第1の識別子を取得することを特徴とする通信装置。
  7. 請求項1に記載の通信装置であって、
    前記第1の識別子は、前記イーサフレームの少なくとも一つの所定のヘッダ領域に含まれる値であり、
    前記タグ変換部は、前記イーサフレームの前記各所定の領域を参照することによって、前記第1の識別子を取得することを特徴とする通信装置。
  8. 請求項1に記載の通信装置であって、
    前記通信装置は、前記変換情報を生成するための制御部を、さらに有し、
    前記制御部は、
    前記変換情報に保持される識別子の候補を、前記第1の識別子の数と同数含む資源管理情報を保持し、
    前記資源管理情報に基づいて、前記第1の識別子に前記第2の識別子を割り当て、
    前記割り当てられた第2の識別子を含む前記変換情報を生成することを特徴とする通信装置。
  9. 請求項8に記載の通信装置であって、
    前記資源管理情報は、前記情報処理部が有するプロセッサの数、及び、前記情報処理部が有するメモリの容量を含み、
    前記制御部は、
    前記イーサフレームに実行される前記各通信サービスを示す情報を、前記仮想ネットワーク毎に含むサービス情報を保持し、
    前記通信サービスの追加要求を入力された場合、
    前記資源管理情報と前記追加要求とに基づいて、前記追加要求された通信サービスを実行するための前記仮想マシンに、前記プロセッサ及び前記メモリを確保できるか否かを判定し、
    前記判定の結果、前記プロセッサ及びメモリを確保できる場合、前記確保された前記プロセッサ及び前記メモリに基づいて、前記情報処理部に前記追加要求された通信サービスを実行するための仮想マシンを設定し、
    前記追加要求に従って、前記サービス情報及び前記資源管理情報を更新し、
    前記通信サービスの削除要求を入力された場合、
    前記削除要求に従って、前記サービス情報及び前記資源管理情報を更新し、
    前記削除要求された通信サービスを実行する前記仮想マシンから、前記プロセッサ及びメモリを開放することを特徴とする通信装置。
  10. 請求項1に記載の通信装置であって、
    前記タグ変換部は、
    前記第1のイーサフレームに含まれる前記第1の識別子の、前記第1のイーサフレームの先頭方向に隣接して前記第2の識別子を挿入することによって、前記第1のイーサフレームを、前記第2のイーサフレームに変換し、
    前記第3のイーサフレームに含まれる前記第3の識別子を削除することによって、前記第3のイーサフレームを前記第1のイーサフレームに変換することを特徴とする通信装置。
  11. 請求項1に記載の通信装置であって、
    前記第1の識別子は、前記イーサフレームに含まれる二重VLANタグのうち、前記イーサフレームの先頭方向に付加されたVLANタグに含まれる識別子であることを特徴とする通信装置。
  12. 請求項1に記載の通信装置であって、
    前記第1の識別子は、前記イーサフレームに含まれるMACinMACのヘッダのうち、前記イーサフレームの先頭方向に付加されたタグに含まれる識別子であることを特徴とする通信装置。
  13. 請求項1に記載の通信装置であって、
    前記第1の識別子は、前記イーサフレームに含まれるVXLANに含まれる識別子であることを特徴とする通信装置。
  14. 物理ネットワークを介してイーサフレームを互いに送受信するサーバ及びクライアントと、サーバ及びクライアントの通信経路上に設置される通信装置と、を備える通信システムであって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記通信システムは、
    前記イーサフレームに対して、少なくとも一つの通信サービスを実行する情報処理部と、
    前記サーバ及びクライアント間で送受信される前記イーサフレームを取込み、前記取込まれたイーサフレームの宛先である前記サーバ又は前記クライアントに向けて前記取込まれたイーサフレームを送信する転送部と、
    前記イーサフレームを変換するタグ変換部と、を有し、
    前記情報処理部は、
    前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記イーサフレームに対して各々の前記通信サービスを実行する仮想マシンを少なくとも一つ、メモリに有し、
    各々の前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換部は、
    前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに、いずれかの前記通信サービスを実行するいずれかの前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む変換情報を保持し、
    前記転送部によって取込まれた第1のイーサフレームが入力された場合、前記第1のイーサフレームの第1の識別子と前記変換情報とに基づいて、前記第2の識別子を含む第2のイーサフレームに、前記第1のイーサフレームを変換し、
    前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力し、
    前記情報処理部は、いずれかの前記仮想マシンがいずれかの前記通信サービスが実行されたイーサフレームを出力する場合、前記通信サービスを実行した前記仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに、前記通信サービスが実行されたイーサフレームを変換し、
    前記タグ変換部は、前記第3のイーサフレームが入力され、かつ、前記変換情報が、前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、前記通信サービスを実行する仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む場合、前記第3の識別子と前記変換情報とに基づいて、前記第1の識別子を含む第1のイーサフレームに、前記第3のイーサフレームを変換し、
    前記転送部は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記第1のイーサフレームを送信することを特徴とする通信システム。
  15. 物理ネットワークを介してイーサフレームを互いに送受信するサーバとクライアントとの通信経路上に設置される通信装置による通信方法であって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記通信装置は、プロセッサ及びメモリを備え、
    前記方法は、
    前記プロセッサが、前記イーサフレームに対して、少なくとも一つの通信サービスを実行する情報処理手順と、
    前記プロセッサが、前記サーバ及びクライアント間で送受信される前記イーサフレームを取込み、前記取込まれたイーサフレームの宛先である前記サーバ又は前記クライアントに向けて前記取込まれたイーサフレームを送信する転送手順と、
    前記プロセッサが、前記イーサフレームを変換するタグ変換手順と、を含み、
    前記情報処理手順は、前記プロセッサが、前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記メモリに保持される仮想マシンによって、前記イーサフレームに対して各々の前記通信サービスを実行する手順を含み、
    前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換手順は、
    前記プロセッサが、前記メモリに保持される変換情報に基づいて、前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、いずれかの前記通信サービスを実行するいずれかの前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を取得する手順と、
    前記プロセッサが、前記転送手順によって取込まれた第1のイーサフレームが入力された場合、前記第1のイーサフレームの第1の識別子と前記変換情報とに基づいて、前記第2の識別子を含む第2のイーサフレームに、前記第1のイーサフレームを変換する手順と、
    前記プロセッサが、前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力する手順と、を含み、
    前記情報処理手順は、前記プロセッサが、いずれかの前記仮想マシンがいずれかの前記通信サービスが実行されたイーサフレームを出力する場合、前記通信サービスを実行した前記仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに、前記通信サービスが実行されたイーサフレームを変換する手順を含み、
    前記タグ変換手順は、前記第3のイーサフレームが入力され、かつ、前記変換情報が、前記第1の識別子が示す仮想ネットワークにおいて送受信される前記イーサフレームに対して、前記通信サービスを実行する仮想マシンの前記第2の入出力ポートを示す第3の識別子を含む場合、前記プロセッサが、前記第3の識別子と前記変換情報とに基づいて、前記第1の識別子を含む第1のイーサフレームに、前記第3のイーサフレームを変換する手順を含み、
    前記転送手順は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記第1のイーサフレームを送信する手順を含むことを特徴とする通信方法。
  16. 物理ネットワークを介してイーサフレームを互いに送受信するサーバとクライアントとの通信経路上に設置される通信装置であって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記通信装置は、
    前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記イーサフレームに対して通信サービスを実行する仮想マシンを有する情報処理部と、
    前記サーバ及びクライアントに対して前記イーサフレームを送受信する転送部と、
    前記イーサフレームを変換するタグ変換部と、を有し、
    前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換部は、
    前記第1の識別子を含み前記サーバ又は前記クライアントを宛先とする第1のイーサフレームが入力された場合、前記第1のイーサフレームを、前記第1のイーサフレームに対して通信サービスを実行する前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む第2のイーサフレームに変換し、
    前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力し、
    前記情報処理部は、前記仮想マシンによって前記通信サービスが実行されたイーサフレームを、前記通信サービスを実行した前記仮想マシンの第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに変換し、
    前記タグ変換部は、前記第3の識別子を含む前記第3のイーサフレームを前記第1の識別子を含む第1のイーサフレームに変換し、
    前記転送部は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記通信サービスが実行された前記第1のイーサフレームを送信することを特徴とする通信装置。
  17. 物理ネットワークを介してイーサフレームを互いに送受信するサーバ及びクライアントと、サーバ及びクライアントの通信経路上に設置される通信装置と、を備える通信システムであって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記通信システムは、
    前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記イーサフレームに対して通信サービスを実行する仮想マシンを有する情報処理部と、
    前記サーバ及びクライアントに対して前記イーサフレームを送受信する転送部と、
    前記イーサフレームを変換するタグ変換部と、を有し、
    前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換部は、
    前記第1の識別子を含み前記サーバ又は前記クライアントを宛先とする第1のイーサフレームが入力された場合、前記第1のイーサフレームを、前記第1のイーサフレームに対して通信サービスを実行する前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む第2のイーサフレームに変換し、
    前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力し、
    前記情報処理部は、前記仮想マシンによって前記通信サービスが実行されたイーサフレームを、前記通信サービスを実行した前記仮想マシンの第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに変換し、
    前記タグ変換部は、前記第3の識別子を含む前記第3のイーサフレームを前記第1の識別子を含む第1のイーサフレームに変換し、
    前記転送部は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記通信サービスが実行された前記第1のイーサフレームを送信することを特徴とする通信システム。
  18. 物理ネットワークを介してイーサフレームを互いに送受信するサーバとクライアントとの通信経路上に設置される通信装置による通信方法であって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記通信装置は、プロセッサ及びメモリを備え、
    前記方法は、
    前記プロセッサが、前記イーサフレームが送受信される前記仮想ネットワーク毎に、前記メモリに保持される仮想マシンによって、前記イーサフレームに対して通信サービスを実行する情報処理手順と、
    前記プロセッサが、前記サーバ及びクライアントに対して前記イーサフレームを送受信する転送手順と、
    前記プロセッサが、前記イーサフレームを変換するタグ変換手順と、を含み、
    前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換手順は、
    前記プロセッサが、前記第1の識別子を含み前記サーバ又は前記クライアントを宛先とする第1のイーサフレームが入力された場合、前記第1のイーサフレームを、前記第1のイーサフレームに対して通信サービスを実行する前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む第2のイーサフレームに変換する手順と、
    前記プロセッサが、前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力する手順と、を含み、
    前記情報処理手順は、前記プロセッサが、前記仮想マシンによって前記通信サービスが実行されたイーサフレームを、前記通信サービスを実行した前記仮想マシンの第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに変換する手順を含み、
    前記タグ変換手順は、前記プロセッサが、前記第3の識別子を含む前記第3のイーサフレームを前記第1の識別子を含む第1のイーサフレームに変換する手順を含み、
    前記転送手順は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記通信サービスが実行された前記第1のイーサフレームを送信する手順を含むことを特徴とする通信方法。
  19. 物理ネットワークを介してイーサフレームを互いに送受信するサーバとクライアントとの通信経路上に設置される通信装置において実行されるプログラムであって、
    前記サーバとクライアントとには、少なくとも一つの仮想ネットワークが割り当てられ、
    前記イーサフレームは、前記各仮想ネットワークを識別するための第1の識別子を含み、
    前記プログラムは、前記通信装置に、
    前記イーサフレームが送受信される前記仮想ネットワーク毎に、メモリに保持される仮想マシンによって、前記イーサフレームに対して通信サービスを実行する情報処理手順と、
    前記サーバ及びクライアントに対して前記イーサフレームを送受信する転送手順と、
    前記イーサフレームを変換するタグ変換手順と、を実行させ、
    前記仮想マシンは、第1の入出力ポートと第2の入出力ポートとを有し、
    前記タグ変換手順は、
    前記第1の識別子を含み前記サーバ又は前記クライアントを宛先とする第1のイーサフレームが入力された場合、前記第1のイーサフレームを、前記第1のイーサフレームに対して通信サービスを実行する前記仮想マシンの前記第1の入出力ポートを示す第2の識別子を含む第2のイーサフレームに変換する手順と、
    前記第2の識別子が示す前記第1の入出力ポートに向けて、前記第2のイーサフレームを出力する手順と、を含み、
    前記情報処理手順は、前記仮想マシンによって前記通信サービスが実行されたイーサフレームを、前記通信サービスを実行した前記仮想マシンの第2の入出力ポートを示す第3の識別子を含む第3のイーサフレームに変換する手順を含み、
    前記タグ変換手順は、前記第3の識別子を含む前記第3のイーサフレームを前記第1の識別子を含む第1のイーサフレームに変換する手順を含み、
    前記転送手順は、前記第1のイーサフレームの宛先である前記サーバ又は前記クライアントに向けて、前記通信サービスが実行された前記第1のイーサフレームを送信する手順を含むことを特徴とするプログラム。
JP2012151442A 2012-07-05 2012-07-05 通信装置、通信システム、通信方法、及び、プログラム Expired - Fee Related JP5881064B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2012151442A JP5881064B2 (ja) 2012-07-05 2012-07-05 通信装置、通信システム、通信方法、及び、プログラム
PCT/JP2013/054113 WO2014006926A1 (ja) 2012-07-05 2013-02-20 通信装置、通信システム、及び、通信方法
US14/412,500 US9407459B2 (en) 2012-07-05 2013-02-20 Communication apparatus, communication system, and communication method to transmit and receive Ethernet frames

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012151442A JP5881064B2 (ja) 2012-07-05 2012-07-05 通信装置、通信システム、通信方法、及び、プログラム

Publications (3)

Publication Number Publication Date
JP2014014051A JP2014014051A (ja) 2014-01-23
JP2014014051A5 JP2014014051A5 (ja) 2015-04-09
JP5881064B2 true JP5881064B2 (ja) 2016-03-09

Family

ID=49881693

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012151442A Expired - Fee Related JP5881064B2 (ja) 2012-07-05 2012-07-05 通信装置、通信システム、通信方法、及び、プログラム

Country Status (3)

Country Link
US (1) US9407459B2 (ja)
JP (1) JP5881064B2 (ja)
WO (1) WO2014006926A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103780496B (zh) * 2012-10-17 2017-07-14 新华三技术有限公司 应用于星型堆叠系统中的报文转发方法和设备
TWI536775B (zh) * 2013-06-04 2016-06-01 鈺登科技股份有限公司 網路系統、伺服器、交換器以及網路系統的運作方法
TW201624277A (zh) 2014-12-31 2016-07-01 萬國商業機器公司 協助虛擬機器即時遷移的方法
JP6626202B2 (ja) * 2015-12-04 2019-12-25 エヌイーシー ラボラトリーズ ヨーロッパ ゲーエムベーハー クライアント装置とオペレーターのネットワークの1つ又は複数の装置との間のデータトラフィックを確立する方法
JP6574144B2 (ja) * 2016-03-02 2019-09-11 APRESIA Systems株式会社 中継装置および中継システム
US10277420B2 (en) 2017-08-28 2019-04-30 Michael Emory Mazarick System and method for providing private instances of shared resources using VxLAN
US10666461B2 (en) * 2018-06-07 2020-05-26 Adva Optical Networking Se VLAN reflection
JP7147455B2 (ja) * 2018-10-17 2022-10-05 住友電気工業株式会社 通信装置及び通信装置の設定方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8194656B2 (en) * 2005-04-28 2012-06-05 Cisco Technology, Inc. Metro ethernet network with scaled broadcast and service instance domains
US8868675B2 (en) 2008-12-04 2014-10-21 Cisco Technology, Inc. Network optimization using distributed virtual resources
US8224946B2 (en) * 2009-04-24 2012-07-17 Rockstar Bidco, LP Method and apparatus for accommodating duplicate MAC addresses
US8098656B2 (en) * 2009-06-26 2012-01-17 Avaya, Inc. Method and apparatus for implementing L2 VPNs on an IP network
CN104065555B (zh) * 2009-09-24 2018-09-18 日本电气株式会社 虚拟服务器间通信识别系统和虚拟服务器间通信识别方法
US8369333B2 (en) * 2009-10-21 2013-02-05 Alcatel Lucent Method and apparatus for transparent cloud computing with a virtualized network infrastructure
JP5505707B2 (ja) 2010-03-30 2014-05-28 日本電気株式会社 ネットワークシステム及びその運用方法
US8645509B2 (en) * 2010-10-12 2014-02-04 Guest Tek Interactive Entertainment Ltd. System and server for assigning location-dependent hostname to client device over network and method thereof
WO2013171588A1 (en) * 2012-05-15 2013-11-21 Marvell World Trade Ltd. Extended priority for ethernet packets

Also Published As

Publication number Publication date
WO2014006926A1 (ja) 2014-01-09
JP2014014051A (ja) 2014-01-23
US9407459B2 (en) 2016-08-02
US20150195104A1 (en) 2015-07-09

Similar Documents

Publication Publication Date Title
JP5881064B2 (ja) 通信装置、通信システム、通信方法、及び、プログラム
US11792126B2 (en) Configuring service load balancers with specified backend virtual networks
US11171830B2 (en) Multiple networks for virtual execution elements
CN110875844B (zh) 用于虚拟执行元件的多虚拟网络接口支持
US11463279B2 (en) Method and apparatus for implementing a flexible virtual local area network
US10708082B1 (en) Unified control plane for nested clusters in a virtualized computing infrastructure
US11171834B1 (en) Distributed virtualized computing infrastructure management
US9535730B2 (en) Communication apparatus and configuration method
US9178828B2 (en) Architecture for agentless service insertion
US8670450B2 (en) Efficient software-based private VLAN solution for distributed virtual switches
US8892706B1 (en) Private ethernet overlay networks over a shared ethernet in a virtual environment
WO2018137369A1 (zh) 混合云管理方法、装置和计算设备
US9311133B1 (en) Touchless multi-domain VLAN based orchestration in a network environment
EP2681878B1 (en) Technique for managing an allocation of a vlan
WO2015149253A1 (zh) 数据中心的虚拟网络管理方法及数据中心系统
US9755854B2 (en) Tag conversion apparatus
JP6211975B2 (ja) ネットワーク延伸システム、制御装置、およびネットワーク延伸方法
US9559937B2 (en) Apparatus and method for relaying communication between nodes coupled through relay devices
CN115208825A (zh) 单个计算节点上的多个智能网络接口卡

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141105

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151006

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151127

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160125

R150 Certificate of patent or registration of utility model

Ref document number: 5881064

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees