(57)【要約】      （修正有）【課題】ＯｐｅｎＦｌｏｗプロトコルによりマルチキャストパケットＩＰアドレスとＵＤＰポート番号を変更してアドレス変換を達成し、マルチキャストパケットに非マルチキャストネットワークをトラバースさせる方法を提供する。【解決手段】ネットワークシステムは、予め設定されたＯｐｅｎＦｌｏｗルーチングルールを複数のＯｐｅｎＦｌｏｗスイッチのそれぞれのルーチングテーブルに書き込むＯｐｅｎＦｌｏｗコントローラを備える。マルチキャストパケット送信端から送信する場合、第一のＯｐｅｎＦｌｏｗスイッチを介し、ユニキャストアドレスポート番号を有するユニキャストパケットを生成するように、アドレス変換されたユニキャストパケットを第二のＯｐｅｎＦｌｏｗスイッチに転送し、ユニキャストアドレスポート番号を元のマルチキャストアドレスポート番号に変換した後、マルチキャストパケット受信端に転送することにより、トラバースさせる。【選択図】図１
2019017004.tif 000002
【特許請求の範囲】
【請求項１】
ＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステムであって、
非マルチキャストネットワークを介して互いに接続される複数のＯｐｅｎＦｌｏｗスイッチと、
アドレス変換に用いられるユニキャストアドレスポート番号を格納するアドレスポート番号データベースと、
前記アドレスポート番号データベースに接続され、各前記複数のＯｐｅｎＦｌｏｗスイッチにルーチングをさせるように、予め設定されたＯｐｅｎＦｌｏｗルーチングルールを前記複数のＯｐｅｎＦｌｏｗスイッチのそれぞれのルーチングテーブルに書き込むＯｐｅｎＦｌｏｗコントローラと、
を備え、
マルチキャストパケット送信端からマルチキャストパケットを送信する場合、前記マルチキャストパケットは、前記複数のＯｐｅｎＦｌｏｗスイッチのうちの第一のＯｐｅｎＦｌｏｗスイッチを介し、前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットにおけるマルチキャストアドレスポート番号を前記複数のＯｐｅｎＦｌｏｗスイッチのうちの第二のＯｐｅｎＦｌｏｗスイッチのユニキャストアドレスポート番号に変換することにより、前記ユニキャストアドレスポート番号を有するユニキャストパケットを生成し、前記非マルチキャストネットワークは、アドレス変換された前記ユニキャストパケットを前記複数の第二のＯｐｅｎＦｌｏｗスイッチに転送し、前記複数の第二のＯｐｅｎＦｌｏｗスイッチは、前記ユニキャストパケットにおける前記ユニキャストアドレスポート番号を元の前記マルチキャストアドレスポート番号に変換した後、それぞれをマルチキャストネットワークにおけるマルチキャストパケット受信端に転送する、システム。
【請求項２】
前記ＯｐｅｎＦｌｏｗルーチングルールは、前記マルチキャストアドレスポート番号と前記ユニキャストアドレスポート番号の変換を含む、請求項１に記載のシステム。
【請求項３】
前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットの送信先ＩＰアドレスとＵＤＰポート番号が前記ＯｐｅｎＦｌｏｗルーチングルールに符合しないと判断すると、前記マルチキャストパケットを前記ＯｐｅｎＦｌｏｗコントローラに転送し、前記ＯｐｅｎＦｌｏｗコントローラは、前記マルチキャストパケットのソースが属するマルチキャストネットワークに基づいて、前記アドレスポート番号データベースの中から前記マルチキャストネットワークおよび前記マルチキャストネットワークの境界スイッチにルーチングできる使用可能ユニキャストのポート番号を取得することにより、前記ＯｐｅｎＦｌｏｗルーチングルールを更新する、請求項１に記載のシステム。
【請求項４】
前記ＯｐｅｎＦｌｏｗルーチングルールの更新は、前記ＯｐｅｎＦｌｏｗコントローラが、ＯｐｅｎＦｌｏｗプロトコルにより、前記マルチキャストパケットのマルチキャストアドレスポート番号と取得したユニチキャストアドレスポート番号との変換関係を前記第一のＯｐｅｎＦｌｏｗスイッチに書き込むことと、前記ＯｐｅｎＦｌｏｗコントローラが、前記ＯｐｅｎＦｌｏｗプロトコルにより、前記ユニキャストアドレスポート番号と前記マルチチキャストパケットのマルチチキャストアドレスポート番号との変換関係を前記複数の第二のＯｐｅｎＦｌｏｗスイッチに書き込むことを含む、請求項３に記載のシステム。
【請求項５】
前記使用可能ユニキャストアドレスは、前記非マルチキャストネットワークにおいてユニキャストＩＰアドレスを提供し、前記マルチキャストネットワークへルーチングする境界スイッチである、請求項３に記載のシステム。
【請求項６】
ＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせる方法において、
マルチキャストパケット送信端がマルチキャストパケットを生成し、マルチキャストネットワークにおいてマルチキャストルーチングを行なうステップと、
マルチキャストパケットを前記マルチキャストネットワークの境界にある第一のＯｐｅｎＦｌｏｗスイッチに送信するステップと、
前記第一のＯｐｅｎＦｌｏｗスイッチは、予め格納された第一のＯｐｅｎＦｌｏｗルーチングルールに基づいて、前記マルチキャストパケットのマルチキャストアドレスポート番号を非マルチキャストネットワークにルーチング可能なユニキャストアドレスポート番号に変換することにより、前記ユニキャストアドレスポート番号のユニキャストパケットを生成するステップと、
前記ユニキャストパケットは前記ユニキャストアドレスポート番号を用いて前記非マルチキャストネットワークにおいてルーチング送信を行なうステップと、
前記ユニキャストパケットを複数の第二のＯｐｅｎＦｌｏｗスイッチにルーチングするステップと、
前記複数の第二のＯｐｅｎＦｌｏｗスイッチは、予め格納された第二のＯｐｅｎＦｌｏｗルーチングルールに基づいて、前記ユニキャストパケットの前記ユニキャストアドレスポート番号を元の前記マルチキャストパケットに対応するマルチキャストアドレスポート番号に戻すステップと、
戻された前記マルチキャストパケットを、そのマルチキャストアドレスポート番号により、それぞれマルチキャストネットワークにおけるマルチキャストパケット受信端に転送するステップとを含む、方法。
【請求項７】
前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットのマルチキャストアドレスポート番号を非マルチキャストネットワークにルーチング可能なユニキャストアドレスポート番号に変換する場合、前記マルチキャストパケットの送信先ＩＰアドレスとＵＤＰポート番号が予め格納されたＯｐｅｎＦｌｏｗルーチングルールに符合しないと判断した場合、
前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットを前記ＯｐｅｎＦｌｏｗコントローラに転送するステップと、
前記ＯｐｅｎＦｌｏｗコントローラは、前記マルチキャストパケットのソースが属するマルチキャストネットワークに基づいて、前記アドレスポート番号データベースの中から前記マルチキャストネットワークおよび前記マルチキャストネットワークの境界スイッチにルーチングできる使用可能ユニキャストのポート番号を取得するステップと、
前記ＯｐｅｎＦｌｏｗコントローラは、ＯｐｅｎＦｌｏｗプロトコルにより、前記ユニキャストパケットのマルチキャストアドレスポート番号と取得したユニキャストアドレスポート番号との変換関係を第一のＯｐｅｎＦｌｏｗスイッチにおける前記第一のＯｐｅｎＦｌｏｗルーチングルールに書き込むステップと、
前記ＯｐｅｎＦｌｏｗコントローラは、前記ＯｐｅｎＦｌｏｗプロトコルにより、前記ユニキャストパケットアドレスポート番号とマルチキャストパケットのマルチキャストアドレスポート番号との変換関係を前記複数の第二のＯｐｅｎＦｌｏｗスイッチにおける前記第二のＯｐｅｎＦｌｏｗルーチングルールに書き込むステップと、をさらに含む、請求項６に記載の方法。
【請求項８】
前記マルチキャストパケットがマルチキャストルーチングを行なう前に、
前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチにおいて前記ＯｐｅｎＦｌｏｗスイッチの情報を設定することにより、前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチとの接続を構築するステップと、
前記ＯｐｅｎＦｌｏｗコントローラが、前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチとの接続が正常であるか否かを確認するステップと、
前記ＯｐｅｎＦｌｏｗコントローラが、予め設定されたＯｐｅｎＦｌｏｗのルーチングルールを前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチのルーチングテーブルに書き込むステップと、
前記ＯｐｅｎＦｌｏｗコントローラが前記マルチキャストアドレスポート番号と前記ユニキャストアドレスポート番号との変換を行なう時、使用可能ユニキャストアドレスのポート番号を検索できるように、未配置かつルーチングに使用可能なアドレスポート番号をアドレスポート番号データベースに格納するステップと、をさらに含む、請求項６に記載の方法。
【請求項９】
前記ＯｐｅｎＦｌｏｗスイッチが前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチのルーチングテーブルに書き込む前記第一と第二のルーチングルールは、Matchエントリにおける送信先ＩＰアドレスはマルチキャストアドレスであり、Actionエントリは前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチと前記ＯｐｅｎＦｌｏｗコントローラとが接続している出口ポートにパケットをリダレクトすることであり、前記第一と第二のルーチングルールの優先権値は最小値に設定されることを指す、請求項８に記載の方法。
【請求項１０】
前記使用可能ユニキャストアドレスは、前記非マルチキャストネットワークにおいて、ユニキャストアドレスルーチングを前記マルチキャストネットワークに提供する境界スイッチであることを指す、請求項７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パケット伝送に関するものであり、とくに、ＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバース（traverse）させるシステム及び方法に関するものである。
【背景技術】
【０００２】
インターネットの発達およびネットワークマルチメディアビデオサービスの発展に伴って、ＩＰＴＶ(Internet Protocol Television)やビデオカンファレンス(Video Conferencing)などはいずれもインターネットにおける重要な応用になっており、これら応用は、マルチキャストプロトコル(Multicast Protocol)を通じてパケットを送信し、サーバー(Server)の負荷を低減させるのみならず、ネットワークの帯域幅の利用の効率化をより向上させることができる。しかし、インターネットは長年発展してきたが、すべてのネットワークがマルチキャストパケットの送信をサポートできるわけではない。
【０００３】
マルチキャストプロトコルは、一般的なＩＰユニキャスト(Unicast)とは異なり、クラスＤのＩＰアドレスを用いてパケット送信を行ない、マルチキャストパケットが非マルチキャストネットワークをトラバースすると、正確な送信ができず、さらに帯域幅の消耗が生ずる。現有の技術では、マルチキャストパケットが非マルチキャストネットワークをトラバースできるようにするために、以下の手法を取ることが一般的である。
【０００４】
第１の手法は、静的ルーチングテーブルとＭＢＧＰ(Multiprotocol  Border Gateway Protocol)ルーチングテーブを採用する。この手法では、パケットが通過する各ルータに対し関連する設定をしなければならず、そのうちに、静的ルーチングまたはＭＢＧＰルーチングプロトコルをサポートしていない機器が存在すると、当該手法を使用することができない。
【０００５】
第２の手法は、トンネリング・プロトコル(tunneling protocol)を採用し、、非マルチキャストネットワークの入り口でマルチキャストパケットをユニキャストのパケットに再パッケージして、パケットが非マルチキャストネットワークをトラバースした後、再度パケットを分解してマルチキャストパケットに戻す。この手法では、パケットの長さが大きくなり、その長さがネットワーク装置の最大伝送単位(ＭＴＵ)を超えると、パケットは分割伝送されるので、分割できないパケットだと送信失敗となる。
【０００６】
一方、２００８年１２月３１日付で公開された中国特許第ＣＮ１００４４８２２８Ｃ号「マルチキャストパケットに非マルチキャストネットワークをトラバースさせる方法、およびそれを応用するネットワークシステム」において、マルチキャストとユニキャストとのＩＰアドレス変換(Translation)によりパケット伝送の問題を克服するものが提案されている。この手法は、トンネリング・プロトコルに類似しているが、パケットが非マルチキャストネットワークをトラバースする時に、パケットの送信先マルチキャストアドレスをユニキャストＩＰアドレスに変換し、パケットが非マルチキャストネットワークをトラバースした後、パケットＩＰアドレスを再度マルチキャストアドレスに戻している。この手法は２つの欠点がある。第一、マルチキャストの境界でマルチキャストとユニキャストＩＰアドレスの変換装置を接続することが必要であるが、いままでこのような装置は標準的なプロトコルがないので、別途の研究開発が必要である。第二、このような対応手法は各マルチキャストＩＰアドレスのそれぞれが１つのユニキャストのアドレスに対応しなければならないので、非マルチキャストネットワークを通過して多数のマルチキャストネットワークに送信する場合に、１つのマルチキャストＩＰアドレスが多数のユニキャストＩＰアドレスを必要となり、ユニキャストＩＰアドレスが限られている場合には、このような手法によれば、拡張性がかなり制限されている。
【０００７】
上記の従来の手法による各欠点を鑑みて、ＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるようにする技術は、当業者が苦心する目標である。発明者らは、精一杯にイノベーションし、長年にわたって鋭意に研究することにより、本発明のＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステム及び方法を完成した。
【発明の概要】
【課題を解決するための手段】
【０００８】
本発明は、ＯｐｅｎＦｌｏｗプロトコルによりマルチキャストパケットのマルチキャスト送信先ＩＰ(Destination IP)アドレスをユニキャストＩＰアドレスに変換して、非マルチキャストネットワークをトラバースできるようにするシステムおよび方法を提供することを目的とする。また、本発明は、マルチキャストアドレスとユニキャストアドレスとの変換方法においてパケットのＵＤＰポート番号は用いられ、非マルチキャストネットワークに使用必要のユニキャストアドレスの数を減少できる。
【０００９】
本発明は、非マルチキャストネットワークを介して互いに接続される複数のＯｐｅｎＦｌｏｗスイッチと、アドレス変換に用いられるユニキャストアドレスポート番号を格納するアドレスポート番号データベースと、前記アドレスポート番号データベースに接続され、各前記複数のＯｐｅｎＦｌｏｗスイッチにルーチングをさせるように、予め設定されたＯｐｅｎＦｌｏｗルーチングルールを前記複数のＯｐｅｎＦｌｏｗスイッチのそれぞれのルーチングテーブルに書き込むＯｐｅｎＦｌｏｗコントローラとを備え、マルチキャストパケット送信端からマルチキャストパケットを送信する場合、前記マルチキャストパケットは前記複数のＯｐｅｎＦｌｏｗスイッチのうちの第一のＯｐｅｎＦｌｏｗスイッチを介し、前記ユニキャストアドレスポート番号を有するユニキャストパケットを生成するように、前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットにおけるマルチキャストアドレスポート番号を前記複数のＯｐｅｎＦｌｏｗスイッチのうちの第二のＯｐｅｎＦｌｏｗスイッチのユニキャストアドレスポート番号に変換し、前記非マルチキャストネットワークは、アドレス変換された前記ユニキャストパケットを前記第二のＯｐｅｎＦｌｏｗスイッチに転送し、前記複数の第二のＯｐｅｎＦｌｏｗスイッチは、前記ユニキャストパケットにおける前記ユニキャストアドレスポート番号を元の前記マルチキャストアドレスポート番号に変換した後、それぞれをマルチキャストネットワークにおけるマルチキャストパケット受信端に転送する、ＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステムを提供する。
【００１０】
１つの実施例において、前記ＯｐｅｎＦｌｏｗルーチングルールは、前記マルチキャストアドレスポート番号と前記ユニキャストアドレスポート番号の変換を含む。
【００１１】
もう１つの実施例において、前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケット送信先ＩＰアドレスとＵＤＰポート番号が前記ＯｐｅｎＦｌｏｗルーチングルールに符合しないと判断すると、前記マルチキャストパケットを前記ＯｐｅｎＦｌｏｗコントローラに転送し、前記ＯｐｅｎＦｌｏｗコントローラは、前記マルチキャストパケットのソースが属するマルチキャストネットワークに基づいて、前記アドレスポート番号データベースの中から前記マルチキャストネットワークおよび前記マルチキャストネットワークの境界スイッチにルーチングできる使用可能ユニキャストのポート番号を取得することにより、前記ＯｐｅｎＦｌｏｗルーチングルールを更新する。
【００１２】
さらにもう１つの実施例において、前記ＯｐｅｎＦｌｏｗルーチングルールの更新は、前記ＯｐｅｎＦｌｏｗコントローラが、ＯｐｅｎＦｌｏｗプロトコルにより、前記マルチキャストパケットのマルチキャストアドレスポート番号と取得したユニキャストアドレスポート番号との変換関係を前記第一のＯｐｅｎＦｌｏｗスイッチに書き込むことと、前記ＯｐｅｎＦｌｏｗコントローラが、前記ＯｐｅｎＦｌｏｗプロトコルにより、前記ユニキャストアドレスポート番号と前記マルチチキャストパケットのマルチチキャストアドレスポート番号との変換関係を前記複数の第二のＯｐｅｎＦｌｏｗスイッチに書き込むことを含む。
【００１３】
さらにもう１つの実施例において、前記使用可能ユニキャストアドレスは、前記非マルチキャストネットワークにおいてユニキャストＩＰアドレスを提供し前記マルチキャストネットワークへルーチングする境界スイッチである。
【００１４】
本発明は、マルチキャストパケット送信端がマルチキャストパケットを生成し、マルチキャストネットワークにおいてマルチキャストルーチングを行なうステップと、前記マルチキャストパケットを前記マルチキャストネットワークの境界にある第一のＯｐｅｎＦｌｏｗスイッチに送信するステップと、前記第一のＯｐｅｎＦｌｏｗスイッチは、予め格納された第一のＯｐｅｎＦｌｏｗルーチングルールに基づいて、前記マルチキャストパケットのマルチキャストアドレスポート番号を非マルチキャストネットワークにルーチング可能なユニキャストアドレスポート番号に変換することにより、ユニキャストアドレスポート番号のユニキャストパケットを生成するステップと、前記ユニキャストパケットは前記ユニキャストアドレスポート番号を用いて前記非マルチキャストネットワークにおいてルーチング送信を行なうステップと、前記ユニキャストパケットを複数の第二のＯｐｅｎＦｌｏｗスイッチにルーチングするステップと、前記複数の第二のＯｐｅｎＦｌｏｗスイッチは、予め格納された第二のＯｐｅｎＦｌｏｗルーチングルールに基づいて、前記ユニキャストパケットの前記ユニキャストアドレスポート番号を元の前記マルチキャストパケットに対応するマルチキャストアドレスポート番号に戻すステップと、戻された前記マルチキャストパケットは、そのマルチキャストアドレスポート番号によりそれぞれマルチキャストネットワークにおけるマルチキャストパケット受信端に転送するステップとを含む、ＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせる方法をさらに提供する。
【００１５】
上記の方法において、前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットのマルチキャストアドレスポート番号を非マルチキャストネットワークにルーチング可能なユニキャストアドレスポート番号に変換する場合、前記マルチキャストパケット送信先ＩＰアドレスとＵＤＰポート番号が予め格納されたＯｐｅｎＦｌｏｗルーチングルールに符合しないと判断した場合、さらに、前記第一のＯｐｅｎＦｌｏｗスイッチは、前記マルチキャストパケットを前記ＯｐｅｎＦｌｏｗコントローラに転送するステップと、前記ＯｐｅｎＦｌｏｗコントローラは、前記マルチキャストパケットのソースが属するマルチキャストネットワークに基づいて、前記アドレスポート番号データベースの中から前記マルチキャストネットワークおよび前記マルチキャストネットワークの境界スイッチにルーチングできる使用可能ユニキャストのポート番号を取得するステップと、前記ＯｐｅｎＦｌｏｗコントローラは、ＯｐｅｎＦｌｏｗプロトコルにより、前記ユニキャストパケットのマルチキャストアドレスポート番号と取得したユニキャストアドレスポート番号との変換関係を第一のＯｐｅｎＦｌｏｗスイッチにおける前記第一のＯｐｅｎＦｌｏｗルーチングルールに書き込むステップと、前記ＯｐｅｎＦｌｏｗコントローラは、前記ＯｐｅｎＦｌｏｗプロトコルにより、前記ユニキャストパケットアドレスポート番号とマルチキャストパケットのマルチキャストアドレスポート番号との変換関係を前記複数の第二のＯｐｅｎＦｌｏｗスイッチにおける前記第二のＯｐｅｎＦｌｏｗルーチングルールに書き込むステップと、を含む。
【００１６】
上記の方法において、前記マルチキャストパケットがマルチキャストルーチングを行なう前、さらに、前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチにおいて前記ＯｐｅｎＦｌｏｗスイッチの情報を設定することにより、前記ＯｐｅｎＦｌｏｗコントローラと前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチとの接続を構築するステップと、前記ＯｐｅｎＦｌｏｗコントローラが、前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチとの接続が正常であるか否かを確認するステップと、前記ＯｐｅｎＦｌｏｗコントローラが、予め設定されたＯｐｅｎＦｌｏｗのルーチングルールを前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチのルーチングテーブルに書き込むステップと、前記ＯｐｅｎＦｌｏｗコントローラが前記マルチキャストアドレスポート番号と前記ユニキャストアドレスポート番号との変換を行なう時に使用可能ユニキャストアドレスのポート番号を検索できるように、未配置かつルーチングに使用可能なアドレスポート番号をアドレスポート番号データベースに格納するステップとを含む。
【００１７】
上記の方法において、前記ＯｐｅｎＦｌｏｗコントローラが前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチのルーチングテーブルに書き込む前記第一と第二のルーチングルールは、Matchエントリにおける送信先ＩＰアドレスはマルチキャストアドレスであり、Actionエントリは前記第一のＯｐｅｎＦｌｏｗスイッチおよび前記複数の第二のＯｐｅｎＦｌｏｗスイッチと前記ＯｐｅｎＦｌｏｗコントローラとが接続している出口ポートにパケットをリダイレクトすることであり、前記第一と第二のルーチングルールの優先権値は最小値に設定される。
【００１８】
また、前記使用可能ユニキャストアドレスは、前記非マルチキャストネットワークにおいてユニキャストアドレスルーチングを前記マルチキャストネットワークに提供する境界スイッチであることを指す。
【００１９】
従来の技術と比べると、本発明が提出したＯｐｅｎＦｌｏｗプロトコルとＵＤＰポート番号アドレス変換を用いてマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステム及び方法は、コスト有効度が高く、ＳＤＮ技術によるスイッチのルーチングテーブルの設定を着目し、かつ、マルチキャストパケットＩＰアドレスとＵＤＰポート番号を変更することにより、マルチキャストパケットとユニキャストパケットとの間のアドレス変換を達成し、これによりユニキャストパケットでマルチキャストパケットを送信できるようにしたので、マルチキャストパケットに非マルチキャストネットワークをトラバースさせる伝送技術を達成する。
【図面の簡単な説明】
【００２０】
【図１】本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせるネットワークシステム構成図である。
【図２】本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせる作動方法フローチャートである。
【図３】本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせる設定段階フローチャートである。
【図４】本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせる運行段階フローチャートである。
【図５】本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせる実施作動フロー模式図である。
【発明を実施するための形態】
【００２１】
以下は、特定の具体的な実施形態により本発明の技術内容を詳しく説明し、当業者はこの明細書が開示している内容から本発明のメリットと効果を容易に理解することができる。また、他の異なる具体的な実施形態により本発明を実施または応用することができる。
【００２２】
まず、ソフトウェア・デファインド・ネットワーキング(Software Defined Networking、ＳＤＮ)は、現有のメカニズムより革新した新興のネットワーク構成であり、そのコンセプトはネットワークの制御プレーン(control-plane)機能とデータプレーン(data-plane)機能を分離させ、制御プレーンをコントローラに集合して、スイッチにおいてパケットを伝送する機能のみを残し、スイッチはコントローラを介して経路を演算することが必要であり、コントローラによりパケット伝送の方向をスイッチへ設定する。
【００２３】
本発明は、ＳＤＮ ＯｐｅｎＦｌｏｗコントローラを介してスイッチのルーチングテーブルを設定し、マルチキャストパケットアドレスとＵＤＰポート番号を変更することにより、マルチキャストパケットとユニキャストパケットとの間のアドレス変換を行い、マルチキャストパケットに非マルチキャストネットワークをトラバースさせる方法である。これにより、マルチキャストパケットの送信はマルチキャストパケットをサポートするネットワークにのみ制限されることなく、マルチキャストパケットを伝送する環境の柔軟性をより向上させる実施方式を果たす。
【００２４】
インターネットプロトコル(Internet Protocol)において、クラスＤ(class Ｄ)のＩＰアドレスの範囲は、224.0.0.0.〜239.255.255.255であり、この範囲は、マルチキャスト(multicast)専用のものですので、一般的なユニキャストネットワーク(unicast network)ＩＰアドレスの範囲においてルーチングすることができない。
【００２５】
図１は、本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせるネットワークシステム構成図である。図１に示すマルチキャストネットワーク１１０、マルチキャストネットワーク１２０およびマルチキャストネットワーク１３０はマルチキャストプロトコルを有効にしたネットワークであり、非マルチキャストネットワーク１４０は、マルチキャストＩＰアドレスパケットをサポートしていないネットワークであり、ＯｐｅｎＦｌｏｗスイッチ１１１をマルチキャストネットワーク１１０の境界ネットワーク装置として非マルチキャストネットワーク１４０に接続しており、ＯｐｅｎＦｌｏｗスイッチ１２１をマルチキャストネットワーク１２０の境界ネットワーク装置として非マルチキャストネットワーク１４０に接続しており、ＯｐｅｎＦｌｏｗスイッチ１３１をマルチキャストネットワーク１３０の境界ネットワーク装置として非マルチキャストネットワーク１４０に接続している。
【００２６】
マルチキャストネットワーク１１０は、マルチキャストパケット送信端１１２を有し、マルチキャストネットワーク１２０は、マルチキャストパケット送信端１１２と同一のマルチキャストグループ(multicast group)に属するマルチキャストパケット受信端１２２を有し、マルチキャストネットワーク１３０は、マルチキャストパケット送信端１１２と同一のマルチキャストグループに属するマルチキャストパケット受信端１３２を有する。マルチキャストパケット送信端１１２から送信されたマルチキャストパケットが、ＯｐｅｎＦｌｏｗスイッチ１１１を介してマルチキャストネットワーク１１０から非マルチキャストネットワーク１４０を経由してＯｐｅｎＦｌｏｗスイッチ１２１とＯｐｅｎＦｌｏｗスイッチ１３１に伝送されてから、それぞれマルチキャストネットワーク１２０におけるマルチキャストパケット受信端１２２およびマルチキャストネットワーク１３０におけるマルチキャストパケット受信端１３２に転送される。
【００２７】
また、ＯｐｅｎＦｌｏｗコントローラ１５０は、ＯｐｅｎＦｌｏｗスイッチのコントローラとしてＯｐｅｎＦｌｏｗスイッチ１１１、１２１、１３１と接続しており、コントローラとスイッチとの間でＯｐｅｎＦｌｏｗプロトコルを使用して相互交信を行なう。アドレスポート番号データベース１６０もＯｐｅｎＦｌｏｗコントローラ１５０と接続しており、ＯｐｅｎＦｌｏｗコントローラ１５０は、アドレスポート番号データベース１６０を介してシステムにおけるアドレス変換に使用可能なユニキャストアドレスポート番号を検索できる。
【００２８】
マルチキャストパケットは非マルチキャストネットワーク１４０を直接トラバースできないのは、非マルチキャストネットワーク１４０におけるネットワーク装置がマルチキャストＩＰアドレスのルーチングをサポートしていないからである。これを鑑みて、本発明は、ＯｐｅｎＦｌｏｗプロトコルによりマルチキャストパケットのマルチキャスト送信先ＩＰアドレス(Destination ＩＰ)をユニキャストＩＰアドレスに変換することにより、非マルチキャストネットワーク１４０をトラバースできるようにした。また、本発明のマルチキャストアドレスとユニキャストアドレスとの変換方法は、パケットのＵＤＰポート番号を使用する。このようにすれば、非マルチキャストネットワークに必要のユニキャストアドレスの数をコンパクトにできる。
【００２９】
任意の多数の非マルチキャストネットワークにより接続されているマルチキャストネットワークのいずれも図１に示す構成に簡略化できるので、つぎの説明において、図１に示すネットワークシステム構成により、本発明においてマルチキャストパケットが非マルチキャストネットワークをトラバースできるようにしたシステムの作動方法を説明する。
【００３０】
本発明の作動フローは、主にシステム設定段階２１０とシステム作動段階３１０という２つの階段に分けられ、そのフローチャートが図２に示す。システム設定段階２１０は、システムが作動するに先たって、関連設備の設定の動作を行う必要があり、システム作動段階３１０は、システムがマルチキャストパケットの送信動作を実際に行なっており、マルチキャストパケットとユニキャストパケットとの間でのアドレスポート変換により、マルチキャストパケットに非マルチキャストネットワークをトラバースさせる。
【００３１】
図３は、本発明に係るマルチキャストパケットに非マルチキャストネットワークをトラバースさせるシステム設定段階フローチャートである。まず、ステップ２１１において、すべてのＯｐｅｎＦｌｏｗスイッチ１１１、１２１、１３１にＯｐｅｎＦｌｏｗコントローラ１５０の情報を設定し、ＯｐｅｎＦｌｏｗコントローラ１５０との接続を構築する。
【００３２】
ステップ２１２において、ＯｐｅｎＦｌｏｗコントローラ１５０は、すべてのＯｐｅｎＦｌｏｗスイッチとの接続状況が正常か否かを確認する。
【００３３】
ステップ２１３において、ＯｐｅｎＦｌｏｗコントローラ１５０は、予め設定されたＯｐｅｎＦｌｏｗのルーチングルールをＯｐｅｎＦｌｏｗスイッチ１１１、１２１、１３１のルーチングテーブルに書き込み、このルールのMatchエントリは送信先ＩＰアドレスが２２４.０．０．０/４であることを記しており、ActionエントリはパケットをＯｐｅｎＦｌｏｗスイッチとＯｐｅｎＦｌｏｗコントローラとが接続している出口ポートにリダイレクトすることを記している。このルールの優先権値を最小値に設定する。この予め設定されたルーチングルールは、マルチキャストアドレスポート番号をユニキャストアドレスポート番号に変換するルールが設定されていないマルチキャストパケットをＯｐｅｎＦｌｏｗスイッチに送信する時、パケットをＯｐｅｎＦｌｏｗスイッチ１５０にリダイレクトしてシステムの作動段階３１０に進むためである。
【００３４】
ステップ２１４において、ＯｐｅｎＦｌｏｗコントローラ１５０が再度マルチキャストアドレスポート番号をユニキャストアドレスポート番号に変換する時、使用可能ユニキャストアドレスのポート番号を検索できるために、システムがまだ設置していないルーチングに使用可能なアドレスポート番号をアドレスポート番号データベース１６０に格納する。この使用可能ユニキャストアドレスポート番号は、そのユニキャストＩＰアドレスが非マルチキャストネットワークにおいてマルチキャストネットワークの境界スイッチにルーチングできることを意味する。
【００３５】
本発明は、システム設定段階２１０を経った後、図４のフローチャートに示すように、システム作動段階３１０に進むことができる。まず、ステップ３１１において、マルチキャストパケット送信端１１２がマルチキャストパケットを生成し、マルチキャストネットワーク１１０においてマルチキャストルーチングを行なう。
【００３６】
ステップ３１２において、マルチキャストパケットはマルチキャストネットワーク１１０の境界にあるＯｐｅｎＦｌｏｗスイッチ１１１に送信され、つぎに、ステップ３１３において、ＯｐｅｎＦｌｏｗスイッチ１１１は、自体のＯｐｅｎＦｌｏｗルーチングテーブルを使用してマルチキャストパケットの送信先ＩＰアドレスとＵＤＰポート番号がルーチングルール合致するか否かを分析し、いずれも合わない場合には、最後にステップ２１３で書き込まれた予め設定されたルーチングルールに対応して、ステップ３１４に進み、当該マルチキャストパケットをＯｐｅｎＦｌｏｗコントローラ１５０に転送する。
【００３７】
ステップ３１５において、ＯｐｅｎＦｌｏｗコントローラ１５０は、パケットのソースが属するマルチキャストネットワーク１１０に基づいて、アドレスポート番号データベース１６０からマルチキャストネットワーク１２０およびマルチキャストネットワーク１３０の境界スイッチにルーチングできる使用可能ユニキャストのポート番号を選択する。
【００３８】
ステップ３１６において、ＯｐｅｎＦｌｏｗコントローラは、元のマルチキャストパケットのアドレスポート番号と選択されたユニキャストアドレスポート番号との変換関係をＯｐｅｎＦｌｏｗルーチングルールとして書き込み、ＯｐｅｎＦｌｏｗプロトコルによりＯｐｅｎＦｌｏｗスイッチ１１１に書き込む。また、ユニキャストアドレスポート番号と元のマルチキャストパケットアドレスポート番号との変換関係をＯｐｅｎＦｌｏｗルーチングルールとして書き込み、ＯｐｅｎＦｌｏｗプロトコルによりＯｐｅｎＦｌｏｗスイッチ１２１およびＯｐｅｎＦｌｏｗスイッチ１３１に書き込む。
【００３９】
ステップ３１１からステップ３１６を経った後、マルチキャストパケットに非マルチキャストネットワークをトラバースさせるルーチングが開通されており、マルチキャストパケット送信端１１２再度マルチキャストパケットを生成すると、ステップ３２１に進む。書き込まれたＯｐｅｎＦｌｏｗルーチングルールに基づき、マルチキャストパケットのアドレスポート番号を非マルチキャストネットワーク１４０にルーチング可能なユニキャストアドレスポート番号に変換する。
【００４０】
ステップ３２２において、パケットがユニキャストアドレスポート番号により非マルチキャストネットワーク１４０においてルーチングして送信され、つぎに、ステップ３２３に進み、パケットがＯｐｅｎＦｌｏｗスイッチ１２１とＯｐｅｎＦｌｏｗスイッチ１３１にルーチングされる。
【００４１】
ステップ３２４において、書き込まれたＯｐｅｎＦｌｏｗルーチングルールに基づき、ユニキャストアドレスポート番号を元の対応するマルチキャストアドレスポート番号に戻し、つぎに、ステップ３２５に進み、マルチキャストパケットは、そのアドレスポート番号によりマルチキャストパケット受信端１２２およびマルチキャストパケット受信端１３２にルーチングされる。
【００４２】
以下は本発明の１つの実施例であり、そのネットワークシステム構成および作動フローは図５に示される。マルチキャストネットワーク１１０におけるマルチキャストパケット送信端１１２がマルチキャストプロトコルを使用してパケットを送信し、そのパケットのマルチキャストアドレスは２２７．１００．１．１であり、ＵＤＰポートは２２２２である。フロー４１１１に示すように、マルチキャストパケットはマルチキャストルーチングを介してマルチキャストネットワーク１１０の境界ＯｐｅｎＦｌｏｗスイッチ１１１に送信される。
【００４３】
このときのＯｐｅｎＦｌｏｗスイッチ１１１内には、図３のステップ２１３で設定された予め設定されたＯｐｅｎＦｌｏｗルーチングしかいないので、マルチキャストアドレスが含まれているパケットはフロー４１１２に進み、ＯｐｅｎＦｌｏｗコントローラ１５０にリダイレクトされる。次に、ＯｐｅｎＦｌｏｗコントローラ１５０はアドレスポート番号データベース１６０からマルチキャストネットワーク１２０にルーチングできる使用可能ユニキャストアドレスポート番号２００．２．１．１：１０００１およびマルチキャストネットワーク１３０にルーチングできる使用可能ユニキャストアドレスポート番号２００．３．１．１：１０００１を検索して、次にフロー４１１３に示すように、ＯｐｅｎＦｌｏｗコントローラ１５０は、ＯｐｅｎＦｌｏｗスイッチ１１１に対し、マルチキャストアドレスポート番号をユニキャストアドレスポート番号に変換するＯｐｅｎＦｌｏｗルーチングルールを書き込み、ＯｐｅｎＦｌｏｗルーチングテーブル１１３に示すように、そのルールのMatchエントリの送信先ＩＰアドレスは２２７．１００．１．１に設定され、送信先ＵＤＰポート番号は２２２２に設定され、そのルールのActionsエントリには２つの動作が含まれ、第一の動作は、送信先ＩＰアドレスを２００．２．１．１に設定し、送信先ＵＤＰポート番号を１０００１に設定し、出力ポート番号をＯｐｅｎＦｌｏｗスイッチ１１１と非マルチキャストネットワーク１４０とをインタフェーシングするポート番号に設定し、第二の動作は、送信先ＩＰアドレスを２００．３．１．１に設定し、送信先ＵＤＰポート番号を１０００１に設定し、出力ポート番号をＯｐｅｎＦｌｏｗスイッチ１１１と非マルチキャストネットワーク１４０とをインタフェーシングするポート番号に設定する。
【００４４】
フロー４１１３を経った後、マルチキャストパケットは、変換されたユニキャストパケットアドレスを用い、非マルチキャストネットワーク１４０をトラバースしてマルチキャストネットワーク１２０の境界ＯｐｅｎＦｌｏｗスイッチ１２１およびマルチキャストネットワーク１３０の境界ＯｐｅｎＦｌｏｗスイッチ１３１にルーチングされる。同様に、フロー４１１４において、ＯｐｅｎＦｌｏｗコントローラ１５０は、ＯｐｅｎＦｌｏｗスイッチ１２１およびＯｐｅｎＦｌｏｗスイッチ１３１に対し、ユニキャストアドレスポート番号をマルチキャストアドレスポート番号に戻すＯｐｅｎＦｌｏｗルーチングルールを書き込む。ＯｐｅｎＦｌｏｗルーチングテーブル１２３に示すように、ＯｐｅｎＦｌｏｗスイッチ１２１に書き込んだルールは、Matchエントリの送信先ＩＰアドレスが２００．２．１．１に設定され、送信先ＵＤＰポート番号が１０００１に設定され、Actionsエントリの動作は、送信先ＩＰアドレスを２２７．１００．１．１に設定し、送信先ＵＤＰポート番号を２２２２に設定し、出力ポート番号をＯｐｅｎＦｌｏｗスイッチ１２１とマルチキャストネットワーク１２０とをインタフェーシングするポート番号に設定する。ＯｐｅｎＦｌｏｗルーチングテーブル１３３に示すように、ＯｐｅｎＦｌｏｗスイッチ１３１に書き込んだルールは、Matchエントリの送信先ＩＰアドレスは２００．３．１．１に設定され、送信先ＵＤＰポート番号は１０００１に設定され、Actionsエントリの動作は、送信先ＩＰアドレスを２２７．１００．１．１に設定し、送信先ＵＤＰポート番号を２２２２に設定し、出力ポート番号をＯｐｅｎＦｌｏｗスイッチ１３１とマルチキャストネットワーク１３０とをインタフェーシングするポート番号に設定される。
【００４５】
マルチキャストパケット送信端１１２は、ＩＰアドレスは２２７．１００．１．１、ＵＤＰポート番号は２２２２であるマルチキャストパケットを再度送信する場合、アドレスポート番号の変換はフロー４１１３とフロー４１１４により完了したので、フロー４１１５において、ＯｐｅｎＦｌｏｗスイッチ１１１がマルチキャストパケットのアドレスポート番号を対照するとＯｐｅｎＦｌｏｗルーチングテーブル１１３のルーチングルールに符合するので、１つの動作では、マルチキャストパケットの送信先ＩＰアドレスを２００．２．１．１に変更し、送信先ＵＤＰポート番号を１０００１に変更し、パケットをＯｐｅｎＦｌｏｗスイッチ１２１にルーチングすることができる。同様に、もう１つの動作では、マルチキャストパケットの送信先ＩＰアドレスを２００．３．１．１に変更し、送信先ＵＤＰポート番号を１０００１に変更し、パケットをＯｐｅｎＦｌｏｗスイッチ１３１にルーチングすることができる。パケットがＯｐｅｎＦｌｏｗスイッチ１２１に到達してから、ＯｐｅｎＦｌｏｗルーチングテーブル１２３のルーチングルールに基づき、パケットの送信先ＩＰアドレスを２２７．１００．１．１に戻し、送信先ＵＤＰポート番号を２２２２に戻す。同様に、パケットがＯｐｅｎＦｌｏｗスイッチ１３１に到達してから、ＯｐｅｎＦｌｏｗルーチングテーブル１３３のルーチングルールに基づき、パケットの送信先ＩＰアドレスを２２７．１００．１．１に戻し、送信先ＵＤＰポート番号を２２２２に戻す。
【００４６】
最後、フロー４１１６において、マルチキャストパケットは、マルチキャストネットワークにおいて２２７．１００．１．１というマルチキャストアドレスを使用すれば、マルチキャストパケット受信端１２２およびマルチキャストパケット受信端１３２にマルチキャストパケットから送信したマルチキャストパケットを受信させることができる。
【００４７】
上記をまとめると、本発明は、ＯｐｅｎＦｌｏｗプロトコルによりマルチキャストパケットＩＰアドレスとＵＤＰポート番号を変換することで、マルチキャストパケットに非マルチキャストネットワークをトラバースさせる方法およびその応用であるネットワークシステムを提供する。従来の技術と比べると、つぎのメリットを有する。第一は、本発明は非マルチキャストネットワークにおけるルーチング装置の設定を変更することなく、マルチキャストパケットに非マルチキャストネットワークをトラバースさせることができる。第二は、本発明はマルチキャストパケットの長さを変更することなく、マルチキャストパケットに非マルチキャストネットワークをトラバースさせることができる。第三は、本発明は標準的なＯｐｅｎＦｌｏｗプロトコルを用いてパケットアドレスの変換を行い、特定のネットワークデバイスに制限されることなく、高速なプロビジョニングを達成でき、ＯｐｅｎＦｌｏｗプロトコルをサポートするいかなるスイッチが本発明の効果を達成できる。第四は、本発明はアドレス変換識別の方法としてＩＰアドレスに加えＵＤＰポート番号を用いており、識別の方法としてＩＰアドレスのみを使用する従来の方法と比べると、ＩＰアドレスリソースの使用を大幅に節約することができる。
【００４８】
上記の実施形態は、ただ本発明の原理およびその効果を例示的に説明しただけであって、本発明を限定するものではない。この技術を熟知している当業者が、本発明の精神及び本質特徴から逸脱しない範囲で、上記の実施形態を修飾または変更することができる。そのため、本発明の特許請求の範囲は、その請求の範囲に記載されるようなものと考えるべきである。
【符号の説明】
【００４９】
１１０  マルチキャストネットワーク
１１１  ＯｐｅｎＦｌｏｗスイッチ
１１２  マルチキャストパケット送信端
１１３  ＯｐｅｎＦｌｏｗルーチングテーブル
１２０  マルチキャストネットワーク
１２１  ＯｐｅｎＦｌｏｗスイッチ
１２２  マルチキャストパケット受信端
１２３  ＯｐｅｎＦｌｏｗルーチングテーブル
１３０  マルチキャストネットワーク
１３１  ＯｐｅｎＦｌｏｗスイッチ
１３２  マルチキャストパケット受信端
１３３  ＯｐｅｎＦｌｏｗルーチングテーブル
１４０  非マルチキャストネットワーク
１５０  ＯｐｅｎＦｌｏｗコントローラ
１６０  アドレスポート番号データベース
２１０  システム設定段階
２１１〜２１４  システム設定段階のフロー
３１０  システム作動段階
３１１〜３２５  システム作動段階のフロー
４１１１〜４１１６  システム実施動作のフロー
【図１】
2019017004.tif 000003
【図２】
2019017004.tif 000004
【図３】
2019017004.tif 000005
【図４】
2019017004.tif 000006
【図５】
2019017004.tif 000007