JP2014168286A - ネットワークシステム、及び経路制御方法 - Google Patents

ネットワークシステム、及び経路制御方法 Download PDF

Info

Publication number
JP2014168286A
JP2014168286A JP2014092791A JP2014092791A JP2014168286A JP 2014168286 A JP2014168286 A JP 2014168286A JP 2014092791 A JP2014092791 A JP 2014092791A JP 2014092791 A JP2014092791 A JP 2014092791A JP 2014168286 A JP2014168286 A JP 2014168286A
Authority
JP
Japan
Prior art keywords
switch
terminal
packet
entry
controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014092791A
Other languages
English (en)
Other versions
JP5594552B2 (ja
Inventor
Masanori Takashima
正徳 高島
Tomohiro Kase
知博 加瀬
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2014092791A priority Critical patent/JP5594552B2/ja
Publication of JP2014168286A publication Critical patent/JP2014168286A/ja
Application granted granted Critical
Publication of JP5594552B2 publication Critical patent/JP5594552B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • 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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/72Routing based on the source address
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows

Landscapes

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

Abstract

【課題】オープンフローネットワークにおいて、「Proactive型」を実現し、ハードウェア(HW)の性能の問題を解決する。
【解決手段】オープンフローネットワークにおいて、複数のスイッチの各々は、自身のフローテーブルに登録されたエントリのルールに適合する受信パケットに対し、エントリに定義されたアクションに従った動作を行う。コントローラは、複数のスイッチによって形成されるネットワークの物理トポロジに応じて計算された経路に固有の識別子をルールとし、所定の出力ポートからの出力をアクションとしたエントリを、複数のスイッチ間において通信が開始される前に(事前に)、各スイッチに登録する。
【選択図】図1

Description

本発明は、ネットワークシステムに関し、特にネットワークシステムの経路制御方法に関する。
外部のコントローラ(コントロールプレーン)からスイッチや端末等(ユーザプレーン)を制御する方式をCU(C:コントロールプレーン/U:ユーザプレーン)分離型アーキテクチャと呼ぶ。このようなCU分離型アーキテクチャに基づく構成のネットワークをCU分離型ネットワークと呼ぶ。
CU分離型ネットワークの一例として、コントローラからスイッチを制御してネットワークの経路制御を行うオープンフロー(OpenFlow)技術を利用したオープンフローネットワークが挙げられる。なお、オープンフローネットワークは一例に過ぎない。
[オープンフローネットワークの説明]
オープンフローネットワークでは、OFC(OpenFlow Controller)等のコントローラが、OFS(OpenFlow Switch)等のスイッチのフローテーブルを操作することによりスイッチの挙動を制御する。
フローテーブルとは、所定のマッチ条件(ルール)に適合するパケット(通信データ)に対して行うべき所定の処理内容(アクション)を定義したエントリ(entry)が登録されたテーブルである。パケットは、フレームと読み替えても良い。ルールに適合するパケット群(パケット系列)をフロー(Flow)と呼ぶ。
フローのルールは、パケットの各プロトコル階層のヘッダ領域(フィールド)に含まれる宛先アドレス(DA:Destination Address)、送信元アドレス(SA:Source Address)、宛先ポート(DP:Destination Port)、送信元ポート(SP:Source Port)のいずれか又は全てを用いた様々な組み合わせにより定義され、区別可能である。なお、上記のアドレスには、MACアドレス(Media Access Control Address)やIPアドレス(Internet Protocol Address)を含むものとする。また、上記に加えて、入口ポート(Ingress Port)の情報も、フローのルールとして使用可能である。
フローのアクションは、通常、所定の転送先へのパケット転送である。無論、フローのアクションとして、パケット破棄を指定することも可能である。
オープンフローネットワークでは、通常、スイッチは、該当するエントリがないパケットを受信した場合、コントローラに対して、当該パケットについての問い合わせ(エントリ要求)を送信する。通常、スイッチは、当該パケットについての問い合わせとして、当該パケットをコントローラに転送する。
オープンフローネットワークでは、通常、コントローラは、セキュアチャネル(Secure Channel)接続で、管理下にあるスイッチと接続されている。コントローラは、管理下にあるスイッチからパケットについての問い合わせを受けた場合、当該パケット群(フロー)の経路(パス)を計算し、この経路に基づき、当該スイッチのフローテーブルに、「当該パケット群(フロー)を所定の転送先へ転送する」という旨のエントリを登録する。このとき、コントローラは、当該エントリをフローテーブルに登録するための制御メッセージを、スイッチに対して送信する。
オープンフロー技術の詳細については、非特許文献1、2に記載されている。
"TheOpenFlowSwitchConsortium"<http://www.openflowswitch.org/> "OpenFlowSwitchSpecificationVersion1.0.0(WireProtocol0x01)December31,2009"<http://www.openflowswitch.org/documents/openflow−spec−v1.0.0.pdf>
オープンフロー技術において、スイッチのフローテーブルにエントリを登録する方式は、大きく「Proactive型」と、「Reactive型」の2つの方式に分けられる。
「Proactive型」では、コントローラが「事前に」(データ通信が始まる前に)所定のパケット群(フロー)の経路(パス)を計算し、スイッチのフローテーブルにエントリを登録する。すなわち、ここでいう「Proactive型」とは、コントローラが自発的に行う「事前のエントリ登録」を指す。
「Reactive型」では、コントローラが「スイッチから1stパケット(該当エントリがない新規のパケット)についての問い合わせを受けた際に」当該パケット群(フロー)の経路を計算し、スイッチのフローテーブルにエントリを登録する。すなわち、ここでいう「Reactive型」とは、実際のデータ通信時に、コントローラがスイッチからの問い合わせに応じて行う「リアルタイムのエントリ登録」を指す。
オープンフローネットワークでは、基本的に、コントローラがスイッチから1stパケットについての問い合わせを受けた際に当該受信パケットに関するエントリを登録する「Reactive型」が中心となっている。
しかし、実際のハードウェア(HW)では、フローテーブルの処理頻度を軽減し性能の問題を解決するためには、「Proactive型」が好適であると考えられる。例えば、大量の1stパケットがコントローラに到着しても処理し切れるようにするためには、Proactive型の方が好適であると考えられる。但し、実際には、完全なProactive型にするとエントリ数が膨大になると考えられるため、一部をReactive型にすることにより、エントリ数の制約から逃れるといったことも考えられる。
また、「Proactive型」を用いれば、通信開始前にフローを定義できるため、Nimda等のウィルスによる大量フロー発生問題や、不明なパケットによる不正アクセス等が回避可能になると考えられる。
従って、オープンフローネットワークにおいて、「Proactive型」を実現するための具体的な方式が求められる。
本発明に係るネットワークシステムは、複数のスイッチと、コントローラとを含む。複数のスイッチの各々は、自身のフローテーブルに登録されたエントリのルールに適合する受信パケットに対し、エントリに定義されたアクションに従った動作を行う。コントローラは、複数のスイッチによって形成されるネットワークの物理トポロジに応じて計算された経路に固有の識別子をルールとし、所定の出力ポートからの出力をアクションとしたエントリを、複数のスイッチ間において通信が開始される前に、各スイッチに登録する。
本発明に係る経路制御方法では、複数のスイッチの各々において、自身のフローテーブルに登録されたエントリのルールに適合する受信パケットに対し、エントリに定義されたアクションに従った動作を行う。また、コントローラにおいて、複数のスイッチによって形成されるネットワークの物理トポロジに応じて計算された経路に固有の識別子をルールとし、所定の出力ポートからの出力をアクションとしたエントリを、複数のスイッチ間において通信が開始される前に、各スイッチに登録する。
本発明に係るプログラムは、上記の経路制御方法におけるコントローラの動作を、計算機に実行させるためのプログラムである。なお、本発明に係るプログラムは、記憶装置や記憶媒体に格納することが可能である。
これにより、オープンフローネットワークにおいて、「Proactive型」を実現し、ハードウェア(HW)の性能の問題を解決することができる。
本発明に係るネットワークシステムの構成例を示す図である。 トポロジ検知の際の処理を説明するための図である。 ステーション検知(ARPリクエスト(要求)利用)の際の処理を説明するための図である。 ステーション検知(ARPリプライ(応答)利用)の際の処理を説明するための図である。 エントリ登録完了後のデータ通信の際の処理を説明するための図である。 コントローラへのパケットの問い合わせの際の処理を説明するための図である。
本発明は、CU分離型ネットワークを対象としている。ここでは、CU分離型ネットワークの1つであるオープンフローネットワークを例に説明する。但し、実際には、オープンフローネットワークに限定されない。
<第1実施形態>
以下に、本発明の第1実施形態について添付図面を参照して説明する。
[基本構成]
図1に示すように、本発明に係るネットワークシステムは、スイッチ10(10−i、i=1〜n:nはスイッチ台数)と、コントローラ20を含む。
スイッチ10(10−i、i=1〜n)、及びコントローラ20は、オープンフローネットワークを形成する。スイッチ10(10−i、i=1〜n)は、オープンフローネットワークにおけるノード(node)である。
[スイッチ]
スイッチ10(10−i、i=1〜n)は、内部にフローテーブルを持ち、コントローラ20からフローテーブルに登録されたエントリに従って、パケットを転送する。
[コントローラ]
コントローラ20は、トポロジ(topology:ネットワークの接続形態)検知を行い、ネットワークを構成するスイッチ10(10−i、i=1〜n)を検知し、フロー毎の経路(パス)を計算する。これにより、コントローラ20は、ネットワークを構成する全てのスイッチの識別情報(スイッチID、MACアドレス等)、及び各スイッチの接続形態を認識し、各スイッチの次段のスイッチを特定する。
ここでは、コントローラ20は、通信が開始される前に、各スイッチのスイッチID(64ビット)と独自に定義したノードID(16ビット)とを1対1で対応付ける。但し、ビット数は一例に過ぎない。すなわち、コントローラ20は、各スイッチにノードIDを割り当てる。また、コントローラ20は、端末接続可能なエッジスイッチ間の経路を計算し、当該経路上の中継用スイッチであるコアスイッチ(Core)の各々のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に所定のノードIDが記載されていれば、当該受信パケットを(所定の出力ポートから)次段のスイッチに転送する」という旨のCoreエントリ(中継用エントリ)を登録する。すなわち、コアスイッチは、受信パケットの宛先情報の領域に記載されたノードIDをマッチ条件(ルール)として、転送の可否を判断する。無論、コントローラ20は、ノードIDに加えて、受信パケットの宛先情報の領域に記載された他の情報もマッチ条件(ルール)として指定するようにしても良い。
なお、実際には、コントローラ20は、コアスイッチ(Core)の各々のフローテーブルに、「(ノードIDに関わらず、)当該受信パケットを(所定の出力ポートから)次段のスイッチに転送する」という旨のCoreエントリを登録することも可能である。この場合、コアスイッチ(Core)は、無条件で、受信パケットを次段のスイッチに転送する。
また、コントローラ20は、ステーション検知(端末検知)を行い、端末30(30−j、j=1〜m:mは端末台数)を検知し、端末の宛先情報(MACアドレス等)、及び接続形態を認識し、端末とユーザIDとを1対1で対応付ける。すなわち、コントローラ20は、各端末にユーザIDを割り当てる。このとき、コントローラ20は、端末30(30−j、j=1〜m)が接続されたエッジスイッチも検知する。
また、コントローラ20は、通信が開始される前に、エッジスイッチのフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に、当該エッジスイッチのノードIDと、配下の端末のユーザIDが記載されていれば、当該受信パケットの宛先情報を当該端末宛に戻し、当該受信パケットを当該端末に転送する」という旨のEgressエントリ(出力用エントリ)を登録する。
ここで、配下の端末のユーザIDをマッチ条件(ルール)としたのは、配下の端末が複数存在する場合もあるからである。また、エッジスイッチのノードIDと端末のユーザIDとの組み合わせをマッチ条件(ルール)としているため、エッジスイッチ間で重複したユーザIDを使用することが可能になる。但し、同一のエッジスイッチの配下の端末の各々に対しては、重複したユーザIDを使用することはできない。
また、コントローラ20は、入力側エッジスイッチ(Ingress)のフローテーブルに、「所定のパケットを受信した際、宛先情報を検索のキーとして使用し、受信パケットの宛先情報の領域の少なくとも一部に、出力側エッジスイッチ(Egress)のノードIDと、宛先となる端末のユーザIDとを記載して次段のスイッチに転送する」という旨のIngressエントリ(入力用エントリ)を登録する。ここで、上記の「所定のパケット」は、「所定のマッチ条件(ルール)に適合するパケット」と読み替えても良い。本発明では、入力側エッジスイッチ(Ingress)が最初にフローを特定するため、Ingressエントリには、通常のオープンフローと同様のパケットマッチングルールと、適合したパケットに対する上記のアクションが定義されることになる。
[Ingressエントリ登録のタイミング]
なお、コントローラ20が入力側エッジスイッチのフローテーブルにエントリを登録するタイミングとしては、「通信が開始される前」(事前登録)と、「実際の通信時」(リアルタイム登録)の2つが考えられる。
「通信が開始される前」(事前登録)の場合、コントローラ20は、通信が開始される前に、予め所定のパケットの転送先となる端末(宛先候補端末)を決定する。そして、コントローラ20は、通信が開始される前に、入力側エッジスイッチとなり得るエッジスイッチのフローテーブルに、「所定のパケットを受信した際、宛先情報を検索のキーとして使用し、受信パケットの宛先情報の領域の少なくとも一部に、当該宛先候補端末が接続されたエッジスイッチのノードIDと、当該宛先候補端末のユーザIDとを記載して次段のスイッチに転送する」という旨のIngressエントリを登録する。本実施形態では、この事例について説明する。
「実際の通信時」(リアルタイム登録)の場合、コントローラ20は、送信元の端末からパケットを受信した入力側エッジスイッチから当該受信パケットについての問い合わせを受け取ると、当該受信パケット群(フロー)の経路を計算し、この経路に基づき、当該入力側エッジスイッチのフローテーブルに、「所定のパケットを受信した際、宛先情報を検索のキーとして使用し、受信パケットの宛先情報の領域の少なくとも一部に、当該宛先候補端末が接続されたエッジスイッチのノードIDと、当該宛先候補端末のユーザIDとを記載して次段のスイッチに転送する」という旨のIngressエントリを登録する。この事例については、第2実施形態にて説明する。
[経路の指定]
更に、各スイッチの次段のスイッチが複数存在する場合(経路が複数の場合)、コントローラ20は、経路毎に冗長IDを定義する。次段のスイッチの各々はそれぞれの経路上に存在するため、次段のスイッチの各々と冗長IDとが対応付けられる。コントローラ20は、コアスイッチ(Core)のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に(所定のノードIDと)冗長IDが記載されていれば、当該受信パケットを当該冗長IDに対応する次段のスイッチに転送する」という旨のCoreエントリを登録する。また、コントローラ20は、入力側エッジスイッチのフローテーブルに、「所定のパケットを受信した際、宛先情報を検索のキーとして使用し、受信パケットの宛先情報の領域の少なくとも一部に、出力側エッジスイッチのノードIDと、冗長IDと、宛先となる端末のユーザIDとを記載して次段のスイッチに転送する」という旨のIngressエントリを登録する。冗長IDは、出力側エッジスイッチのノードIDの一部でも良い。例えば、ノードIDの領域の先頭又は末尾の数ビット(bit)を、冗長IDの領域として使用しても良い。
[ハードウェアの例示]
スイッチ10(10−i、i=1〜n)の例として、ネットワークスイッチ(network switch)、ルータ(router)、プロキシ(proxy)、ゲートウェイ(gateway)、ファイアウォール(firewall)、ロードバランサ(load balancer:負荷分散装置)、帯域制御装置(packet shaper)、セキュリティ監視制御装置(SCADA:Supervisory Control And Data Acquisition)、ゲートキーパー(gatekeeper)、基地局(base station)、アクセスポイント(AP:Access Point)、通信衛星(CS:Communication Satellite)、或いは、複数の通信ポートを有する計算機等が考えられる。また、スイッチ10(10−i、i=1〜n)は、物理マシン上に構築された仮想スイッチでも良い。
コントローラ20及び端末30(30−j、j=1〜m)の各々の例として、PC(パソコン)、アプライアンス(appliance)、シンクライアント端末/サーバ、ワークステーション、メインフレーム、スーパーコンピュータ等の計算機を想定している。また、コントローラ20及び端末30(30−j、j=1〜m)は、物理マシン上に構築された仮想マシン(VM)でも良い。
なお、端末30(30−j、j=1〜m)の各々は、携帯電話機、スマートフォン、スマートブック、カーナビ(カーナビゲーションシステム)、携帯型ゲーム機、家庭用ゲーム機、携帯型音楽プレーヤー、ハンディターミナル、ガジェット(電子機器)、双方向テレビ、デジタルチューナー、デジタルレコーダー、情報家電(information home appliance)、OA(Office Automation)機器等でも良い。また、端末30(30−j、j=1〜m)の各々は、車両や船舶、航空機等の移動体に搭載されていても良い。
図示しないが、スイッチ10(10−i、i=1〜n)の各々、コントローラ20、及び端末30(30−j、j=1〜m)の各々は、プログラムに基づいて駆動し所定の処理を実行するプロセッサと、当該プログラムや各種データを記憶するメモリと、ネットワークに接続するための通信用インターフェースによって実現される。
上記のプロセッサの例として、CPU(Central Processing Unit)、マイクロプロセッサ(microprocessor)、マイクロコントローラ、或いは、専用の機能を有する半導体集積回路(IC:Integrated Circuit)等が考えられる。
上記のメモリの例として、RAM(Random Access Memory)、ROM(Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)やフラッシュメモリ等の半導体記憶装置、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の補助記憶装置、又は、DVD(Digital Versatile Disk)等のリムーバブルディスクや、SDメモリカード(Secure Digital memory card)等の記憶媒体(メディア)等が考えられる。
なお、上記のプロセッサ及び上記のメモリは、一体化していても良い。例えば、近年では、マイコン等の1チップ化が進んでいる。従って、電子機器等に搭載される1チップマイコンが、プロセッサ及びメモリを備えている事例が考えられる。
上記の通信用インターフェースの例として、ネットワーク通信に対応した基板(マザーボード、I/Oボード)やチップ等の半導体集積回路、NIC(Network Interface Card)等のネットワークアダプタや同様の拡張カード、アンテナ等の通信装置、接続口(コネクタ)等の通信ポート等が考えられる。
また、ネットワークの例として、インターネット、LAN(Local Area Network)、無線LAN(Wireless LAN)、WAN(Wide Area Network)、バックボーン(Backbone)、ケーブルテレビ(CATV)回線、固定電話網、携帯電話網、WiMAX(IEEE 802.16a)、3G(3rd Generation)、専用線(lease line)、IrDA(Infrared Data Association)、Bluetooth(登録商標)、シリアル通信回線、データバス等が考えられる。
スイッチ10(10−i、i=1〜n)の各々、コントローラ20、及び端末30(30−j、j=1〜m)の各々の内部の構成要素は、モジュール(module)、コンポーネント(component)、或いは専用デバイス、又はこれらの起動(呼出)プログラムでも良い。
但し、実際には、これらの例に限定されない。
[トポロジ検知]
図2を参照して、トポロジ検知の際の処理について説明する。
コントローラ20は、LLDP(Link Layer Discovery Protocol)によって、ネットワークの物理トポロジを検知する。LLDPとは、制御フレームを送受信することにより定期的に隣接する装置情報を収集するためのプロトコルである。
事前に、管理者端末等から、スイッチ10(10−i、i=1〜n)の各々に、内向き/外向きのコンフィグ(Configuration:設定情報)を設定する。或いは、コントローラ20が、セキュアチャネル(Secure Channel)接続で、管理下にあるスイッチ10(10−i、i=1〜n)の各々に、内向き/外向きのコンフィグを投入するようにしても良い。
「内向きのコンフィグ」とは、ネットワークの内側との通信用の設定情報である。「外向きのコンフィグ」とは、ネットワークの外側との通信用の設定情報である。
スイッチ10(10−i、i=1〜n)の各々は、内向き/外向きのコンフィグを、ポート(Port)のステータス情報(PortStat)として格納する。初期設定(default)では、スイッチ10(10−i、i=1〜n)の各々は、内向きのコンフィグを、ポートのステータス情報(PortStat)として格納している。
コントローラ20は、事前にスイッチ10(10−i、i=1〜n)に内向き/外向きの設定があるため、トポロジを検知するスピードが速くなる。
コントローラ20は、トポロジを検知して、スイッチ10(10−i、i=1〜n)の各々が持つポートのそれぞれについて、ポートのステータス情報(PortStat)を収集して、スイッチ10(10−i、i=1〜n)の各々が持つポートが内向きか外向きかを判断する。
コントローラ20は、ポートのステータス情報において、内向きと明示的な設定のあるポートを「内向きポート」(Inside Port)と認識する。また、コントローラ20は、ポートのステータス情報において、外向きと明示的な設定のあるポートを「外向きポート」(Outside Port)と認識する。
コントローラ20は、内向きポート、及び外向きと明示的な設定のないポート(未設定ポート等)に対して、LLDPの制御フレームを送信する。そして、コントローラ20は、LLDPの制御フレームに対する応答から、ネットワークの物理トポロジを検知し、トポロジ情報を作成する。
このとき、コントローラ20は、管理下にあるスイッチ10(10−i、i=1〜n)の各々のスイッチIDを取得し、各スイッチ10(10−i、i=1〜n)のスイッチIDと、ノードIDとを対応付ける。このとき、ノードIDを対応付けるのは、外向きポートが存在するスイッチ(エッジスイッチ)のみでも良い。ここでは、スイッチIDとして、「DPID:#1〜#6」を示している。なお、実際には、「DPID:#1〜#6」をそのままノードIDとして使用することも可能である。
また、ノードIDは、サブノードIDと、冗長IDを含むものとする。サブノードIDは、スイッチを特定するためのノードIDの実質的な本体である。サブノードIDは、単体でスイッチを特定することが可能な識別情報でも良い。或いは、サブノードIDは、冗長IDと組み合わせることで、スイッチを一意に特定するためのノードIDを形成するものでも良い。冗長IDは、経路を特定するための識別情報である。各スイッチ10(10−i、i=1〜n)は、この冗長IDに基づいて、次段のスイッチに転送するためのポートを決定し、当該ポートから受信パケットを送出するようにしても良い。なお、実際には、冗長IDは、ノードIDとの関連性が保たれており、冗長IDとして特定可能であれば、別の領域に格納されていても良い。
コントローラ20は、外向きポートが存在するスイッチ(エッジスイッチ)間の経路を計算し、当該経路上にあるコアスイッチ(Core)のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に所定のノードID(外向きポートが存在するエッジスイッチのノードID)が記載されていれば、当該受信パケットを当該経路上の次段のスイッチに転送する」という旨のCoreエントリを登録する。すなわち、コアスイッチは、受信パケットの宛先情報の領域に記載されたノードIDをマッチ条件(ルール)として、転送の可否を判断する。無論、コントローラ20は、ノードIDに加えて、受信パケットの宛先情報の領域に記載された他の情報(VTNID、ユーザID等)もマッチ条件(ルール)として指定するようにしても良い。
なお、実際には、コントローラ20は、コアスイッチ(Core)の各々のフローテーブルに、「(ノードIDに関わらず、)当該受信パケットを(所定の出力ポートから)次段のスイッチに転送する」という旨のCoreエントリを登録することも可能である。この場合、コアスイッチ(Core)は、無条件で、受信パケットを次段のスイッチに転送する。受信パケットの転送の可否については、入力側エッジスイッチ(Ingress)や出力側エッジスイッチ(Egress)で判断することになる。
ここでは、コントローラ20は、外向きポートが存在する全てのスイッチ間の経路を計算し、当該経路上にあるコアスイッチ(Core)のフローテーブルに、上記のようにCoreエントリを登録する。
[エントリの構成例]
以下に、エントリの構成例について説明する。
エントリは、「Port」、「DA」(Destination Address)、「SA」(Source Address)、「OPort」(Output Port)、「Mod」(Modify)等のデータ格納領域を含む。
「Port」は、受信パケットの入力ポートを示す情報の格納領域である。「DA」は、受信パケットの宛先情報の格納領域である。「SA」は、受信パケットの送信元情報の格納領域である。「OPort」は、受信パケットの出力ポートを示す情報の格納領域である。「Mod」は、受信パケットに対して行う処理を定義した情報の格納領域である。
「Port」、「DA」、及び「SA」は、マッチ条件(ルール)に該当する。また、「OPort」及び「Mod」は、処理内容(アクション)に該当する。
「DA」に格納される「ID群」とは、「ノードID」、「VTNID」、「ユーザID」等の情報である。「ノードID」は、出力側エッジスイッチとなるスイッチ(外向きポートが存在するノード)を特定するための識別情報の格納領域である。「VTNID」は、VTN(Virtual Tenant Network)等の、外向きポートが存在するスイッチ間の経路を通過するパケット群(フロー)が属するVN(Virtual Network)の識別情報の格納領域である。「ユーザID」は、宛先となる端末(外向きポートが存在するスイッチに接続された/接続され得る端末)を特定するためのユーザIDの識別情報である。端末とユーザIDとの対応付けは、以下に説明する「ステーション検知」において行う。
[ステーション検知]
図3、図4を参照して、ステーション検知の際の処理について説明する。
コントローラ20は、端末がアドレス解決のために送信するARP(Address Resolution Protocol)の制御フレームを利用して、ステーション検知を行う。
なお、ARPの制御フレームは一例に過ぎない。例えば、DHCP(Dynamic Host Configuration Protocol)等の制御フレームでも良い。また、実際には、制御フレームに限定されない。
ここでは、端末30−1を「端末A」とし、端末30−2を「端末B」とする。
(1)ARP_Req(ARPリクエスト(Request:要求))を利用
図3に示すように、端末Aから端末Bに対して通信する際に、端末BのMACアドレスがわからず、端末BのIPアドレスだけがわかっている場合、端末Aは、端末Bのアドレスを解決するためのARP_Req(ARPリクエスト)をブロードキャストで送信する。
端末Aが接続されたエッジスイッチ10−1は、セキュアチャネル(Secure Channel)接続で、コントローラ20宛にARP_Req(ARPリクエスト)を転送する。このとき、コントローラ20は、ARPプロキシ(ARP Proxy)として動作する。
コントローラ20は、端末Aが接続されたエッジスイッチ10−1からARP_Req(ARPリクエスト)を受信した際、ARP_Req(ARPリクエスト)の送信元情報から端末AのMACアドレス(及びIPアドレス)を取得し、端末AにユーザIDを割り当てる。すなわち、端末AのMACアドレス(及びIPアドレス)と、ユーザIDとを対応付ける。
コントローラ20は、端末Aが接続されたエッジスイッチ10−1のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に(当該エッジスイッチのノードIDと)配下の端末AのユーザIDが記載されていれば、当該受信パケットの宛先情報を端末AのMACアドレス宛に戻し、当該受信パケットを端末AのMACアドレス宛に転送する」という旨のEgressエントリを登録する。
コントローラ20は、ARPプロキシ(ARP Proxy)として、ターゲット(Target)となる端末Bのアドレス解決をするため、セキュアチャネル(Secure Channel)接続で、管理下にあるスイッチ10(10−i、i=1〜n)の各々に対して、ARP_Req(ARPリクエスト)をブロードキャストで送信する。このとき、ARP_Req(ARPリクエスト)の送信元MACアドレスは、端末AのMACアドレスである。
端末Bが接続されたエッジスイッチ10−6は、ブロードキャストで送信されたARP_Req(ARPリクエスト)を端末Bに転送する。
ここでは、説明の簡略化のため、端末Bのみを宛先端末として説明しているが、他の宛先端末が接続されたエッジスイッチについても、上記と同様の処理を行う。
(2)ARP_Rep(ARPリプライ(Reply:応答))を利用
図4に示すように、端末Bは、ARP_Req(ARPリクエスト)に対する応答として、端末A宛にARP_Rep(ARPリプライ)を送信する。
端末Bが接続されたエッジスイッチ10−6は、セキュアチャネル(Secure Channel)接続で、コントローラ20宛にARP_Rep(ARPリプライ)を転送する。このとき、コントローラ20は、ARPプロキシ(ARP Proxy)として動作する。
コントローラ20は、端末Bが接続されたエッジスイッチ10−6からARP_Rep(ARPリプライ)を受信した際、ARP_Rep(ARPリプライ)の送信元情報から端末BのMACアドレス(及びIPアドレス)を取得し、端末BにユーザIDを割り当てる。すなわち、端末BのMACアドレス(及びIPアドレス)と、ユーザIDとを対応付ける。
コントローラ20は、端末Bが接続されたエッジスイッチ10−6のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に(当該エッジスイッチのノードIDと)配下の端末BのユーザIDが記載されていれば、当該受信パケットの宛先情報を端末BのMACアドレス宛に戻し、当該受信パケットを端末BのMACアドレス宛に転送する」という旨のEgressエントリを登録する。
この時点で、コントローラ20は、端末Aと端末Bとの間の通信が可能であると判断し、端末Aが接続されたエッジスイッチ10−1のフローテーブルに、「端末B宛のパケットを受信した場合、当該受信パケットの宛先情報の領域の少なくとも一部に、ID群(端末Bが接続されたエッジスイッチのノードIDと、当該フローのVTNIDと、端末BのユーザID)を記載して次段のスイッチに転送する」という旨のIngressエントリを登録することも可能である。このエントリ登録方式は「Proactive型」(事前にIngressエントリを登録する方式)である。
コントローラ20は、ARPプロキシ(ARP Proxy)として、端末AにARP_Rep(ARPリプライ)を転送するため、セキュアチャネル(Secure Channel)接続で、端末Aが接続されたエッジスイッチ10−1に対して、ARP_Rep(ARPリプライ)を送信する。このとき、ARP_Rep(ARPリプライ)の送信元MACアドレスは、端末BのMACアドレスである。
端末Aが接続されたエッジスイッチ10−1は、コントローラ20から受信したARP_Rep(ARPリプライ)を端末Aに転送する。
端末Aは、ARP_Req(ARPリクエスト)に対する応答として受信したARP_Rep(ARPリプライ)から、端末BのMACアドレスを取得する。
[エントリ登録完了後のデータ通信]
図5を参照して、エントリ登録完了後のスイッチ間でのIPパケット等の通信の際の処理について説明する。
この時点では、スイッチ間の全てのスイッチに対して、必要なエントリ登録は完了しているものとする。すなわち、コントローラ20の作業は完了している。
まず、端末Aは、宛先となる端末BのMACアドレス(及びIPアドレス)を、パケットの宛先情報の領域に記載し、端末B宛のパケットを送信する。
端末Aが接続されたエッジスイッチ10−1は、入力ポート1で端末B宛のパケットを受信すると、自身のフローテーブルに当該受信パケットと適合するエントリが登録されているか確認する。
端末Aが接続されたエッジスイッチ10−1は、自身のフローテーブルに、「端末B宛のパケットを受信した場合、当該受信パケットの宛先情報の領域の少なくとも一部に、ID群(端末Bが接続されたエッジスイッチ10−6のノードIDと、当該フローのVTNIDと、端末BのユーザID)を記載して次段のスイッチに転送する」という旨のIngressエントリが登録されているため、受信パケットの宛先情報の領域の少なくとも一部に、当該ID群を記載して次段のスイッチに転送する。ここでは、エッジスイッチ10−1は、受信パケットの宛先情報に記載されている端末BのMACアドレスをID群に変更(宛先情報にID群を上書き)し、当該変更後のパケット(以下、ID化パケット)を、出力ポート2に転送し、出力ポート2から次段のスイッチ10−2に転送する。
エッジスイッチ10−2は、入力ポート3でID化パケットを受信すると、自身のフローテーブルに当該ID化パケットと適合するエントリが登録されているか確認する。
エッジスイッチ10−2は、自身のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部にエッジスイッチ10−6のノードIDが記載されていれば、当該受信パケットを(所定の出力ポートから)次段のスイッチに転送する」という旨のCoreエントリが登録されているため、当該ID化パケットを、出力ポート4に転送し、出力ポート4から次段のスイッチ10−3に転送する。なお、エッジスイッチ10−2は、出力ポート4と出力ポート5のいずれに転送するかは、当該Coreエントリの「OPort」の値を基に決定する。
このとき、エッジスイッチ10−2は、当該ID化パケットに冗長IDが含まれている場合、冗長IDの値を検索キーとして、該当するCoreエントリを検索する。
エッジスイッチ10−3は、入力ポート10でID化パケットを受信すると、自身のフローテーブルに当該ID化パケットと適合するエントリが登録されているか確認する。
エッジスイッチ10−3は、自身のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部にエッジスイッチ10−6のノードIDが記載されていれば、当該受信パケットを(所定の出力ポートから)次段のスイッチに転送する」という旨のCoreエントリが登録されているため、当該ID化パケットを、出力ポート12に転送し、出力ポート12から次段のスイッチ10−6に転送する。
エッジスイッチ10−6は、入力ポート13でID化パケットを受信すると、自身のフローテーブルに当該ID化パケットと適合するエントリが登録されているか確認する。
端末Bが接続されたエッジスイッチ10−6は、自身のフローテーブルに、「受信パケットの宛先情報の領域の少なくとも一部に(当該エッジスイッチ10−6のノードIDと)配下の端末BのユーザIDが記載されていれば、当該受信パケットの宛先情報を端末BのMACアドレス宛に戻し、当該受信パケットを端末BのMACアドレス宛に転送する」という旨のEgressエントリが登録されているため、当該ID化パケットの宛先情報の領域に記載されているID群を、端末BのMACアドレス宛に変更(宛先情報に端末BのMACアドレスを上書き)し、当該変更後のパケット(元の受信パケット)を、出力ポート14に転送し、出力ポート14から端末Bに転送する。
なお、上記では、宛先情報の領域として、「MACアドレス領域」を例に説明しているが、実際には「IPアドレス領域」でも良い。すなわち、「宛先アドレスの領域」であれば良い。
<第2実施形態>
以下に、本発明の第2実施形態について説明する。
本実施形態では、ステーション検知の際ではなく、スイッチ間でのIPパケット等の通信を開始した際に、入力側エッジスイッチのフローテーブルに「Ingressエントリ」を登録する事例について説明する。
ここでは、図3に示すステーション検知(ARPリクエスト利用)により、エッジスイッチに「Egressエントリ」を登録する処理のみ実施した状態、或いは、図4に示すステーション検知(ARPリプライ利用)の際に、エッジスイッチに「Ingressエントリ」を登録する処理を実施していない状態を想定している。
[パケットの問い合わせ]
図6を参照して、データ通信開始時のパケットの問い合わせの際の処理について説明する。
コントローラ20は、セキュアチャネル(Secure Channel)接続で、管理下にあるスイッチから受信パケットについての問い合わせを受けた場合に、応答としてIngressエントリを登録する。
まず、端末Aは、宛先となる端末BのMACアドレス(及びIPアドレス)を、パケットの宛先情報の領域に記載し、端末B宛のパケットを送信する。
端末Aが接続されたエッジスイッチ10−1は、端末B宛のパケットを受信すると、自身のフローテーブルに当該パケットと適合するエントリが登録されているか確認する。この時点では、端末Aが接続されたエッジスイッチ10−1には、当該パケットと適合するエントリ(Ingressエントリ)は登録されていないため、端末Aが接続されたエッジスイッチ10−1は、セキュアチャネル(Secure Channel)接続で、コントローラ20宛に端末B宛のパケットを転送する。
コントローラ20は、端末B宛のパケットの宛先情報から端末BのMACアドレス(及びIPアドレス)を取得し、自身が保持しているトポロジ情報及びステーション情報から、端末BのユーザIDと、端末Bが接続されたエッジスイッチ10−6のノードIDを特定する。
コントローラ20は、端末Aが接続されたエッジスイッチ10−1のフローテーブルに、「端末B宛のパケットを受信した場合、当該受信パケットの宛先情報の領域の少なくとも一部に、ID群(端末Bが接続されたエッジスイッチのノードIDと、当該フローのVTNIDと、端末BのユーザID)を記載して次段のスイッチに転送する」という旨のIngressエントリを登録する。このエントリ登録方式は「Reactive型」(最初のパケット到着時にIngressエントリを登録する方式)である。
<各実施形態の関係>
なお、上記の各実施形態は、組み合わせて実施することも可能である。例えば、本発明に係るネットワークシステムにおいて、第1実施形態に対応するスイッチと、第2実施形態に対応するスイッチが混在していても良い。また、複数のVTNが存在する場合、VTN毎に実施形態を別々にしても良い。
<付記>
上記の実施形態の一部又は全部は、以下の付記のように記載することも可能である。但し、実際には、以下の記載例に限定されない。
[付記1:システム構成]
それぞれが、自身のフローテーブルに登録されたエントリのルールに適合する受信パケットに対し、前記エントリに定義されたアクションに従った動作を行う複数のスイッチと、
前記複数のスイッチによって形成されるネットワークの物理トポロジに応じて計算された経路に固有の識別子をルールとし、所定の出力ポートからの出力をアクションとしたエントリを、複数のスイッチ間において通信が開始される前に、前記各スイッチに登録するコントローラと
を含む
ネットワークシステム。
[付記2:Coreエントリ登録]
付記1に記載のネットワークシステムであって、
前記コントローラは、
通信開始前のトポロジ検知の際、前記各スイッチに内向き及び外向きの設定情報を投入し、前記各スイッチのポート情報を収集するポート情報収集部と、
前記各スイッチのポート情報を基に、内向きポートと外向きポートとを特定し、エッジスイッチとコアスイッチとを特定するスイッチ特定部と、
内向きポート、及び外向きと明示的な設定のないポートに対して、隣接スイッチ情報を収集するための制御フレームを送信する制御フレーム送出部と、
前記制御フレームに対する応答から、ネットワークの物理トポロジを検知し、トポロジ情報を作成するトポロジ情報作成部と、
前記各スイッチに、前記固有の識別子としてノードIDを対応付けるノードID割り当て処理部と、
外向きポートが存在するスイッチ間の経路を計算し、コアスイッチのフローテーブルに、受信パケットの宛先情報の領域にエッジスイッチのノードIDが記載されている場合は次段のスイッチに当該受信パケットを転送する旨の中継用エントリを登録する中継用エントリ登録部と
を具備する
ネットワークシステム。
[付記3:送信側のEgressエントリ登録]
付記2に記載のネットワークシステムであって、
前記コントローラは、
通信開始前のステーション検知の際、送信元端末からのARP要求を基に、前記送信元端末の宛先情報を特定する送信元端末特定部と、
前記送信元端末に、前記固有の識別子としてユーザIDを対応付ける送信元ユーザID割り当て処理部と、
前記送信元端末が接続されたエッジスイッチのフローテーブルに、受信パケットの宛先情報の領域に当該エッジスイッチのノードID及び前記送信元端末のユーザIDが記載されている場合は、当該受信パケットの宛先情報の領域に前記送信元端末の宛先情報を記載し、前記送信元端末に当該受信パケットを転送する旨の出力用エントリを登録する送信元端末側出力用エントリ登録部と
を更に具備する
ネットワークシステム。
[付記4:受信側のEgressエントリ登録]
付記3に記載のネットワークシステムであって、
前記コントローラは、
通信開始前のステーション検知の際、宛先端末からのARP応答を基に、前記宛先端末の宛先情報を特定する宛先端末特定部と、
前記宛先端末に、前記固有の識別子としてユーザIDを対応付ける宛先ユーザID割り当て処理部と、
前記宛先端末が接続されたエッジスイッチのフローテーブルに、受信パケットの宛先情報の領域に当該エッジスイッチのノードID及び前記宛先端末のユーザIDが記載されている場合は、当該受信パケットの宛先情報の領域に前記宛先端末の宛先情報を記載し、前記宛先端末に当該受信パケットを転送する旨の出力用エントリを登録する宛先端末側出力用エントリ登録部と
を更に具備する
ネットワークシステム。
[付記5:送信側のIngressエントリ登録(Proactive型)]
付記4に記載のネットワークシステムであって、
前記コントローラは、
通信開始前のステーション検知の際、前記宛先端末からのARP応答を基に、前記送信元端末と前記宛先端末との間の通信が可能であると判断する通信可否判断部と、
前記送信元端末が接続されたエッジスイッチのフローテーブルに、前記宛先端末宛のパケットを受信した場合、当該受信パケットの宛先情報の領域の少なくとも一部に、前記宛先端末が接続されたエッジスイッチのノードID及び前記宛先端末のユーザIDを記載して次段のスイッチに転送する旨の入力用エントリを登録する送信元端末側入力用エントリ登録部と
を更に具備する
ネットワークシステム。
[付記6:送信側のIngressエントリ登録(Reactive型)]
付記4に記載のネットワークシステムであって、
前記コントローラは、
通信が開始された際、前記送信元端末が接続されたエッジスイッチからのパケットの問い合わせを基に、前記送信元端末と前記宛先端末との間の通信が可能であると判断する通信可否判断部と、
前記送信元端末が接続されたエッジスイッチのフローテーブルに、前記宛先端末宛のパケットを受信した場合、当該受信パケットの宛先情報の領域の少なくとも一部に、前記宛先端末が接続されたエッジスイッチのノードIDと前記宛先端末のユーザIDを記載して次段のスイッチに転送する旨の入力用エントリを登録する送信元端末側入力用エントリ登録部と
を更に具備する
ネットワークシステム。
以上、本発明の実施形態を詳述してきたが、実際には、上記の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の変更があっても本発明に含まれる。
なお、本出願は、日本出願番号2011−005137に基づく優先権を主張するものであり、日本出願番号2011−005137における開示内容は引用により本出願に組み込まれる。

Claims (9)

  1. パケットが属する仮想ネットワークに対応する識別子に基づいてパケットを転送するための第一のエントリをコアスイッチに送信する第一の手段と、
    パケットを識別するための識別ルールと、当該識別ルールで識別される受信パケットが属する仮想ネットワークに対応する前記識別子を当該受信パケットに付与する指示とを含む第二のエントリを、前記コアスイッチで構成されるネットワークの端点に設けられたエッジスイッチに対して予め送信可能な第二の手段と
    を含むネットワークシステム。
  2. 前記第二の手段は、前記識別子が付与された受信パケットを復元する指示を含むエントリを、前記エッジスイッチに対して予め送信する
    ことを特徴とする請求項1のネットワークシステム。
  3. 前記第二の手段は、前記エッジスイッチに仮想マシンが接続されたことに応じて、パケットを識別するための識別ルールと、当該識別ルールで識別される受信パケットが属する仮想ネットワークに対応する前記識別子を当該受信パケットに付与する指示とを含む第二のエントリを、前記エッジスイッチに対して予め送信する
    ことを特徴とする請求項1または2のネットワークシステム。
  4. パケットが属する仮想ネットワークに対応する識別子に基づいてパケットを転送するための第一のエントリをコアスイッチに送信する第一の手段と、
    パケットを識別するための識別ルールと、当該識別ルールで識別される受信パケットが属する仮想ネットワークに対応する前記識別子を当該受信パケットに付与する指示とを含む第二のエントリを、前記コアスイッチで構成されるネットワークの端点に設けられたエッジスイッチに対して予め送信可能な第二の手段と
    を含むコントローラ。
  5. 前記第二の手段は、前記識別子が付与された受信パケットを復元する指示を含むエントリを、前記エッジスイッチに対して予め送信する
    ことを特徴とする請求項4のコントローラ。
  6. 前記第二の手段は、前記エッジスイッチに仮想マシンが接続されたことに応じて、パケットを識別するための識別ルールと、当該識別ルールで識別される受信パケットが属する仮想ネットワークに対応する前記識別子を当該受信パケットに付与する指示とを含む第二のエントリを、前記エッジスイッチに対して予め送信する
    ことを特徴とする請求項4または5のコントローラ。
  7. パケットが属する仮想ネットワークに対応する識別子に基づいてパケットを転送するための第一のエントリをコアスイッチに送信し、
    パケットを識別するための識別ルールと、当該識別ルールで識別される受信パケットが属する仮想ネットワークに対応する前記識別子を当該受信パケットに付与する指示とを含む第二のエントリを、前記コアスイッチで構成されるネットワークの端点に設けられたエッジスイッチに対して予め送信する
    ことを特徴とする通信方法。
  8. 前記識別子が付与された受信パケットを復元する指示を含むエントリを、前記エッジスイッチに対して予め送信する
    ことを特徴とする請求項7の通信方法。
  9. 前記エッジスイッチに仮想マシンが接続されたことに応じて、パケットを識別するための識別ルールと、当該識別ルールで識別される受信パケットが属する仮想ネットワークに対応する前記識別子を当該受信パケットに付与する指示とを含む第二のエントリを、前記エッジスイッチに対して予め送信する
    ことを特徴とする請求項7または8の通信方法。
JP2014092791A 2011-01-13 2014-04-28 ネットワークシステム、及び経路制御方法 Active JP5594552B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014092791A JP5594552B2 (ja) 2011-01-13 2014-04-28 ネットワークシステム、及び経路制御方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011005137 2011-01-13
JP2011005137 2011-01-13
JP2014092791A JP5594552B2 (ja) 2011-01-13 2014-04-28 ネットワークシステム、及び経路制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2012552660A Division JP5585664B2 (ja) 2011-01-13 2011-12-27 ネットワークシステム、及び経路制御方法

Publications (2)

Publication Number Publication Date
JP2014168286A true JP2014168286A (ja) 2014-09-11
JP5594552B2 JP5594552B2 (ja) 2014-09-24

Family

ID=46507042

Family Applications (3)

Application Number Title Priority Date Filing Date
JP2012552660A Active JP5585664B2 (ja) 2011-01-13 2011-12-27 ネットワークシステム、及び経路制御方法
JP2014092791A Active JP5594552B2 (ja) 2011-01-13 2014-04-28 ネットワークシステム、及び経路制御方法
JP2014092790A Active JP5594551B2 (ja) 2011-01-13 2014-04-28 ネットワークシステム、及び経路制御方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2012552660A Active JP5585664B2 (ja) 2011-01-13 2011-12-27 ネットワークシステム、及び経路制御方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2014092790A Active JP5594551B2 (ja) 2011-01-13 2014-04-28 ネットワークシステム、及び経路制御方法

Country Status (9)

Country Link
US (3) US9787580B2 (ja)
EP (2) EP2665229B1 (ja)
JP (3) JP5585664B2 (ja)
KR (3) KR20160021309A (ja)
CN (2) CN105262683B (ja)
ES (1) ES2706416T3 (ja)
RU (1) RU2576473C2 (ja)
TW (1) TWI489821B (ja)
WO (1) WO2012096131A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016225783A (ja) * 2015-05-29 2016-12-28 Necエンジニアリング株式会社 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法
JP2017147502A (ja) * 2016-02-15 2017-08-24 株式会社リコー 通信システム
JP2019092233A (ja) * 2019-03-26 2019-06-13 Necプラットフォームズ株式会社 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102938794B (zh) * 2012-11-14 2016-01-13 华为技术有限公司 地址解析协议arp消息转发方法、交换机和控制器
US10044671B2 (en) 2012-11-27 2018-08-07 Nec Corporation Control apparatus, communication system, communication method, and program
CN103905577A (zh) * 2012-12-28 2014-07-02 中兴通讯股份有限公司 一种地址解析协议报文的处理方法和系统
US8929356B2 (en) * 2013-02-05 2015-01-06 Anue Systems, Inc. Mobile user identification and tracking for load balancing in packet processing systems
CN103179046B (zh) * 2013-04-15 2016-03-30 昆山天元昌电子有限公司 基于openflow的数据中心流量控制方法及系统
US9210074B2 (en) * 2013-05-03 2015-12-08 Alcatel Lucent Low-cost flow matching in software defined networks without TCAMs
CN104243319B (zh) * 2013-06-06 2018-01-09 新华三技术有限公司 一种邻居发现的方法及装置
CN103346922B (zh) * 2013-07-26 2016-08-10 电子科技大学 基于sdn的确定网络状态的控制器及其确定方法
CN105393492A (zh) * 2013-08-01 2016-03-09 惠普发展公司,有限责任合伙企业 地址解析重写
CN104348727B (zh) * 2013-08-05 2018-05-15 新华三技术有限公司 OpenFlow网络中的流表表项处理方法及设备
US9426060B2 (en) * 2013-08-07 2016-08-23 International Business Machines Corporation Software defined network (SDN) switch clusters having layer-3 distributed router functionality
WO2015025845A1 (ja) 2013-08-20 2015-02-26 日本電気株式会社 通信システム、スイッチ、コントローラ、アンシラリデータ管理装置、データ転送方法及びプログラム
JP6417086B2 (ja) * 2013-09-06 2018-10-31 エヌ・ティ・ティ・コミュニケーションズ株式会社 接続制御装置、中継装置、接続制御方法、及びプログラム
CN103458479A (zh) * 2013-09-17 2013-12-18 清华大学 Wsn中基于内容的路由表的数据路由方法及系统
US20150098475A1 (en) * 2013-10-09 2015-04-09 International Business Machines Corporation Host table management in software defined network (sdn) switch clusters having layer-3 distributed router functionality
CN105745878B (zh) * 2013-11-20 2019-07-26 日本电气株式会社 网络控制设备、网络控制方法以及存储介质
US10063420B2 (en) 2013-11-26 2018-08-28 Nec Corporation Network control apparatus, network system, network control method, and program
TWI513260B (zh) * 2013-12-13 2015-12-11 Inventec Corp 路由控制方法與裝置
WO2015118811A1 (ja) * 2014-02-10 2015-08-13 日本電気株式会社 通信システム、パケット転送装置、パケット転送方法およびパケット転送用プログラム
CN104954281B (zh) * 2014-03-31 2018-08-03 中国移动通信集团公司 通信方法、系统、资源池管理系统、交换机和控制装置
WO2015161416A1 (zh) * 2014-04-21 2015-10-29 华为技术有限公司 一种报文传输方法、设备及通信系统
EP3136662B1 (en) * 2014-05-30 2018-11-28 Huawei Technologies Co., Ltd. Construction method, device and system for multi-path forwarding rules
EP3142306B1 (en) * 2014-06-03 2019-01-09 Huawei Technologies Co., Ltd. Openflow communication method, system, controller, and service gateway
US9774502B2 (en) * 2014-06-25 2017-09-26 Ciena Corporation Systems and methods for combined software defined networking and distributed network control
JP6490205B2 (ja) 2014-06-30 2019-03-27 華為技術有限公司Huawei Technologies Co.,Ltd. フローエントリ構成の方法、装置及びシステム
US9813301B2 (en) * 2014-08-20 2017-11-07 Nec Corporation Optimization framework for multi-tenant data centers
US9876712B2 (en) * 2014-09-05 2018-01-23 Kt Corporation Method and device for processing address resolution protocol in software-defined networking environment
CN107005478B (zh) 2014-12-09 2020-05-08 华为技术有限公司 一种自适应流表的处理方法及装置
JP2016116024A (ja) * 2014-12-12 2016-06-23 日立金属株式会社 タグ変換装置
CA2963580C (en) * 2014-12-17 2020-04-21 Huawei Technologies Co., Ltd. Data forwarding method, device, and system in software-defined networking
CN104639438A (zh) * 2015-01-05 2015-05-20 北京交通大学 一种OpenFlow网络中数据流的新标识和控制方法
JP2016181819A (ja) * 2015-03-24 2016-10-13 富士通株式会社 ネットワークの制御装置及び制御方法、並びに、ネットワークスイッチ
KR101674177B1 (ko) 2015-07-07 2016-11-09 주식회사 케이티 멀티노드간 이더넷 가상연결서비스를 제공하는 트랜스포트 sdn 컨트롤러 및 멀티노드간 이더넷 가상연결서비스 제공 방법
CN106411746A (zh) * 2015-08-03 2017-02-15 上海宽带技术及应用工程研究中心 基于Vlan的SDN网络数据传输系统及方法
US10003537B2 (en) 2015-10-01 2018-06-19 Keysight Technologies Singapore (Holding) Pte Ltd Egress port overload protection for network packet forwarding systems
JP2017175522A (ja) * 2016-03-25 2017-09-28 日本電気株式会社 ネットワークシステム、制御装置、方法およびプログラム
KR101870146B1 (ko) * 2016-10-12 2018-06-25 아토리서치(주) 리프-스파인 구조의 소프트웨어 정의 네트워킹에서 목적지 기반 패킷 전송 제어 방법 및 장치
KR102342734B1 (ko) * 2017-04-04 2021-12-23 삼성전자주식회사 Sdn 제어 장치 및 이의 데이터 패킷의 전송 룰 설정 방법
CN109218190B (zh) * 2017-06-29 2020-08-07 华为技术有限公司 一种传输路径的确定方法及节点
KR102001487B1 (ko) * 2017-11-22 2019-07-17 아토리서치(주) 소프트웨어 정의 네트워킹 제어 방법 및 이를 수행하는 컴퓨팅 장치
CN109842558B (zh) * 2017-11-28 2020-09-11 华为技术有限公司 报文转发的方法、控制面网关和用户面网关
EP3531622B1 (en) * 2018-02-23 2020-01-08 Akademia Gorniczo-Hutnicza im. Stanislawa Staszica w Krakowie Method of handling packet flow in software-defined network, computer program product, and software-defined network
CN110460456B (zh) * 2018-05-08 2020-10-20 大唐移动通信设备有限公司 一种管理信息库mib同步生成网络拓扑的方法及装置
CN110838979B (zh) * 2018-08-17 2022-02-08 中国电信股份有限公司 流量转发控制方法、装置、系统和计算机可读存储介质
KR102207290B1 (ko) * 2019-04-12 2021-01-25 아토리서치(주) 소프트웨어 정의 네트워크에서 vlan을 지원하는 방법
CN112887741A (zh) * 2021-01-08 2021-06-01 武汉球之道科技有限公司 一种篮球比赛进球视频无线分享系统
CN115134299A (zh) * 2021-03-25 2022-09-30 华为技术有限公司 通信方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008187686A (ja) * 2007-01-31 2008-08-14 Nippon Telegr & Teleph Corp <Ntt> トンネル通信システム、制御装置およびトンネル通信装置
JP2009077219A (ja) * 2007-09-21 2009-04-09 Nec Corp ネットワークシステム、ネットワーク管理装置、通信装置、パス設定方法及びプログラム

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1012730A1 (en) * 1996-01-31 2000-06-28 Ipsilon Networks, Inc. Improved method and apparatus for dynamically shifting between routing and switching packets in a transmission network
US6876654B1 (en) * 1998-04-10 2005-04-05 Intel Corporation Method and apparatus for multiprotocol switching and routing
US6526052B1 (en) * 1998-12-23 2003-02-25 Enterasys Networks, Inc. Virtual local area networks having rules of precedence
US7200144B2 (en) * 2001-10-18 2007-04-03 Qlogic, Corp. Router and methods using network addresses for virtualization
US20030156541A1 (en) * 2002-02-21 2003-08-21 Zheng Haihong Method and system for reserving resources on an MPLS path
US8050180B2 (en) 2003-10-31 2011-11-01 Brocade Communications Systems, Inc. Network path tracing method
JP3760167B2 (ja) * 2004-02-25 2006-03-29 株式会社日立製作所 通信制御装置、通信ネットワークおよびパケット転送制御情報の更新方法
JP4332079B2 (ja) * 2004-07-01 2009-09-16 株式会社日立製作所 モジュール型パケット通信ノード装置
JP4598462B2 (ja) * 2004-09-16 2010-12-15 富士通株式会社 L2−vpnサービスを提供するプロバイダ網、及びエッジルータ
US7801125B2 (en) 2004-10-22 2010-09-21 Cisco Technology, Inc. Forwarding table reduction and multipath network forwarding
WO2006049235A1 (ja) * 2004-11-04 2006-05-11 Matsushita Electric Industrial Co., Ltd. マルチインタフェース通信装置、端末、および経路切替方法
US7827402B2 (en) * 2004-12-01 2010-11-02 Cisco Technology, Inc. Method and apparatus for ingress filtering using security group information
JP4680866B2 (ja) * 2006-10-31 2011-05-11 株式会社日立製作所 ゲートウェイ負荷分散機能を備えたパケット転送装置
JP4680942B2 (ja) * 2007-01-18 2011-05-11 株式会社日立製作所 パケット転送装置
US20080189769A1 (en) * 2007-02-01 2008-08-07 Martin Casado Secure network switching infrastructure
US20090063438A1 (en) 2007-08-28 2009-03-05 Iamg, Llc Regulatory compliance data scraping and processing platform
JP5393686B2 (ja) * 2007-09-26 2014-01-22 ニシラ, インコーポレイテッド ネットワークを管理する及び安全にするためのネットワークオペレーティングシステム
GB2458154B (en) * 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
US20090249471A1 (en) * 2008-03-27 2009-10-01 Moshe Litvin Reversible firewall policies
CA2720507C (fr) 2008-05-16 2014-02-04 Eurecat S.A. Procede de sulfuration ou presulfuration de particules solides d'un catalyseur ou d'un adsorbant
JP5242301B2 (ja) * 2008-09-01 2013-07-24 株式会社東芝 メッセージを転送する装置、出力方法および出力プログラム
US8761152B2 (en) * 2008-10-14 2014-06-24 William Marsh Rice University Method and system for scalable ethernet
JP2010193019A (ja) * 2009-02-16 2010-09-02 Panasonic Corp 通信装置及び通信装置の遠隔起動方法
WO2010103909A1 (ja) 2009-03-09 2010-09-16 日本電気株式会社 OpenFlow通信システムおよびOpenFlow通信方法
EP2413547A4 (en) * 2009-03-26 2014-12-24 Nec Corp ROUTE DETERMINATION SERVER, ROUTE DETERMINATION METHOD AND ROUTE DETERMINATION PROGRAM
CA2756289C (en) * 2009-04-01 2016-02-02 Nicira Networks, Inc. Method and apparatus for implementing and managing virtual switches
US9497039B2 (en) * 2009-05-28 2016-11-15 Microsoft Technology Licensing, Llc Agile data center network architecture
US9210065B2 (en) * 2009-06-22 2015-12-08 Alcatel Lucent Providing cloud-based services using dynamic network virtualization
JP4933592B2 (ja) 2009-06-29 2012-05-16 京楽産業.株式会社 遊技機、認証方法、プログラム
CN104065555B (zh) * 2009-09-24 2018-09-18 日本电气株式会社 虚拟服务器间通信识别系统和虚拟服务器间通信识别方法
WO2011037105A1 (ja) * 2009-09-25 2011-03-31 日本電気株式会社 コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法
US8369333B2 (en) * 2009-10-21 2013-02-05 Alcatel Lucent Method and apparatus for transparent cloud computing with a virtualized network infrastructure
JP5392137B2 (ja) * 2010-02-17 2014-01-22 富士通株式会社 通信処理のためのプログラム、コンピュータ及び方法
US8571040B2 (en) * 2010-03-01 2013-10-29 Deutsche Telekom Ag Apparatus, method, manufacture, and system for providing network services from building blocks
US8817629B2 (en) * 2010-03-16 2014-08-26 Deutsche Telekom Ag Method for routing-assisted traffic monitoring
US8504718B2 (en) * 2010-04-28 2013-08-06 Futurewei Technologies, Inc. System and method for a context layer switch
US8503307B2 (en) * 2010-05-10 2013-08-06 Hewlett-Packard Development Company, L.P. Distributing decision making in a centralized flow routing system
US8989187B2 (en) * 2010-06-04 2015-03-24 Coraid, Inc. Method and system of scaling a cloud computing network
US8897134B2 (en) * 2010-06-25 2014-11-25 Telefonaktiebolaget L M Ericsson (Publ) Notifying a controller of a change to a packet forwarding configuration of a network element over a communication channel
US9680750B2 (en) * 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US8958292B2 (en) * 2010-07-06 2015-02-17 Nicira, Inc. Network control apparatus and method with port security controls
CN101917492B (zh) * 2010-08-06 2013-06-05 北京乾唐视联网络科技有限公司 一种新型网的通信方法及系统
US20120099591A1 (en) * 2010-10-26 2012-04-26 Dell Products, Lp System and Method for Scalable Flow Aware Network Architecture for Openflow Based Network Virtualization
CN103181128A (zh) * 2010-10-28 2013-06-26 日本电气株式会社 网络系统和通信业务控制方法
US9001827B2 (en) * 2010-12-17 2015-04-07 Big Switch Networks, Inc. Methods for configuring network switches
US8559335B2 (en) * 2011-01-07 2013-10-15 Jeda Networks, Inc. Methods for creating virtual links between fibre channel over ethernet nodes for converged network adapters

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008187686A (ja) * 2007-01-31 2008-08-14 Nippon Telegr & Teleph Corp <Ntt> トンネル通信システム、制御装置およびトンネル通信装置
JP2009077219A (ja) * 2007-09-21 2009-04-09 Nec Corp ネットワークシステム、ネットワーク管理装置、通信装置、パス設定方法及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016225783A (ja) * 2015-05-29 2016-12-28 Necエンジニアリング株式会社 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法
JP2017147502A (ja) * 2016-02-15 2017-08-24 株式会社リコー 通信システム
JP2019092233A (ja) * 2019-03-26 2019-06-13 Necプラットフォームズ株式会社 仮想ネットワークシステムおよび仮想ネットワーク経路設定方法

Also Published As

Publication number Publication date
WO2012096131A1 (ja) 2012-07-19
RU2013132519A (ru) 2015-02-20
EP2665229A1 (en) 2013-11-20
US11552885B2 (en) 2023-01-10
CN103329488B (zh) 2016-05-04
TW201246843A (en) 2012-11-16
JP5594551B2 (ja) 2014-09-24
JP5594552B2 (ja) 2014-09-24
KR20150054006A (ko) 2015-05-19
US20130279371A1 (en) 2013-10-24
JP2014168285A (ja) 2014-09-11
ES2706416T3 (es) 2019-03-28
US20210029027A1 (en) 2021-01-28
EP2665229A4 (en) 2016-12-07
CN105262683A (zh) 2016-01-20
TWI489821B (zh) 2015-06-21
EP2665229B1 (en) 2018-10-17
KR20160021309A (ko) 2016-02-24
JPWO2012096131A1 (ja) 2014-06-09
CN105262683B (zh) 2021-03-30
CN103329488A (zh) 2013-09-25
RU2576473C2 (ru) 2016-03-10
KR20130121921A (ko) 2013-11-06
US20180041429A1 (en) 2018-02-08
US9787580B2 (en) 2017-10-10
KR101624474B1 (ko) 2016-05-26
EP3461077A1 (en) 2019-03-27
US10819625B2 (en) 2020-10-27
KR101574167B1 (ko) 2015-12-03
JP5585664B2 (ja) 2014-09-10

Similar Documents

Publication Publication Date Title
JP5594552B2 (ja) ネットワークシステム、及び経路制御方法
JP5610247B2 (ja) ネットワークシステム、及びポリシー経路設定方法
JP5935873B2 (ja) ネットワークシステム、スイッチ、及びネットワーク構築方法
RU2583745C2 (ru) Сетевая система, коммутатор и способ обнаружения подсоединенного терминала
KR101579014B1 (ko) 부하 저감 시스템, 및 부하 저감 방법
JP5682846B2 (ja) ネットワークシステム、パケット処理方法、及び記憶媒体
JP4193832B2 (ja) ネットワークシステム及びデータ転送方法
JP5821641B2 (ja) ネットワークシステム、スイッチ、及びスイッチ間設定通知方法
EP4290812A1 (en) Packet transmission method and apparatus

Legal Events

Date Code Title Description
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: 20140710

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140723

R150 Certificate of patent or registration of utility model

Ref document number: 5594552

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150