JP2017183960A - スイッチ制御装置、方法およびプログラム - Google Patents

スイッチ制御装置、方法およびプログラム Download PDF

Info

Publication number
JP2017183960A
JP2017183960A JP2016067221A JP2016067221A JP2017183960A JP 2017183960 A JP2017183960 A JP 2017183960A JP 2016067221 A JP2016067221 A JP 2016067221A JP 2016067221 A JP2016067221 A JP 2016067221A JP 2017183960 A JP2017183960 A JP 2017183960A
Authority
JP
Japan
Prior art keywords
packet
switch
address
gateway
ofs
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.)
Pending
Application number
JP2016067221A
Other languages
English (en)
Inventor
英彰 岡本
Hideaki Okamoto
英彰 岡本
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 JP2016067221A priority Critical patent/JP2017183960A/ja
Publication of JP2017183960A publication Critical patent/JP2017183960A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】スイッチに接続されている端末にアクセスが集中する場合であっても、そのスイッチに設定されるフローエントリの数の増加を防止することができるスイッチ制御装置を提供する。【解決手段】フローエントリ設定手段52は、中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットをそのゲートウェイスイッチに転送することを規定したフローエントリを設定する。また、フローエントリ設定手段52は、ゲートウェイスイッチからパケットを受信したときに、そのゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、その端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する。【選択図】図15

Description

本発明は、パケットを転送するスイッチを制御するスイッチ制御装置、スイッチ制御方法およびスイッチ制御プログラムに関する。
パケットを転送するスイッチを制御装置が制御するプロトコルとして、オープンフロー(OpenFlow)が知られている。
オープンフローでは、制御装置がスイッチにフローエントリを設定する。そして、スイッチは、受信したパケットをそのフローエントリに従って処理する。フローエントリとは、パケットをどのように処理するか(例えば、パケットをどこに転送するか等)を規定した情報である。フローエントリは、パケットのフロー毎に設定される。スイッチがパケットを受信したときに、そのパケットのフローに対応するフローエントリが存在する場合、スイッチは、そのフローエントリに従ってそのパケットを処理する。一方、受信したパケットのフローに対応するフローエントリが存在しない場合、スイッチは、そのパケットを制御装置に送信する。そして、制御装置は、そのパケットのフローに対応するフローエントリ決定し、スイッチに設定する。
オープンフローにおいて、制御装置とスイッチとが送受信するメッセージの例として「パケットイン(Packet_in )」、「パケットアウト(Packet_out)」等がある。
「パケットイン」は、スイッチから制御装置に送られるメッセージである。「パケットイン」は、対応するフローエントリが存在しなかったパケットをスイッチから制御装置に送るために用いられる。
「パケットアウト」は、制御装置からスイッチに送られるメッセージである。「パケットアウト」は、ポートからのパケット出力を指示するメッセージである。
なお、個々のスイッチは、それぞれ、制御装置と、専用の経路で接続される。この専用の経路は、制御チャネルと呼ばれる。制御装置は、個々のスイッチと、制御チャネルを介して通信する。
特許文献1には、ネットワーク上に物理的に分散配備された制御信号処理部とデータ信号処理部が連携してパケット転送処理を行う機能分散型のパケット転送処理装置に関する技術が記載されている。
特開2008−54129号公報
本明細書では、スイッチに接続され、パケットの送信元や宛先となる装置を端末と記す。
オープンフローで制御されるスイッチを含むネットワークにおいて、いずれかのスイッチに接続される端末に、他の端末からのアクセスが集中する場合がある。
アクセスが集中する端末が接続されているスイッチでは、その端末の通信相手となる端末台数分のフローエントリの設定が必要になる。このとき、通信相手となる端末台数が多いと、そのスイッチに大量のフローエントリを設定する必要が生じる。また、そのフローエントリの数が、スイッチに設定可能なフローエントリの数を超えた場合、スイッチに設定することができないフローエントリが生じる場合もある。
図16は、1つの端末にアクセスが集中するネットワーク構成の例を示す模式図である。図16では、アクセスが集中する端末の例として、DNS(Domain Name System)サーバを例示している。また、その他の端末がパーソナルコンピュータ(以下、PCと記す。)である場合を例示している。また、以下の説明では、オープンフローにおける制御装置をOFCと記し、オープンフローにおけるスイッチをOFSと記す。
図16において、パケット通信の経路を実線で示し、制御チャネルを破線で示している。#とともに記した番号は、OFSのポート番号である。OFC7は、各OFS1〜5にフローエントリを設定する。図16に示す例では、DNSサーバ20に、n台のPC10a〜10nからのアクセスが集中する。この場合、DNSサーバ20が接続されているOFS4に、n個のフローエントリを設定する必要がある。また、OFS4に、アクセスが集中する端末がm台接続されている場合には、n×m個のフローエントリをOFS4に設定する必要がある。
図17は、DNSサーバ20が接続されているOFS4に設定される各フローエントリを示す模式図である。図17では、送信元MAC(Media Access Control)アドレスと宛先MACアドレスとの組に応じたアクションを、宛先となるPC毎に示している。なお、アクションとして示した“Port#1”は、ポート#1からパケットを出力することを意味する。PCの台数がn台であれば、n個のフローエントリがOFS4に設定される。PCの台数が多いと、上述のように、OFS4に大量のフローエントリを設定する必要が生じたり、OFS4に設定することができないフローエントリが生じたりする。
OFS4に設定するフローエントリの数を減らすために、DNSサーバ20を複数のOFSに分散させることが考えられるが、その場合、ネットワーク設計の難易度が高くなってしまう。
そこで、本発明は、スイッチに接続されている端末にアクセスが集中する場合であっても、そのスイッチに設定されるフローエントリの数の増加を防止することができるスイッチ制御装置、スイッチ制御方法およびスイッチ制御プログラムを提供することを目的とする。
本発明によるスイッチ制御装置は、サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ、およびゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、パケットに対するアクションを規定したフローエントリを設定するフローエントリ設定手段を備え、フローエントリ設定手段が、中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットをそのゲートウェイスイッチに転送することを規定したフローエントリを、中継スイッチ以外のゲートウェイスイッチ毎に設定し、ゲートウェイスイッチからパケットを受信したときに、そのゲートウェイスイッチに対して、パケットの送信元の端末を宛先とするパケットをその端末に転送することを規定したフローエントリを設定するとともに、そのゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、その端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定することを特徴とする。
また、本発明によるスイッチ制御方法は、スイッチを制御するスイッチ制御装置が、サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットをそのゲートウェイスイッチに転送することを規定したフローエントリを、中継スイッチ以外のゲートウェイスイッチ毎に設定し、ゲートウェイスイッチからパケットを受信したときに、そのゲートウェイスイッチに対して、パケットの送信元の端末を宛先とするパケットをその端末に転送することを規定したフローエントリを設定するとともに、そのゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、その端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定することを特徴とする。
また、本発明によるスイッチ制御プログラムは、スイッチを制御するコンピュータに搭載されるスイッチ制御プログラムであって、コンピュータに、サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットをそのゲートウェイスイッチに転送することを規定したフローエントリを、中継スイッチ以外のゲートウェイスイッチ毎に設定する処理、および、ゲートウェイスイッチからパケットを受信したときに、そのゲートウェイスイッチに対して、パケットの送信元の端末を宛先とするパケットをその端末に転送することを規定したフローエントリを設定するとともに、そのゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、その端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する処理を実行させることを特徴とする。
本発明によれば、スイッチに接続されている端末にアクセスが集中する場合であっても、そのスイッチに設定されるフローエントリの数の増加を防止することができる。
管理対象ネットワークの例を示す模式図である。 本発明のスイッチ制御装置の構成例を示すブロック図である。 スイッチ制御装置がGWS情報として記憶する情報の例を示す説明図である。 フロー設定処理部が中継スイッチに対して設定するフローエントリの例を示す説明図である。 通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当する場合の処理経過の例を示す説明図である。 通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当する場合の処理経過の例を示す説明図である。 ステップS3で設定されるフローエントリの例を示す説明図である。 ステップS8で設定されるフローエントリの例を示す説明図である。 通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当しない場合の処理経過の例を示す説明図である。 通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当しない場合の処理経過の例を示す説明図である。 通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当しない場合の処理経過の例を示す説明図である。 ステップT3aで設定されるフローエントリの例を示す説明図である。 ステップT3bで設定されるフローエントリの例を示す説明図である。 ステップT8で設定されるフローエントリの例を示す説明図である。 本発明のスイッチ制御装置の概要を示すブロック図である。 1つの端末にアクセスが集中するネットワーク構成の例を示す模式図である。 図16に示すDNSサーバが接続されているOFSに設定される各フローエントリを示す模式図である。
以下、本発明の実施形態を図面を参照して説明する。
既に述べたように、本明細書では、スイッチに接続され、パケットの送信元や宛先となる装置を端末と記す。
本発明のスイッチ制御装置は、オープンフローにおける制御装置に該当する。以下の説明においても、オープンフローにおける制御装置をOFCと記し、オープンフローにおけるスイッチをOFSと記す。
本発明のスイッチ制御装置は、管理対象ネットワークのIP(Internet Protocol )アドレス帯域を、複数のサブネットワークに分割する。そして、スイッチ制御装置は、分割されたサブネットワークのIPアドレス(IPアドレス帯域)を、OFSに対応付ける。サブネットワークのIPアドレスに対応付けられたOFSを、ゲートウェイスイッチまたはGWS(Gateway Switch)と記す。
また、GWS間でパケットを中継するスイッチを中継スイッチと記す。中継スイッチがGWSであってもよい。
図1は、管理対象ネットワークの例を示す模式図である。図1において、実線で示した経路および一点鎖線で示した経路は、パケットの転送経路である。実線で示した経路は、中継スイッチを経由してパケットを転送する際に用いる経路である。一点鎖線で示した経路は、中継スイッチを経由せずに、GWS間で直接、パケットを転送する際に用いる経路である。また、破線で示した経路は制御チャネルである。なお、管理対象ネットワークのトポロジは、図1に示すトポロジに限定されない。また、図1において、#とともに記した番号は、OFSのポート番号である。
本発明のスイッチ制御装置(OFC)700は、各OFS100〜500に対してフローエントリを設定する。
OFS100,200,300,400,500は、GWSであるとする。
また、OFS500は、GWS間でパケットを中継する中継スイッチである。図1に示す例では、中継スイッチ(OFS500)のポート#1,#2,#3,#4はそれぞれ、OFS100,200,300,400に接続されている。
また、図1に示す例では、OFS100には、端末としてPC11a,11bが接続されている。OFS200,300にも、端末としてPCが接続されている。OFS400には、端末としてDNSサーバ30が接続されている。
PC11aは、OFS100のポート#Xに接続されている。PC11bは、OFS100のポート#Yに接続されている。DNSサーバ30は、OFS400のポート#Zに接続されている。
また、OFS200のポート#Wに、OFS100が接続されている。
図1において、OFS100,200,300,400の近傍に記載したアドレスは、それぞれ、OFS100,200,300,400に対応するサブネットワークのアドレスである。
以下の説明においても、図1に示すOFS100〜500等を例にして説明する。
スイッチ制御装置700は、送信元MACアドレスと、GWSに対応するサブネットワークのIPアドレスとの組に、アクションを対応付けたフローエントリを、端末に接続されているGWSに設定する。
図2は、本発明のスイッチ制御装置の構成例を示すブロック図である。本発明のスイッチ制御装置700は、通信処理部305と、コンフィグ設定部310と、コンフィグ情報管理部320と、フロー設定処理部340と、経路計算処理部350と、トポロジ情報受付部360と、トポロジ情報管理部370と、ステーション情報受付部390と、ステーション情報管理部405と、GWS管理部430とを備える。
通信処理部305は、各OFSと通信するための通信インタフェースである。例えば、通信処理部305は、各OFSとの間でパケットを送受信する。
コンフィグ設定部310は、コンフィグ情報をコンフィグ情報管理部320に書き込むためのユーザインタフェースである。コンフィグ情報は、管理対象ネットワークのIPアドレス帯域を示す情報である。
コンフィグ情報管理部320は、例えば、メモリを備え、コンフィグ設定部310を介してユーザから指定されたコンフィグ情報(管理対象ネットワークのIPアドレス帯域)を、そのメモリに書き込む。
スイッチ制御装置700と各OFSとが接続されると、各OFSは、LLDP(Link Layer Discovery Protocol )等の標準的な方法でOFSのネットワークのトポロジを検出し、トポロジ情報をスイッチ制御装置700に通知する。トポロジ情報受付部360は、各OFSから通知されたトポロジ情報を、通信処理部305を介して受け取り、そのトポロジ情報の書き込みをトポロジ情報管理部370に指示する。
トポロジ情報管理部370は、例えば、メモリを備え、トポロジ情報受付部360の指示に従って、トポロジ情報受付部360が各OFSから受け取ったトポロジ情報を、そのメモリに書き込む。
経路計算処理部350は、コンフィグ情報管理部320からコンフィグ情報330を取得し、トポロジ情報管理部370からトポロジ情報380を取得する。前述のように、コンフィグ情報330は、管理対象ネットワークのIPアドレス帯域を示す情報である。経路計算処理部350は、トポロジ情報380およびコンフィグ情報330に基づいて、管理対象ネットワーク内のどのOFSをGWSとするかを決定し、また、管理対象ネットワークのIPアドレス帯域をどのように分割するかを決定する。さらに、経路計算処理部350は、GWSと決定したOFSに、分割によって得られるどのサブネットワークのIPアドレス(IPアドレス帯域)を対応付けるかを決定する。経路計算処理部350が決定する上記の内容を示す情報を、GWS情報と記す。経路計算処理部350は、GWS情報420の書き込みをGWS管理部430に指示する。
GWS管理部430は、例えば、メモリを備え、経路計算処理部350の指示に従ってGWS情報420をそのメモリに書き込む。
図3は、スイッチ制御装置(OFC)700がGWS情報420として記憶する情報の例を示す説明図である。図3では、例えば、OFS100,200,300,400がGWSとして決定されたことを意味している。また、例えば、OFS100には、IPアドレス帯域が“192.168.0.0/26”であるサブネットワークが対応付けられたことを意味している。なお、経路計算処理部350は、OFS500もGWSとして決定してもよい。
また、経路計算処理部350は、トポロジ情報380に基づいて中継スイッチも決定し、中継スイッチに該当するOFSを示す情報の書き込みもGWS管理部430に指示する。本実施形態では、OFS500が中継スイッチとして決定された場合を例にして説明する。
端末に接続されているGWSは、端末からパケットを受信したときに、そのパケットに対応するフローエントリがそのGWSに設定されていない場合、そのパケットを「パケットイン」メッセージとともに、スイッチ制御装置700に送信する。このとき、GWSは、ステーション情報もスイッチ制御装置700に送信する。ステーション情報は、パケットの送信元の端末のMACアドレスと、その端末に接続されたOFSのDPID(Datapath ID )/ポート番号との組を示す情報である。
ステーション情報受付部390は、端末が接続されている各OFSから通知されたステーション情報を、通信処理部305を介して受け取り、そのステーション情報の書き込みをステーション情報管理部405に指示する。
ステーション情報管理部405は、例えば、メモリを備える。そして、ステーション情報管理部405は、端末が接続されている各OFSからステーション情報受付部390が受け取ったステーション情報を、ステーション情報受付部390の指示に従って、そのメモリに書き込む。ステーション情報は、GWSに接続されている端末のアドレス(MACアドレス)を示していると言うことができる。従って、ステーション情報管理部405は、GWSに接続されている端末のアドレスを記憶する端末アドレス記憶手段と称することもできる。
フロー設定処理部340は、端末が接続されているOFSが「パケットイン」メッセージとともに送信したパケットを、通信処理部305を介して受け取る。そして、フロー設定処理部340は、「パケットイン」メッセージとともに送信されたステーション情報、経路計算処理部350が把握しているトポロジ情報380およびGWS情報420に基づいて、そのパケットを送信したOFSに設定するフローエントリを生成する。そして、フロー設定処理部340は、通信処理部305を介して、そのOFSにフローエントリを送信することによって、そのOFSにフローエントリを設定する。
コンフィグ情報管理部320、トポロジ情報受付部360、トポロジ情報管理部370、ステーション情報受付部390、ステーション情報管理部405、経路計算処理部350、GWS管理部430およびフロー設定処理部340は、例えば、スイッチ制御プログラムに従って動作するコンピュータのCPUによって実現される。この場合、CPUは、例えば、コンピュータのプログラム記憶装置(図示略)等のプログラム記録媒体からスイッチ制御プログラムを読み込み、そのスイッチ制御プログラムに従って、コンフィグ情報管理部320、トポロジ情報受付部360、トポロジ情報管理部370、ステーション情報受付部390、ステーション情報管理部405、経路計算処理部350、GWS管理部430およびフロー設定処理部340として動作すればよい。また、コンフィグ情報管理部320、トポロジ情報受付部360、トポロジ情報管理部370、ステーション情報受付部390、ステーション情報管理部405、経路計算処理部350、GWS管理部430およびフロー設定処理部340が別々のハードウェアによって実現されていてもよい。
次に、本発明の処理経過の例について説明する。
まず、事前準備に該当する処理について説明する。コンフィグ情報管理部320は、スイッチ制御装置700のユーザからコンフィグ設定部310を介して、コンフィグ情報を指定される。すると、コンフィグ情報管理部320は、そのコンフィグ情報をメモリに書き込む。この結果、コンフィグ情報管理部320は、例えば、管理対象ネットワークのIPアドレス帯域が“192.168.0.0/24(図1参照)”であることを示すコンフィグ情報を記憶する。
また、スイッチ制御装置700と各OFSとが接続されると、各OFSは、LLDP等の標準的な方法でOFSのネットワークのトポロジを検出し、トポロジ情報をスイッチ制御装置700に通知する。トポロジ情報受付部360は、各OFSから通知されたトポロジ情報の書き込みをトポロジ情報管理部370に指示する。トポロジ情報管理部370は、この指示に従い、メモリにトポロジ情報を書き込む。この結果、トポロジ情報管理部370は、OFSのネットワークのトポロジ情報を記憶する。
コンフィグ情報、およびOFSのネットワークのトポロジ情報が記憶された後、経路計算処理部350は、そのトポロジ情報およびコンフィグ情報に基づいて、管理対象ネットワーク内のどのOFSをGWSとするかを決定し、また、管理対象ネットワークのIPアドレス帯域をどのように分割するかを決定する。さらに、経路計算処理部350は、GWSと決定したOFSに、分割によって得られるどのサブネットワークのIPアドレス(IPアドレス帯域)を対応付けるかを決定する。経路計算処理部350は、この決定結果を示すGWS情報420の書き込みをGWS管理部430に指示する。本例では、OFS100,200,300,400,500がGWSとして決定されたものして説明する。また、OFS100,200,300,400とサブネットワークのIPアドレスとの対応関係が、図3に示すように決定されたものとする。
また、経路計算処理部350は、トポロジ情報に基づいて中継スイッチも決定し、中継スイッチに該当するOFSを示す情報の書き込みもGWS管理部430に指示する。本実施形態では、スイッチ500が中継スイッチとして決定されたものとして説明する。
GWSとサブネットワークのIPアドレスとの対応関係、および中継スイッチが決定されると、フロー設定処理部340は、GWSに対応するサブネットワークのIPアドレス(IPアドレス帯域)と、そのIPアドレスに対応するアクションを規定したフローエントリを、GWS(ただし、中継スイッチであるOFS500は除く。)毎に作成し、中継スイッチ(OFS500)にそのフローエントリを設定する。フロー設定処理部340は、アクションとして、フローエントリ内に記述したIPアドレスに対応するGWSにパケットを転送する旨を記述する。
フロー設定処理部340が中継スイッチ(OFS500)に対して設定するフローエントリの例を図4に示す。図4において、例えば、“Port#1”は、ポート#1からパケットを出力することを意味する。例えば、図4に示す1番目のフローエントリは、宛先アドレスが“192.168.0.0/26”に該当しているパケットを、ポート#1から出力することを規定している。OFS500のポート#1は、OFS100に接続されている(図1参照)。従って、OFS500のポート#1からパケットを出力するということは、OFS100にパケットを転送することを意味する。ここでは、図4に示す1番目のフローエントリを例にして説明したが、図4に示す他の3つのフローエントリは、OFS200,300,400に対応する同様のフローエントリである。
フロー設定処理部340は、中継スイッチに対して、GWSに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットをそのGWSに転送することを規定したフローエントリを、中継スイッチ以外のGWS毎に設定している。フロー設定処理部340は、OFS500に向けてパケットを転送する旨を規定したフローエントリをOFS500に設定する必要はない。
以上が、事前準備に該当する処理である。
次に、端末間の通信が発生したときの処理経過について説明する。ここでは、まず、通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当する場合について説明する。
図5および図6は、通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当する場合の処理経過の例を示す説明図である。なお、図5および図6は、図1の一部を抜き出し、ステップ番号を付加した図である。
ここでは、PC11aのIPアドレスが、PC11aが接続されているGWS(OFS100)に対応するサブネットワークのIPアドレスに該当し、DNSサーバ30のIPアドレスが、DNSサーバ30が接続されているGWS(OFS400)に対応するサブネットワークのIPアドレスに該当しているものとして説明する。
まず、PC11aが、PC11aを送信元としDNSサーバ30を宛先とするパケットをOFS100に送信する(図5に示すステップS1)。
OFS100には、このパケットに対応するフローエントリはまだ設定されていないものとする。この場合、OFS100は、そのパケットを「パケットイン」メッセージとともに、スイッチ制御装置700に送信する(図5に示すステップS2)。このとき、OFS100は、PC11aおよびOFS100に関するステーション情報もスイッチ制御装置700に送信する。
スイッチ制御装置700のフロー設定処理部340は、そのパケットおよびステーション情報を受け取ると、「パケットイン」メッセージを送信したOFS100に設定するフローエントリを作成し、OFS100に対してそのフローエントリを設定する(図5に示すステップS3)。図7は、ステップS3でOFS100に設定されるフローエントリの例を示す説明図である。
フロー設定処理部340は、OFS100から受け取ったステーション情報から、パケットの送信元の端末であるPC11aが、OFS100のポート#Xに接続されていることを認識する。フロー設定処理部340は、そのステーション情報に基づいて、パケットの送信元の端末(本例ではPC11a)を宛先とするパケットをその端末に転送することを規定したフローエントリをOFS100に対して設定する。図7に示す1番目のフローエントリは、このフローエントリである。図7に示す1番目のフローエントリは、宛先MACアドレスおよび宛先IPアドレスがPC11aのMACアドレスおよびIPアドレスに合致するパケットをポート#Xから出力する(すなわち、PC11aに転送する)ことを規定している。
さらに、フロー設定処理部340は、OFS100に対して、OFS100以外のGWS毎に、その端末を送信元とし、GWSに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する。図7に示す2番目から4番目までの3つのフローエントリが、このフローエントリである。例えば、図7に示す2番目のフローエントリは、送信元MACアドレスがPC11aのMACアドレスであり、宛先IPアドレスが、OFS200に対応するサブネットワークのアドレス(“192.168.0.64/26 ”)に該当するパケットを、ポート#1から出力する(すなわち、中継スイッチに転送する)ことを規定している。図7に示す3番目および4番目のフローエントリは、OFS300,400に対応する同様のフローエントリである。
また、スイッチ制御装置700のステーション情報受付部390は、OFS100から受け取ったステーション情報をステーション情報管理部405に記憶させる。
ステップS3の後、フロー設定処理部340は、「パケットイン」メッセージとともに受信したパケットの宛先MACアドレスを有する端末が、どのGWSのどのポートに接続されているかを、ステーション情報管理部405に記憶されているステーション情報410に基づいて検査する。ただし、ここでは、パケットの宛先MACアドレスを有する端末(DNSサーバ30)は、ステーション情報をスイッチ制御装置700に送信していない。そのため、フロー設定処理部340は、「パケットイン」メッセージとともに受信したパケットの宛先MACアドレスを有する端末が、どのGWSのどのポートに接続されているかを特定できない。この場合、フロー設定処理部340は、ステップS2でOFS100から受け取ったパケットと、そのパケットをブロードキャスト送信することを示す「パケットアウト」メッセージとを、全てのGWSに送信する(図6に示すステップS4)。
このフロー設定処理部340の動作は、GWSからパケットを受信したときに、そのパケットの宛先アドレスがステーション情報管理部405に記憶されていない場合、全てのGWSにそのパケットをブロードキャスト送信させる動作であると言うことができる。
OFS400は、その「パケットアウト」メッセージに基づき、OFS400のポート#Zからパケットを出力する(図6に示すステップS5)。この結果、DNSサーバ30は、PC11aを送信元とするパケットを、OFS400から受信する。
DNSサーバ30は、PC11aを送信元とするパケットを受信すると、PC11aへの応答として、DNSサーバ30を送信元としPC11aを宛先とするパケットを、OFS400に送信する(図6に示すステップS6)。
OFS400には、このパケットに対応するフローエントリはまだ設定されていないものとする。この場合、OFS400は、そのパケットを「パケットイン」メッセージとともに、スイッチ制御装置700に送信する(図6に示すステップS7)。このとき、OFS400は、DNSサーバ30およびOFS400に関するステーション情報もスイッチ制御装置700に送信する。
スイッチ制御装置700のフロー設定処理部340は、そのパケットおよびステーション情報を受け取ると、「パケットイン」メッセージを送信したOFS400に設定するフローエントリを作成し、OFS400に対してそのフローエントリを設定する(図6に示すステップS8)。図8は、ステップS8でOFS400に設定されるフローエントリの例を示す説明図である。
フロー設定処理部340は、OFS400から受け取ったステーション情報から、パケットの送信元の端末であるDNSサーバ30が、OFS400のポート#Zに接続されていることを認識する。フロー設定処理部340は、そのステーション情報に基づいて、パケットの送信元の端末(本例ではDNSサーバ30)を宛先とするパケットをその端末に転送することを規定したフローエントリをOFS400に対して設定する。図8に示す1番目のフローエントリは、このフローエントリである。図8に示す1番目のフローエントリは、宛先MACアドレスおよび宛先IPアドレスがDNSサーバ30のMACアドレスおよびIPアドレスに合致するパケットをポート#Zから出力する(すなわち、DNSサーバ30に転送する)ことを規定している。
さらに、フロー設定処理部340は、OFS400に対して、OFS400以外のGWS毎に、その端末を送信元とし、GWSに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する。図8に示す2番目から4番目までの3つのフローエントリが、このフローエントリである。例えば、図8に示す2番目のフローエントリは、送信元MACアドレスがDNSサーバ30のMACアドレスであり、宛先IPアドレスが、OFS100に対応するサブネットワークのアドレス(“192.168.0.0/26”)に該当するパケットを、ポート#1から出力する(すなわち、中継スイッチに転送する)ことを規定している。図8に示す3番目および4番目のフローエントリは、OFS200,300に対応する同様のフローエントリである。
また、スイッチ制御装置700のステーション情報受付部390は、OFS400から受け取ったステーション情報をステーション情報管理部405に記憶させる。
ステップS8の後、フロー設定処理部340は、「パケットイン」メッセージとともに受信したパケットの宛先MACアドレスを有する端末(ここでは、PC11a)が、どのGWSのどのポートに接続されているかを、ステーション情報管理部405に記憶されているステーション情報410に基づいて検査する。PC11aがOFS100のポート#Xに接続されていることを示すステーション情報は、既にステーション情報管理部405に記憶されている。従って、フロー設定処理部340は、パケットの宛先MACアドレスを有する端末(PC11a)がOFS100のポート#Xに接続されていることを認識する。そして、フロー設定処理部340は、ステップS7でOFS400から受け取ったパケットと、そのパケットをポート#Xから出力することを示す「パケットアウト」メッセージとを、OFS100(パケットの宛先MACアドレスを有する端末に接続されているGWS)に送信する(図5に示すステップS9)。
OFS100は、その「パケットアウト」メッセージに基づき、OFS100のポート#Xからパケットを出力する(図5に示すステップS10)。この結果、PC11aは、DNSサーバ30を送信元とするパケットを、OFS100から受信する。
上記のステップS1〜S10の処理以後、ステップS1〜S10の過程でGWS(OFS100,400)に設定されたフローエントリと、事前準備の段階で中継スイッチ(OFS500)に設定されたフローエントリとにより、GWSが、PC11aおよびDNSサーバ30とが送受信するパケットを転送することができる。
例えば、OFS100が、PC11aからDNSサーバ30宛てのパケットを受信したとする。このパケットの宛先IPアドレス(DNSサーバ30のIPアドレス)は、OFS400に対応するサブネットワークのIPアドレス(“192.168.0.192/26”)に該当する。従って、OFS100は、図7に示す4番目のフローエントリに従い、ポート#1からパケットを出力する。中継スイッチ(OFS500)は、このパケットを受信すると、事前準備の段階でOFS500に設定されたフローエントリ(具体的には、図4に示す4番目のフローエントリ)に従い、ポート#4からパケットを出力する。OFS400は、このパケットを受信すると、図8に示す1番目のフローエントリに従い、ポート#Zからパケットを出力する。この結果、DNSサーバ30にパケットが到達する。
また、例えば、OFS400が、DNSサーバ30からPC11a宛てのパケットを受信したとする。このパケットの宛先IPアドレス(PC11aのIPアドレス)は、OFS100に対応するサブネットワークのIPアドレス(“192.168.0.0/26”)に該当する。従って、OFS400は、図8に示す2番目のフローエントリに従い、ポート#1からパケットを出力する。中継スイッチ(OFS500)は、このパケットを受信すると、事前準備の段階でOFS500に設定されたフローエントリ(具体的には、図4に示す1番目のフローエントリ)に従い、ポート#1からパケットを出力する。OFS100は、このパケットを受信すると、図7に示す1番目のフローエントリに従い、ポート#Xからパケットを出力する。この結果、PC11aにパケットが到達する。
次に、通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当しない場合について説明する。
図9、図10および図11は、通信を行う端末のアドレスが、その端末に接続されているGWSに対応するサブネットワークのアドレスに該当しない場合の処理経過の例を示す説明図である。なお、図9、図10および図11は、図1の一部を抜き出し、ステップ番号を付加した図である。
ここでは、PC11bのIPアドレスが、PC11bが接続されているGWS(OFS100)に対応するサブネットワークのIPアドレスに該当していないものとして説明する。また、PC11bのIPアドレスは、OFS200に対応するサブネットワークのIPアドレスに該当しているものとする。なお、DNSサーバ30のIPアドレスは、上記の場合と同様に、DNSサーバ30が接続されているGWS(OFS400)に対応するサブネットワークIPアドレスに該当しているものとする。
まず、PC11bが、PC11bを送信元としDNSサーバ30を宛先とするパケットをOFS100に送信する(図9に示すステップT1)。
OFS100には、このパケットに対応するフローエントリはまだ設定されていないものとする。この場合、OFS100は、そのパケットを「パケットイン」メッセージとともに、スイッチ制御装置700に送信する(図9に示すステップT2)。このとき、OFS100は、PC11bおよびOFS100に関するステーション情報もスイッチ制御装置700に送信する。
スイッチ制御装置700のフロー設定処理部340は、そのパケットおよびステーション情報を受け取ると、「パケットイン」メッセージを送信したOFS100に設定するフローエントリを作成し、OFS100に対してそのフローエントリを設定する(図9に示すステップT3a)。図12は、ステップT3aでOFS100に設定されるフローエントリの例を示す説明図である。
フロー設定処理部340は、OFS100から受け取ったステーション情報から、パケットの送信元の端末であるPC11bが、OFS100のポート#Yに接続されていることを認識する。フロー設定処理部340は、そのステーション情報に基づいて、パケットの送信元の端末(本例ではPC11b)を宛先とするパケットをその端末に転送することを規定したフローエントリをOFS100に対して設定する。図12に示す1番目のフローは、このフローエントリである。図12に示す1番目のフローエントリは、宛先MACアドレスおよび宛先IPアドレスがPC11bのMACアドレスおよびIPアドレスに合致するパケットをポート#Yから出力する(すなわち、PC11bに転送する)ことを規定している。
さらに、フロー設定処理部340は、OFS100に対して、OFS100以外のGWS毎に、その端末を送信元とし、GWSに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する。図12に示す2番目から4番目までの3つのフローエントリが、このフローエントリである。例えば、図12に示す2番目のフローエントリは、送信元MACアドレスがPC11bのMACアドレスであり、宛先IPアドレスが、OFS200に対応するサブネットワークのアドレス(“192.168.0.64/26 ”)に該当するパケットを、ポート#1から出力する(すなわち、中継スイッチに転送する)ことを規定している。図12に示す3番目および4番目のフローエントリは、OFS300,400に対応する同様のフローエントリである。
また、スイッチ制御装置700のステーション情報受付部390は、OFS100から受け取ったステーション情報をステーション情報管理部405に記憶させる。
また、フロー設定処理部340は、ステップT2でOFS100から受け取ったパケットの送信元IPアドレスを参照し、その送信元IPアドレス(PC11bのIPアドレス)が、ステップT2でそのパケットを送信したOFS100に対応するサブネットワークのアドレス(“192.168.0.0/26”)に該当しないことを認識する。この場合、フロー設定処理部340は、そのパケットの送信元IPアドレスが該当するサブネットワークに対応するGWSに対して、ステップT2でそのパケットを送信したGWS(OFS100)にそのパケットの送信元アドレスを宛先とするパケットを転送することを規定したフローエントリを設定する(図10に示すステップT3b)。ステップT3bにおいて、まず、フロー設定処理部340は、そのパケットの送信元IPアドレスが該当するサブネットワークに対応するGWSを、GWS情報420に基づいて特定する。ここでは、パケットの送信元IPアドレスは、PC11bのIPアドレスである。そして、PC11bのIPアドレスは、OFS200に対応するサブネットワークのIPアドレスに該当している。従って、フロー設定処理部340は、パケットの送信元IPアドレスが該当するサブネットワークに対応するGWSとして、OFS200を特定する。そして、フロー設定処理部340は、OFS200に対して、ステップT2でそのパケットを送信したGWS(OFS100)にそのパケットの送信元アドレスを宛先とするパケットを転送することを規定したフローエントリを設定する。
図13は、ステップT3bでOFS200に設定されるフローエントリの例を示す説明図である。図13に示すフローエントリは、宛先MACアドレスおよび宛先IPアドレスが、ステップT2でOFS100から受け取ったパケットの送信元MACアドレスおよび送信元IPアドレス(すなわち、PC11bのMACアドレスおよびIPアドレス)に合致するパケットをポート#Wから出力する(すなわち、OFS100に転送する)ことを規定している。
ステップT3bの後、フロー設定処理部340は、「パケットイン」メッセージとともに受信したパケットの宛先MACアドレスを有する端末が、どのGWSのどのポートに接続されているかを、ステーション情報管理部405に記憶されているステーション情報410に基づいて検査する。ただし、ここでは、パケットの宛先MACアドレスを有する端末(DNSサーバ30)は、ステーション情報をスイッチ制御装置700に送信していない。そのため、フロー設定処理部340は、「パケットイン」メッセージとともに受信したパケットの宛先MACアドレスを有する端末が、どのGWSのどのポートに接続されているかを特定できない。この場合、フロー設定処理部340は、ステップT2でOFS100から受け取ったパケットと、そのパケットをブロードキャスト送信することを示す「パケットアウト」メッセージとを、全てのGWSに送信する(図11に示すステップT4)。
ステップT4の動作は、ステップS4と同様の動作であり、GWSからパケットを受信したときに、そのパケットの宛先アドレスがステーション情報管理部405に記憶されていない場合、全てのGWSにそのパケットをブロードキャスト送信させる動作であると言うことができる。
OFS400は、その「パケットアウト」メッセージに基づき、OFS400のポート#Zからパケットを出力する(図11に示すステップT5)。この結果、DNSサーバ30は、PC11bを送信元とするパケットを、OFS400から受信する。
DNSサーバ30は、PC11bを送信元とするパケットを受信すると、PC11bへの応答として、DNSサーバ30を送信元としPC11bを宛先とするパケットを、OFS400に送信する(図11に示すステップT6)。
OFS400には、このパケットに対応するフローエントリはまだ設定されていないものとする。この場合、OFS400は、そのパケットを「パケットイン」メッセージとともに、スイッチ制御装置700に送信する(図11に示すステップT7)。このとき、OFS400は、DNSサーバ30およびOFS400に関するステーション情報もスイッチ制御装置700に送信する。
スイッチ制御装置700のフロー設定処理部340は、そのパケットおよびステーション情報を受け取ると、「パケットイン」メッセージを送信したOFS400に設定するフローエントリを作成し、OFS400に対してそのフローエントリを設定する(図11に示すステップT8)。図14は、ステップT8でOFS400に設定されるフローエントリの例を示す説明図である。
フロー設定処理部340は、OFS400から受け取ったステーション情報から、パケットの送信元の端末であるDNSサーバ30が、OFS400のポート#Zに接続されていることを認識する。フロー設定処理部340は、そのステーション情報に基づいて、パケットの送信元の端末(本例ではDNSサーバ30)を宛先とするパケットをその端末に転送することを規定したフローエントリをOFS400に対して設定する。図14に示す1番目のフローエントリは、このフローエントリである。図14に示す1番目のフローエントリは、宛先MACアドレスおよび宛先IPアドレスがDNSサーバ30のMACアドレスおよびIPアドレスに合致するパケットをポート#Zから出力する(すなわち、DNSサーバ30に転送する)ことを規定している。
さらに、フロー設定処理部340は、OFS400に対して、OFS400以外のGWS毎に、その端末を送信元とし、GWSに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する。図14に示す2番目から4番目まえの3つのフローエントリが、このフローエントリである。例えば、図14に示す2番目のフローエントリは、送信元MACアドレスがDNSサーバ30のMACアドレスであり、宛先IPアドレスが、OFS100に対応するサブネットワークのアドレス(“192.168.0.0/26”)に該当するパケットを、ポート#1から出力する(すなわち、中継スイッチに転送する)ことを規定している。図14に示す3番目および4番目のフローエントリは、OFS200,300に対応する同様のフローエントリである。
また、スイッチ制御装置700のステーション情報受付部390は、OFS400から受け取ったステーション情報をステーション情報管理部405に記憶させる。
ステップT8の動作は、前述のステップS8の動作と同様であり、図14に示すフローエントリは、図8に示すフローエントリと同様のフローエントリである。
ステップT8の後、フロー設定処理部340は、「パケットイン」メッセージとともに受信したパケットの宛先MACアドレスを有する端末(ここでは、PC11b)が、どのGWSのどのポートに接続されているかを、ステーション情報管理部405に記憶されているステーション情報410に基づいて検査する。PC11bがOFS100のポート#Yに接続されていることを示すステーション情報は、既にステーション情報管理部405に記憶されている。従って、フロー設定処理部340は、パケットの宛先MACアドレスを有する端末(PC11b)がOFS100のポート#Yに接続されていることを認識する。そして、フロー設定処理部340は、ステップT7でOFS400から受け取ったパケットと、そのパケットをポート#Yから出力することを示す「パケットアウト」メッセージとを、OFS100(パケットの宛先MACアドレスを有する端末に接続されているGWS)に送信する(図9に示すステップT9)。
OFS100は、その「パケットアウト」メッセージに基づき、OFS100のポート#Yからパケットを出力する(図9に示すステップT10)。この結果、PC11bは、DNSサーバ30を送信元とするパケットを、OFS100から受信する。
上記のステップT1〜T10の処理後、ステップT1〜T10の過程でGWS(OFS100,200,400)に設定されたフローエントリと、事前準備の段階で中継スイッチ(OFS500)に設定されたフローエントリとにより、GWSが、PC11bおよびDNSサーバ30とが送受信するパケットを転送することができる。
例えば、OFS100が、PC11bからDNSサーバ30宛てのパケットを受信したとする。このパケットの宛先IPアドレス(DNSサーバ30のIPアドレス)は、OFS400に対応するサブネットワークのIPアドレス(“192.168.0.192/26”)に該当する。従って、OFS100は、図12に示す4番目のフローエントリに従い、ポート#1からパケットを出力する。中継スイッチ(OFS500)は、このパケットを受信すると、事前準備の段階でOFS500に設定されたフローエントリ(具体的には、図4に示す4番目のフローエントリ)に従い、ポート#4からパケットを出力する。OFS400は、このパケットを受信すると、図14に示す1番目のフローエントリに従い、ポート#Zからパケットを出力する。この結果、DNSサーバ30にパケットが到達する。
また、例えば、OFS400が、DNSサーバ30からPC11b宛てのパケットを受信したとする。このパケットの宛先IPアドレス(PC11bのIPアドレス)は、OFS200に対応するサブネットワークのIPアドレス(“192.168.0.64/26 ”)に該当する。従って、OFS400は、図14に示す3番目のフローエントリに従い、ポート#1からパケットを出力する。中継スイッチ(OFS500)は、このパケットを受信すると、事前準備の段階でOFS500に設定されたフローエントリ(具体的には、図4に示す2番目のフローエントリ)に従い、ポート#2からパケットを出力する。OFS200は、このパケットを受信すると、図13に示すフローエントリに従い、ポート#Wからパケットを出力する。この結果、OFS110は、OFS200から、OFS500を介さずにパケットを受信する。そして、OFS100は、図12に示す1番目のフローエントリに従い、ポート#Yからパケットを出力する。この結果、PC11bにパケットが到着する。
次に、本発明の効果について説明する。
まず、本発明において、1つのGWSに設定されるフローエントリの数を説明する。1つのGWSに設定されるフローエントリであって、中継スイッチにパケットを転送することを規定したフローエントリの数は、以下に示す式(1)で表される。
GWSに接続されている端末の数×(GWSの数−1) ・・・(1)
また、1つのGWSに設定されるフローエントリであって、端末にパケットを転送することを規定したフローエントリの数は、GWSに接続されている端末の数である。
従って、1つのGWSに設定されるフローエントリの数は、「GWSに接続されている端末の数×(GWSの数−1)」と「GWSに接続されている端末の数」の合計であり、以下に示す式(2)で表される。
GWSに接続されている端末の数×GWSの数 ・・・(2)
次に、一般的な技術において、1つのOFSに設定されるフローエントリの数を説明する。一般的な技術において1つのOFSに設定されるフローエントリであって、中継スイッチにパケットを転送することを規定したフローエントリの数は、以下に示す式(3)で表される。
OFSに接続されている端末の数×宛先となる端末の数 ・・・(3)
また、一般的な技術において1つのOFSに設定されるフローエントリであって、端末にパケットを転送することを規定したフローエントリの数は、OFSに接続されている端末の数である。
従って、一般的な技術において1つのOFSに設定されるフローエントリの数は、「OFSに接続されている端末の数×宛先となる端末の数」と「OFSに接続されている端末の数」の合計であり、以下に示す式(4)で表される。
OFSに接続されている端末の数×(宛先となる端末の数+1) ・・・(4)
一般的な技術における1つのOFSに設定されるフローエントリの数に対する、本発明における1つのOFSに設定されるフローエントリの数の割合は、以下に示す式(5)で表される。
Figure 2017183960
「GWSに接続されている端末の数」=「OFSに接続されている端末の数」であるので、式(5)は、以下に示す式(6)で表される。
GWSの数/(宛先となる端末の数+1) ・・・(6)
ここで、GWSの数は、例えば、数台から数十台程度である。また、宛先となる端末の数は、例えば、数十台から数百台である。よって、本発明によれば、1つのGWSに設定されるフローエントリの数を、一般的な技術において1つのOFSに設定されるフローエントリの数の1/10から1/100程度に抑えることができる。
従って、本発明によれば、OFSに接続されている端末にアクセスが集中する場合であっても、そのOFSに設定されるフローエントリの数の増加を防止することができる。
次に、本発明の概要について説明する。図15は、本発明のスイッチ制御装置の概要を示すブロック図である。スイッチ制御装置51は、サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ、およびゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、パケットに対するアクションを規定したフローエントリを設定するフローエントリ設定手段52(例えば、フロー設定処理部340)を備える。
フローエントリ設定手段52は、中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットをそのゲートウェイスイッチに転送することを規定したフローエントリを、中継スイッチ以外のゲートウェイスイッチ毎に設定する。
また、フローエントリ設定手段52は、ゲートウェイスイッチからパケットを受信したときに、そのゲートウェイスイッチに対して、パケットの送信元の端末を宛先とするパケットをその端末に転送することを規定したフローエントリを設定する。さらに、フローエントリ設定手段52は、そのゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、その端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを中継スイッチに転送することを規定したフローエントリを設定する。
そのような構成により、スイッチに接続されている端末にアクセスが集中する場合であっても、そのスイッチに設定されるフローエントリの数の増加を防止できる。
フローエントリ設定手段52が、ゲートウェイスイッチからパケットを受信したときに、パケットの送信元アドレスがそのゲートウェイスイッチに対応するサブネットワークのアドレスに該当していない場合、パケットの送信元アドレスに該当するサブネットワークに対応するゲートウェイスイッチに対して、そのパケットを送信したゲートウェイスイッチにそのパケットの送信元アドレスを宛先とするパケットを転送することを規定したフローエントリを設定する構成であってもよい。
ゲートウェイスイッチに接続されている端末のアドレスを記憶する端末アドレス記憶手段(例えば、ステーション情報管理部405)を備え、
フローエントリ設定手段52が、
ゲートウェイスイッチからパケットを受信したときに、そのパケットの宛先アドレスが端末アドレス記憶手段に記憶されていない場合、全てのゲートウェイスイッチにそのパケットをブロードキャスト送信させる構成であってもよい。
本発明は、パケットを転送するスイッチを制御するスイッチ制御装置に好適に適用される。
100,200,300,400,500 OFS
305 通信処理部
310 コンフィグ設定部
320 コンフィグ情報管理部
340 フロー設定処理部
350 経路計算処理部
360 トポロジ情報受付部
370 トポロジ情報管理部
390 ステーション情報受付部
405 ステーション情報管理部
430 GWS管理部

Claims (9)

  1. サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ、およびゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、パケットに対するアクションを規定したフローエントリを設定するフローエントリ設定手段を備え、
    前記フローエントリ設定手段は、
    前記中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを前記ゲートウェイスイッチに転送することを規定したフローエントリを、前記中継スイッチ以外のゲートウェイスイッチ毎に設定し、
    ゲートウェイスイッチからパケットを受信したときに、前記ゲートウェイスイッチに対して、前記パケットの送信元の端末を宛先とするパケットを前記端末に転送することを規定したフローエントリを設定するとともに、前記ゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、前記端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを前記中継スイッチに転送することを規定したフローエントリを設定する
    ことを特徴とするスイッチ制御装置。
  2. フローエントリ設定手段は、
    ゲートウェイスイッチからパケットを受信したときに、前記パケットの送信元アドレスが前記ゲートウェイスイッチに対応するサブネットワークのアドレスに該当していない場合、前記パケットの送信元アドレスに該当するサブネットワークに対応するゲートウェイスイッチに対して、前記パケットを送信したゲートウェイスイッチに前記パケットの送信元アドレスを宛先とするパケットを転送することを規定したフローエントリを設定する
    請求項1に記載のスイッチ制御装置。
  3. ゲートウェイスイッチに接続されている端末のアドレスを記憶する端末アドレス記憶手段を備え、
    フローエントリ設定手段は、
    ゲートウェイスイッチからパケットを受信したときに、前記パケットの宛先アドレスが前記端末アドレス記憶手段に記憶されていない場合、全てのゲートウェイスイッチに前記パケットをブロードキャスト送信させる
    請求項1または請求項2に記載のスイッチ制御装置。
  4. スイッチを制御するスイッチ制御装置が、
    サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを前記ゲートウェイスイッチに転送することを規定したフローエントリを、前記中継スイッチ以外のゲートウェイスイッチ毎に設定し、
    ゲートウェイスイッチからパケットを受信したときに、前記ゲートウェイスイッチに対して、前記パケットの送信元の端末を宛先とするパケットを前記端末に転送することを規定したフローエントリを設定するとともに、前記ゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、前記端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを前記中継スイッチに転送することを規定したフローエントリを設定する
    ことを特徴とするスイッチ制御方法。
  5. スイッチ制御装置が、
    ゲートウェイスイッチからパケットを受信したときに、前記パケットの送信元アドレスが前記ゲートウェイスイッチに対応するサブネットワークのアドレスに該当していない場合、前記パケットの送信元アドレスに該当するサブネットワークに対応するゲートウェイスイッチに対して、前記パケットを送信したゲートウェイスイッチに前記パケットの送信元アドレスを宛先とするパケットを転送することを規定したフローエントリを設定する
    請求項4に記載のスイッチ制御方法。
  6. スイッチ制御装置が、
    ゲートウェイスイッチに接続されている端末のアドレスを端末アドレス記憶手段に記憶し、
    ゲートウェイスイッチからパケットを受信したときに、前記パケットの宛先アドレスが前記端末アドレス記憶手段に記憶されていない場合、全てのゲートウェイスイッチに前記パケットをブロードキャスト送信させる
    請求項4または請求項5に記載のスイッチ制御方法。
  7. スイッチを制御するコンピュータに搭載されるスイッチ制御プログラムであって、
    前記コンピュータに、
    サブネットワークに対応付けられたスイッチであるゲートウェイスイッチ間でパケットを中継する中継スイッチに対して、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを前記ゲートウェイスイッチに転送することを規定したフローエントリを、前記中継スイッチ以外のゲートウェイスイッチ毎に設定する処理、および、
    ゲートウェイスイッチからパケットを受信したときに、前記ゲートウェイスイッチに対して、前記パケットの送信元の端末を宛先とするパケットを前記端末に転送することを規定したフローエントリを設定するとともに、前記ゲートウェイスイッチに対して、当該ゲートウェイスイッチ以外のゲートウェイスイッチ毎に、前記端末を送信元とし、ゲートウェイスイッチに対応するサブネットワークのアドレスに宛先アドレスが該当しているパケットを前記中継スイッチに転送することを規定したフローエントリを設定する処理
    を実行させるためのスイッチ制御プログラム。
  8. コンピュータに、
    ゲートウェイスイッチからパケットを受信したときに、前記パケットの送信元アドレスが前記ゲートウェイスイッチに対応するサブネットワークのアドレスに該当していない場合、前記パケットの送信元アドレスに該当するサブネットワークに対応するゲートウェイスイッチに対して、前記パケットを送信したゲートウェイスイッチに前記パケットの送信元アドレスを宛先とするパケットを転送することを規定したフローエントリを設定する処理を実行させる
    請求項7に記載のスイッチ制御プログラム。
  9. コンピュータに、
    ゲートウェイスイッチに接続されている端末のアドレスを端末アドレス記憶手段に記憶させる処理、および、
    ゲートウェイスイッチからパケットを受信したときに、前記パケットの宛先アドレスが前記端末アドレス記憶手段に記憶されていない場合、全てのゲートウェイスイッチに前記パケットをブロードキャスト送信させる処理を実行させる
    請求項7または請求項8に記載のスイッチ制御プログラム。
JP2016067221A 2016-03-30 2016-03-30 スイッチ制御装置、方法およびプログラム Pending JP2017183960A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016067221A JP2017183960A (ja) 2016-03-30 2016-03-30 スイッチ制御装置、方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016067221A JP2017183960A (ja) 2016-03-30 2016-03-30 スイッチ制御装置、方法およびプログラム

Publications (1)

Publication Number Publication Date
JP2017183960A true JP2017183960A (ja) 2017-10-05

Family

ID=60008692

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016067221A Pending JP2017183960A (ja) 2016-03-30 2016-03-30 スイッチ制御装置、方法およびプログラム

Country Status (1)

Country Link
JP (1) JP2017183960A (ja)

Similar Documents

Publication Publication Date Title
US11134012B2 (en) Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow
US7817637B2 (en) Network switching system
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
US12470487B2 (en) Systems and methods for scalable validation of multiple paths in a network using segment routing
US9660898B2 (en) Enhanced protocol independent multicast source registration over a reliable transport
EP3382955A1 (en) Service function chaining (sfc) communication method and device
US10069648B2 (en) Communication system, control apparatus, communication control method and program
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
WO2013141191A1 (ja) 制御装置、通信システム、ノード制御方法及びプログラム
JP2014161098A (ja) 通信システム、ノード、パケット転送方法およびプログラム
JPWO2014132958A1 (ja) 通信システム、制御装置、通信方法およびプログラム
JP2017503408A (ja) 通信ネットワーク内の制御を提供する方法
JP4599429B2 (ja) 通信システム及び通信方法
JP2017175522A (ja) ネットワークシステム、制御装置、方法およびプログラム
US9948474B2 (en) Network system, packet transmission apparatus, packet transmission method, and recording medium recording information processing program
JP2017183960A (ja) スイッチ制御装置、方法およびプログラム
JP2005286681A (ja) 中継機器
CN108183859B (zh) 一种互联网流量调度方法和系统
JP2017098738A (ja) 制御装置、通信システム、制御方法およびプログラム
JP2008072521A (ja) 通信装置、通信方法及び通信プログラム
KR100772182B1 (ko) 라우터 및 그의 외부 트래픽과 내부 트래픽을 구분한IPv4 패킷 처리 방법
JP3990385B2 (ja) Lan間接続装置およびlan間接続方法
CN109005114B (zh) 一种常规路由与延迟容忍网络融合分布式转发系统和方法
JP5768600B2 (ja) 通信システム、制御装置、パケット転送方法およびプログラム
JP2015115871A (ja) 通信ネットワーク、データ転送経路の設定方法及び通信装置