(57)【特許請求の範囲】
【請求項１】
ソフトウェア・デファインド・ネットワーク（ＳＤＮ）のためのマルチキャスト方法であって、
マルチキャストグループのメンバーをマルチキャスト送信デバイスによって管理する段階と、
マルチキャスト・ルーティングツリーのプランニングを、ＳＤＮコントローラ上に配置されたマルチキャスト・ルーティングツリー管理サービスモジュールによって完成させ、前記マルチキャスト・ルーティングツリーの前記プランニングを、前記ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換する段階であって、これにより、ＳＤＮコントローラが、前記フローエントリ変更命令を実行し、ＳＤＮスイッチに命令して、変更されたフローエントリに従ってマルチキャストタスクを実行させる、段階と、
を備え、
前記マルチキャストグループのメンバーを前記マルチキャスト送信デバイスによって管理する前記段階は、
前記マルチキャストグループへの加入の申請を前記マルチキャスト送信デバイスのグループ管理サービスモジュールによって受信し、前記申請を承認する段階であって、前記申請はマルチキャスト受信デバイスによって送信される、段階と、
前記マルチキャスト受信デバイスのパブリックＩＰアドレスを前記グループ管理サービスモジュールによって取得する段階と、
前記マルチキャスト受信デバイスのオンラインステータス情報を前記グループ管理サービスモジュールによって取得し、前記オンラインステータス情報に従って前記マルチキャスト受信デバイスについての情報を保持する段階と、
を有する、
方法。
【請求項２】
マルチキャストＩＰアドレス又はグループＩＤを、前記マルチキャスト送信デバイスのグループ管理サービスモジュールによって前記ＳＤＮコントローラに申請する段階と、
前記ＳＤＮコントローラによって定義された前記マルチキャストＩＰアドレス又は前記グループＩＤを受信する段階とを更に備える、請求項１に記載の方法。
【請求項３】
前記マルチキャストグループへの加入の申請を前記グループ管理サービスモジュールによって受信する前記段階であって、前記申請はマルチキャスト受信デバイスによって送信される、段階は、前記マルチキャストグループへの加入の前記申請を前記グループ管理サービスモジュールによって受信する段階であって、前記申請は、前記マルチキャスト受信デバイスによって直接的に送信されるか、又は、シグナリングサーバを使用して前記マルチキャスト受信デバイスによって間接的に送信される、段階を有し、
前記マルチキャスト受信デバイスのパブリックＩＰアドレスを前記グループ管理サービスモジュールによって取得する前記段階は、前記マルチキャスト受信デバイスがパブリックＩＰアドレスを有する場合、前記マルチキャスト受信デバイスの前記パブリックＩＰアドレスを前記マルチキャスト受信デバイスによって前記グループ管理サービスモジュールに直接的に送信する、又は、前記マルチキャスト受信デバイスがパブリックＩＰアドレスを有さない場合、ＮＡＴサーバを使用して前記マルチキャスト受信デバイスのパブリックＩＰアドレス及びポート番号を前記マルチキャスト受信デバイスによって取得し、前記パブリックＩＰアドレス及び前記ポート番号を前記シグナリングサーバを使用して前記グループ管理サービスモジュールに送信する段階を有する、
請求項１に記載の方法。
【請求項４】
マルチキャスト・ルーティングツリーのプランニングをマルチキャスト・ルーティングツリー管理サービスモジュールによって完成させる前記段階の後、
前記マルチキャスト・ルーティングツリー管理サービスモジュールが前記マルチキャスト送信デバイス上に配置されている場合、前記フローエントリ変更命令を前記ＳＤＮコントローラのノースバウンドＡＰＩを使用して前記マルチキャスト・ルーティングツリー管理サービスモジュールによって前記ＳＤＮコントローラに送信する段階
を更に備える、請求項１から３の何れか一項に記載の方法。
【請求項５】
ソフトウェア・デファインド・ネットワーク（ＳＤＮ）ネットワークのためのマルチキャストシステムであって、
グループ管理サービスモジュールを備え、マルチキャストグループへの加入の申請であって、マルチキャスト受信デバイスによって送信される、申請を受信すること、及び前記申請を承認することと、前記マルチキャストグループへ加入する前記マルチキャスト受信デバイスのパブリックＩＰアドレスを取得することと、前記マルチキャストグループに加入する前記マルチキャスト受信デバイスのオンラインステータス情報を取得し、前記オンラインステータス情報に従って、前記マルチキャスト受信デバイスについての情報を保持することと、を行うマルチキャスト送信デバイスと、
ＳＤＮコントローラ上に配置され、前記マルチキャストグループに従ってマルチキャスト・ルーティングツリーのプランニングを完成させるマルチキャスト・ルーティングツリー管理サービスモジュールと、
ＡＰＩを使用してＳＤＮスイッチに命令して、マルチキャストタスクを実行させるＳＤＮコントローラと、
前記ＳＤＮコントローラの命令に従って前記マルチキャストタスクを実行する前記ＳＤＮスイッチと、
を備え、
前記マルチキャストグループのメンバーを管理する前記段階は、
前記マルチキャストグループへの加入の申請をグループ管理サービスモジュールによって受信し、前記申請を承認する段階であって、前記申請はマルチキャスト受信デバイスによって送信される、段階と、
前記マルチキャストグループに加入する前記マルチキャスト受信デバイスのパブリックＩＰアドレスを前記グループ管理サービスモジュールによって取得する段階と、
前記マルチキャストグループに加入する前記マルチキャスト受信デバイスのオンラインステータス情報を前記グループ管理サービスモジュールによって取得し、前記オンラインステータス情報に従って前記マルチキャスト受信デバイスについての情報を保持する段階と、
を有するマルチキャストシステム。
【請求項６】
前記グループ管理サービスモジュールは、更に
マルチキャストＩＰアドレス又はグループＩＤを、前記ＳＤＮコントローラに申請することと、
前記ＳＤＮコントローラによって定義された前記マルチキャストＩＰアドレス又は前記グループＩＤを受信することと
を行う、請求項５に記載のシステム。
【請求項７】
前記マルチキャスト・ルーティングツリー管理サービスモジュールは更に、前記マルチキャスト・ルーティングツリーの前記プランニングを、前記ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換する、請求項５又は６に記載のシステム。
【請求項８】
前記マルチキャストグループへの加入の申請を前記マルチキャスト送信デバイスの前記グループ管理サービスモジュールに間接的に送信すべく、マルチキャスト受信デバイスによって使用されるシグナリングサーバ
を更に備える、請求項５から７の何れか一項に記載のシステム。
【請求項９】
前記マルチキャスト受信デバイスがパブリックＩＰアドレスを有さない場合、前記マルチキャスト受信デバイスのパブリックＩＰアドレス及びポート番号を取得すべく、前記マルチキャスト受信デバイスによって使用されるＮＡＴサーバ
を更に備える請求項８に記載のシステム。
【請求項１０】
請求項１から４の何れか一項に記載の方法をコンピュータに実行させるためのプログラム。
【請求項１１】
請求項１０に記載されたプログラムを格納するコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の複数の実施形態は通信サービス分野に関し、具体的には、ソフトウェア・デファインド・ネットワークのためのマルチキャストの方法、装置、及びシステムに関する。
【背景技術】
【０００２】
マルチキャスト技術とは、１つのホストが単一のデータパケットを同時に特定の複数のホストに送信するネットワーク技術のことを指す。マルチキャストは、インターネットにおける基本的な通信モードの１つである。ポイント・ツー・マルチポイント通信として、マルチキャストは効率の高いネットワーク帯域幅節約方法でもある。
【０００３】
多地点ビデオ会議システムは、マルチキャスト技術の一般的なアプリケーション・シナリオである。ビデオ会議システムの多地点制御ユニット（Ｍｕｌｔｉｐｏｉｎｔ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ、ＭＣＵ）は、特殊目的のサーバとみなされてよい。マルチパーティ会議では、会議の全てのパーティがＭＣＵに接続される。オーディオ・ビデオ送信デバイスがそのオーディオ・ビデオストリームをＭＣＵに送信し、そして、ＭＣＵが、当該オーディオ・ビデオストリームをコピーし、次に、各受信デバイスに配信する。従って、オーディオ・ビデオ送信デバイスはただ１つのオーディオ・ビデオストリームを送信する必要がある。ＭＣＵは、会議の複数のパーティのために、スター型又はツリー型のネットワーキングを完成させる。ある意味では、ＭＣＵは、ビデオ会議サービス専用の、特別な機能を有するスイッチであると考えられてよい。ＭＣＵの使用による多地点ビデオ会議システム実施のデメリットは、ＭＣＵネットワーキングでは、多数の専用デバイスが必要とされること、ネットワーキングコストが比較的高いこと、及び、ネットワーク拡張が不便であることである。
【発明の概要】
【０００４】
本発明の複数の実施形態の目的は、ソフトウェア・デファインド・ネットワーク（Ｓｏｆｔｗａｒｅ‐Ｄｅｆｉｎｅｄ  Ｎｅｔｗｏｒｋ、ＳＤＮ）において、比較的低いネットワーキングコストと、簡便なネットワーク拡張とを実装するマルチキャストの方法、装置、及びシステムを提供することである。
【０００５】
第１態様に従って、以下の段階を含むソフトウェア・デファインド・ネットワークのためのマルチキャスト方法が提供される。当該段階は、
マルチキャストグループをマルチキャスト送信デバイスによって作成する段階、
マルチキャストグループのメンバーをマルチキャスト送信デバイスによって管理する段階、及び
マルチキャスト・ルーティングツリーのプランニングをマルチキャスト送信デバイス上又はソフトウェア・デファインド・ネットワークＳＤＮコントローラ上に配置されたマルチキャスト・ルーティングツリー管理サービスモジュールによって完成させ、マルチキャスト・ルーティングツリーのプランニングを、ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換する段階であって、これにより、ＳＤＮコントローラが、フローエントリ変更命令を実行し、サウスバウンド・アプリケーション・プログラミング・インタフェースＡＰＩを使用してＳＤＮスイッチに命令して、変更されたフローエントリに従ってマルチキャストタスクを実行させる、段階である。
【０００６】
第１態様を参照して、第１態様の第１の可能な実装方式において、マルチキャストグループをマルチキャスト送信デバイスによって作成する段階は具体的に、
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを、ＳＤＮコントローラのノースバウンドＡＰＩを使用してマルチキャスト送信デバイスのグループ管理サービスモジュールによってＳＤＮコントローラに申請する段階、及び、
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを受信する段階であって、マルチキャストＩＰアドレス又はグループＩＤは、ノースバウンドＡＰＩを使用してＳＤＮコントローラによって返される、段階である。
【０００７】
第１態様、又は第１態様の第１の可能な実装方式を参照して、第１態様の第２の可能な実装方式において、マルチキャストグループのメンバーをマルチキャスト送信デバイスによって管理する段階は具体的に、
マルチキャストグループへの加入の申請をマルチキャスト送信デバイスのグループ管理サービスモジュールによって受信する段階であって、当該申請はマルチキャスト受信デバイスによって送信される、段階、
マルチキャスト受信デバイスのパブリックＩＰアドレスをグループ管理サービスモジュールによって取得する段階、及び、
マルチキャスト受信デバイスのオンラインステータス情報をグループ管理サービスモジュールによって取得して、オンラインステータス情報に従って、マルチキャスト受信デバイスについての情報を保持する段階である。
【０００８】
第１態様、又は第１態様の第１から第２の可能な実装方式の何れか１つを参照して、第１態様の第３の可能な実装方式において、マルチキャスト・ルーティングツリーのプランニングをマルチキャスト・ルーティングツリー管理サービスモジュールによって完成させる段階の後、当該方法は更に、
マルチキャスト・ルーティングツリー管理サービスモジュールがマルチキャスト送信デバイス上に配置されている場合、フローエントリ変更命令をＳＤＮコントローラのノースバウンドＡＰＩを使用してマルチキャスト・ルーティングツリー管理サービスモジュールによってＳＤＮコントローラに送信する段階を含む。
【０００９】
第１態様の第２の可能な実装方式を参照して、第１態様の第４の可能な実装方式において、マルチキャストグループへの加入の申請をグループ管理サービスモジュールによって受信する段階であって、当該申請はマルチキャスト受信デバイスによって送信される、段階は、具体的に、マルチキャストグループへの加入の申請をグループ管理サービスモジュールによって受信する段階であって、当該申請は、マルチキャスト受信デバイスによって直接的に送信されるか、又は、シグナリングサーバを使用してマルチキャスト受信デバイスによって間接的に送信される、段階であり、
マルチキャスト受信デバイスのパブリックＩＰアドレスをグループ管理サービスモジュールによって取得する段階は、具体的に、マルチキャスト受信デバイスがパブリックＩＰアドレスを有する場合、マルチキャスト受信デバイスのパブリックＩＰアドレスをマルチキャスト受信デバイスによってグループ管理サービスモジュールに直接的に送信する、又は、マルチキャスト受信デバイスがパブリックＩＰアドレスを有さない場合、ＮＡＴサーバを使用してマルチキャスト受信デバイスのパブリックＩＰアドレス及びポート番号をマルチキャスト受信デバイスによって取得し、パブリックＩＰアドレス及びポート番号をシグナリングサーバを使用してグループ管理サービスモジュールに送信する段階である。
【００１０】
第２態様に従って、ＳＤＮネットワークのためのアプリケーションエンドが提供される、当該アプリケーションエンドは、
マルチキャストグループを作成し、作成されたマルチキャストグループのメンバーを管理するよう構成されたグループ管理サービスモジュールと、
マルチキャストグループに従ってマルチキャスト・ルーティングツリーのプランニングを完成させ、次に、マルチキャスト・ルーティングツリーのプランニングを、ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換するよう構成され、これにより、ＳＤＮコントローラが、フローエントリ変更命令を実行し、サウスバウンド・アプリケーション・プログラミング・インタフェースＡＰＩを使用することでＳＤＮスイッチに命令して、変更されたフローエントリに従ってマルチキャストタスクを実行させる、マルチキャスト・ルーティングツリー管理サービスモジュールとを備える。
【００１１】
第２態様を参照して、第２態様の第１の可能な実装方式において、マルチキャストグループの作成は具体的に、
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを、ＳＤＮコントローラのノースバウンドＡＰＩを使用してグループ管理サービスモジュールによってＳＤＮコントローラに申請すること、及び
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを受信することであり、マルチキャストＩＰアドレス又はグループＩＤは、ノースバウンドＡＰＩを使用してＳＤＮコントローラによって返される。
【００１２】
第２態様、又は第２態様の第１の可能な実装方式を参照して、第２態様の第２の可能な実装方式において、作成されたマルチキャストグループのメンバーの管理は具体的に、
マルチキャストグループへの加入の申請であって、マルチキャスト受信デバイスによって送信される、申請を、グループ管理サービスモジュールによって受信すること、
マルチキャストグループに加入するマルチキャスト受信デバイスのパブリックＩＰアドレスをグループ管理サービスモジュールによって取得すること、及び、
マルチキャストグループに加入するマルチキャスト受信デバイスのオンラインステータス情報をグループ管理サービスモジュールによって取得して、オンラインステータス情報に従って、マルチキャスト受信デバイスについての情報を保持することである。
【００１３】
第３態様に従って、ＳＤＮコントローラが提供される。当該ＳＤＮコントローラは、
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤの申請の要求であって、マルチキャスト送信デバイスによって送信される、要求を受信するよう構成された受信ユニットと、
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤをマルチキャスト送信デバイスに送信し、フローエントリをＳＤＮスイッチに送信するよう構成された送信ユニットと、
ネットワークにおける既存のユニキャスト・ルーティング情報を取得し、ユニキャスト・ルーティング情報に従ってマルチキャスト・ルーティングツリーのプランニングを完成させ、次に、マルチキャスト・ルーティングツリーのプランニングを、ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換するよう構成され、これにより、ＳＤＮコントローラが、当該命令に従ってフローエントリを変更し、フローエントリを、送信ユニットを使用してＳＤＮスイッチに送信する、マルチキャスト・ルーティングツリー管理サービスモジュールとを含む。
【００１４】
第４態様に従って、ＳＤＮネットワークのためのマルチキャストシステムが提供される。当該マルチキャストシステムは、
グループ管理サービスモジュールを更に含み、マルチキャストグループを作成するよう構成されたマルチキャスト送信デバイスと、
マルチキャスト送信デバイス又はＳＤＮコントローラ上に配置され、マルチキャストグループに従ってマルチキャスト・ルーティングツリーのプランニングを完成させるよう構成されたマルチキャスト・ルーティングツリー管理サービスモジュールと、
ＡＰＩを使用してＳＤＮスイッチに命令して、マルチキャストタスクを実行させるよう構成されたＳＤＮコントローラと、
ＳＤＮコントローラの命令に従ってマルチキャストタスクを実行するよう構成されたＳＤＮスイッチと、
マルチキャスト送信デバイスによって送信されたデータを受信するよう構成されたマルチキャスト受信デバイスとを備える。
【００１５】
第４態様を参照して、第４態様の第１の可能な実装方式において、マルチキャストグループの作成は具体的に、
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを、ＳＤＮコントローラのノースバウンドＡＰＩを使用してマルチキャスト送信デバイスのグループ管理サービスモジュールによってＳＤＮコントローラに申請すること、及び
ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを受信することであり、マルチキャストＩＰアドレス又はグループＩＤは、ノースバウンドＡＰＩを使用してＳＤＮコントローラによって返される。
【００１６】
第４態様、又は第４態様の第１の可能な実装方式を参照して、第４態様の第２の可能な実装方式において、マルチキャスト・ルーティングツリー管理サービスモジュールは更に、マルチキャスト・ルーティングツリーのプランニングを、ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換するよう構成されている。
【００１７】
第４態様、又は第４態様の第１から第２の可能な実装方式のうちの何れか１つを参照して、第４態様の第３の可能な実装方式において、当該システムは更に、マルチキャストグループへの加入の申請をマルチキャスト送信デバイスのグループ管理サービスモジュールに間接的に送信すべく、マルチキャスト受信デバイスによって使用されるよう構成されたシグナリングサーバを備える。
【００１８】
第４態様、又は第４態様の第１から第３の可能な実装方式の何れか１つを参照して、第４態様の第４の可能な実装方式において、当該システムは更に、マルチキャスト受信デバイスがパブリックＩＰアドレスを有さない場合、マルチキャスト受信デバイスのパブリックＩＰアドレス及びポート番号を取得すべく、マルチキャスト受信デバイスによって使用されるよう構成されたＮＡＴサーバを備える。
【００１９】
本発明の有益な効果は次のようなものである：アプリケーションエンドがマルチキャストグループの作成及び管理を達成すること、及び、ＳＤＮコントローラがマルチキャスト・ルーティングツリーのプランニングに従って、ＡＰＩを使用してＳＤＮスイッチに命令して、マルチキャストタスクを実行させること。マルチキャストは、アプリケーションエンドとＳＤＮネットワークとの間の相互協力によって達成され、このことはマルチキャスト構成の複雑さを大いに低減する。加えて、本発明では、専用ＭＣＵを更に配置する必要なくオーディオ・ビデオ会議を実施可能であり、従って、ネットワークコストが著しく低減され得る。
【図面の簡単な説明】
【００２０】
本発明の複数の実施形態における技術的解決法をより明確に説明すべく、本発明の複数の実施形態を説明するために必要な添付図面について以下で簡潔に説明する。以下の説明における添付図面は本発明の一部の実施形態を示しているに過ぎず、当業者ならば、創造努力なくこれらの添付図面から他の複数の図面を更に導出できるであろうことは明らかである。
【００２１】
【図１】本発明の一実施形態に係る、ＳＤＮネットワークのためのマルチキャストシステムの概略構造図である。
【００２２】
【図２】本発明の一実施形態に係る第１のアプリケーションエンドの構成の概略図である。
【００２３】
【図３】本発明の一実施形態に係る、マルチキャスト・ルーティングツリー管理サービスモジュールの構成の概略図である。
【００２４】
【図４】本発明の一実施形態に係るＳＤＮコントローラの構成の概略図である。
【００２５】
【図５】本発明の一実施形態に係るフローチャートである。
【００２６】
【図６Ａ】本発明の一実施形態に係るネットワーク要素の相互作用の概略フローチャートである。
【図６Ｂ】本発明の一実施形態に係るネットワーク要素の相互作用の概略フローチャートである。
【００２７】
【図７】本発明の第２の実施形態に係る概略図である。
【００２８】
【図８】本発明の第３の実施形態に係る概略図である。
【００２９】
【図９】本発明の第４の実施形態に係る概略図である。
【発明を実施するための形態】
【００３０】
図１を参照すると、本発明の一実施形態のソフトウェア・デファインド・ネットワークのためのマルチキャストシステムは、第１の会議サーバ又はアプリケーションエンドと、ＳＤＮデバイスと、シグナリングサーバと、ＮＡＴサーバと、第２の会議サーバ又はアプリケーションエンドと、第３の会議サーバ又はアプリケーションエンドと、第Ｎの会議サーバ又はアプリケーションエンドとを備える。第１の会議サーバ又はアプリケーションエンドはマルチキャスト送信デバイスであり、第２の会議サーバ又はアプリケーションエンド、第３の会議サーバ又はアプリケーションエンド、及び第Ｎの会議サーバ又はアプリケーションエンドはマルチキャスト受信デバイスであり、マルチキャスト送信デバイスによって送信されたデータはＳＤＮデバイスによってコピーされ、次に、いくつかのマルチキャスト受信デバイスに転送される。
【００３１】
図２に示されるように、第１のアプリケーションエンドは更に、グループ管理サービスモジュール及びマルチキャスト・ルーティングツリー管理サービスモジュールを有する。グループ管理サービスモジュールは、申請された、ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤに従ってマルチキャストグループを作成し、マルチキャストグループのメンバーの加入及び脱退、マルチキャストグループのメンバーのオンラインステータスの保持、及び同様のものを含む、マルチキャストグループのメンバーの管理を行うよう構成されている。グループ管理サービスモジュールの機能もまた、専用サーバによって達成されてよいことは言うまでもない。
【００３２】
図３に示されるように、マルチキャスト・ルーティングツリー管理サービスモジュールは更に、ユニキャストルート取得ユニット、マルチキャスト・ルーティングツリー・プランニングユニット、及び変換ユニットを有する。ユニキャストルート取得ユニットは、ネットワークにおける既存のユニキャスト・ルーティング情報を取得するよう構成されており、マルチキャスト・ルーティングツリー・プランニングユニットは、ユニキャスト・ルーティング情報に従って、マルチキャスト・ルーティングツリーのプランニングを完成させるよう構成されており、変換ユニットは、マルチキャスト・ルーティングツリーのプランニングを、ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換するよう構成されている。
【００３３】
マルチキャスト・ルーティングツリー管理サービスモジュールは、フローエントリ変更命令を、ＳＤＮコントローラのノースバウンドＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ、アプリケーション・プログラミング・インタフェース）を使用することでＳＤＮコントローラに送信する。マルチキャスト・ルーティングツリー管理サービスモジュールは、ＳＤＮコントローラ又は別のサーバ上に配置されてよいことは言うまでもない。
【００３４】
ＳＤＮデバイスは、ＳＤＮコントローラ及びＳＤＮスイッチを含む。図４に示されるように、ＳＤＮコントローラは更に、ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤの申請の要求であって、マルチキャスト送信デバイスによって送信された、要求を受信するよう構成された受信ユニットと、ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤをマルチキャスト送信デバイスに送信し、フローエントリをＳＤＮスイッチに送信するよう構成された送信ユニットとを含む。ＳＤＮコントローラは、フローエントリ（Ｆｌｏｗ  Ｅｎｔｒｙ、ここで、「フローエントリ」と既存のスイッチの「ルーティングテーブルエントリ」とは同様の機能を有する）変更命令を実行し、サウスバウンドＡＰＩを使用してフローエントリをＳＤＮスイッチに送信して、変更されたフローエントリに従ってデータ転送タスクを実行するようＳＤＮスイッチに命令してよい。加えて、ＳＤＮコントローラは更にノースバウンドＡＰＩを第１のアプリケーションエンドに開放し、これにより、アプリケーションエンドはノースバウンドＡＰＩを使用してＳＤＮコントローラのサービスを呼び出すことができる。
【００３５】
シグナリングサーバは、第１の会議サーバ又はアプリケーションエンド（マルチキャスト送信デバイス）と第Ｎの会議サーバ又はアプリケーションエンド（マルチキャスト受信デバイス）とに別々に接続され、マルチキャスト送信デバイスとマルチキャスト受信デバイスとの間でシグナリングを伝達するよう構成されている。ＮＡＴ（Ｎｅｔｗｏｒｋ  Ａｄｄｒｅｓｓ  Ｔｒａｎｓｌａｔｉｏｎ、ネットワークアドレス変換）サーバは、ローカルエリアネットワークのＩＰアドレスをパブリックＩＰアドレスに変換できる。マルチキャスト受信デバイスは、パブリックネットワーク又はローカルエリアネットワーク内にあってよい。ローカルエリアネットワーク内のマルチキャスト送信デバイスがプロキシサーバを使用して、発信情報を送信する場合、プロキシサーバは、マルチキャスト受信デバイスのクライアントの通信ポート番号をプロキシサーバのパブリックＩＰアドレスとポート番号とにマッピングし、ＮＡＴサーバは、マッピング先のパブリックＩＰアドレス及びポート番号を見つけ出すことができる。次に、マルチキャスト送信デバイスは、プロキシサーバがマルチキャスト受信デバイスをマッピングするパブリックＩＰアドレス及びポート番号にデータを送信する。
【００３６】
図５並びに図６Ａ及び図６Ｂを参照すると、本発明の一実施形態におけるＳＤＮネットワークのためのマルチキャスト方法は、主に以下の段階を備える。
【００３７】
Ｓ１０２．マルチキャストグループを作成する段階。これは、具体的に、マルチキャスト送信デバイス（アプリケーションエンド又は会議サーバ）上に配置されたグループ管理サービスモジュールが、ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）をＳＤＮコントローラのノースバウンドＡＰＩを使用することによってＳＤＮコントローラに申請すること、及びＳＤＮコントローラが、ＳＤＮコントローラ自身によって定義されたマルチキャストＩＰアドレス又はグループＩＤを、ノースバウンドＡＰＩを使用することによってグループ管理サービスモジュールに返すことを含む。
【００３８】
Ｓ１０４．マルチキャストグループのメンバーを管理する段階。これは、具体的に以下の段階を含む。
【００３９】
（１）．マルチキャスト送信デバイスのグループ管理サービスモジュールが、マルチキャストグループへの加入の申請を、シグナリングサーバを使用して間接的に受信する、又は、直接的に受信する。ここで、当該申請は、マルチキャスト受信デバイスによって送信され、次に、当該申請を承認又は拒絶する。
【００４０】
例えば、ＩＰＴＶ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ  Ｔｅｌｅｖｉｓｉｏｎ、インターネットプロトコルテレビ）は、サーバエンドからクライアントへのマルチキャスト通信であり、サーバはパブリックＩＰアドレスを有する。当該グループ管理サービスモジュールはサーバエンド上に配置され、クライアントは、マルチキャスト受信デバイスとして、サーバエンド上のグループ管理サービスモジュールとのＨＴＴＰプロトコルを使用してシグナリングを直接的に送信する。従って、シグナリングサーバもＮＡＴサーバも必要としない。
【００４１】
（２）．グループ管理サービスモジュールが、マルチキャストグループに加入するマルチキャスト受信デバイスのパブリックＩＰアドレスを取得する。具体的には、マルチキャスト受信デバイスがパブリックＩＰアドレスを有する場合、マルチキャスト受信デバイスは、マルチキャスト受信デバイスのパブリックＩＰアドレスをグループ管理サービスモジュールに直接的に送信する。又は、マルチキャスト受信デバイスがパブリックＩＰアドレスを有さない場合、例えば、ウェブＲＴＣ（Ｗｅｂ  Ｒｅａｌ‐Ｔｉｍｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）に基づいたマルチパーティ会議がクライアント・ツー・クライアントのマルチキャスト通信であり、通常、２つの通信パーティはどちらもパブリックＩＰアドレスを有さない場合、マルチキャスト受信デバイスは、ＮＡＴサーバを使用してマルチキャスト受信デバイスのパブリックＩＰアドレス及びポート番号を取得する必要があり、シグナリングサーバを使用して、当該パブリックＩＰアドレス及び当該ポート番号をグループ管理サービスモジュールに送信する。
【００４２】
（３）．グループ管理サービスモジュールが、マルチキャストグループに加入するマルチキャスト受信デバイスのオンラインステータス情報を取得し、オンラインステータス情報に従って、マルチキャスト受信デバイスについての情報を保持する。マルチキャスト受信デバイスについての情報の保持は、具体的には、メンバーの追加又は変更、既存のメンバーのオフライン移行、及び積極的に脱退するメンバーの削除、又は同様のものを含む。
【００４３】
Ｓ１０６．マルチキャスト・ルーティングツリーをプランニング及び変換する段階。マルチキャスト・ルーティングツリーは、スイッチを使用することによってマルチキャスト送信デバイスからマルチキャスト受信デバイスに送信されるデータパケットの「経路ツリー」である。マルチキャスト・ルーティングツリーのルートノードはマルチキャスト送信デバイスであり、マルチキャスト・ルーティングツリーの複数のリーフノードはマルチキャスト受信デバイスである。マルチキャスト・ルーティングツリーのプランニングは具体的には次のようなものである。マルチキャスト送信デバイス上又はＳＤＮコントローラ上に配置されたマルチキャスト・ルーティングツリー管理サービスモジュールがマルチキャスト送信デバイスからマルチキャスト受信デバイスへのルーティング経路を取得して、マルチキャスト・ルーティングツリーのプランニングを完成させる。
【００４４】
次に、マルチキャスト・ルーティングツリーのプランニングは、ＳＤＮコントローラによって実行され得るフローエントリ変更命令に変換される。
【００４５】
マルチキャスト・ルーティングツリー管理サービスモジュールがマルチキャスト送信デバイス上に配置された場合、マルチキャスト・ルーティングツリー管理サービスモジュールは、ＳＤＮコントローラのノースバウンドＡＰＩを使用してフローエントリ変更命令をＳＤＮコントローラに送信する。
【００４６】
マルチキャスト・ルーティングツリー管理サービスモジュールがマルチキャスト送信デバイス上に配置された場合、マルチキャスト・ルーティングツリー管理サービスモジュールは、次の２つの方法を使用して、ＳＤＮネットワークにおける既存のユニキャスト・ルーティング情報を取得してよい。（１）図７に示されるように、既存のシステムインタフェースを使用して、例えば、ｔｒａｃｅｒｔコマンドを使用して、ルートトレース機能が達成され、マルチキャスト送信デバイスからマルチキャスト受信デバイスへのルートについての情報が取得される。図７に示されるように、マルチキャスト受信デバイスのアドレスが１０．７１．１４６．３０であると仮定する。マルチキャスト送信デバイスが「ｔｒａｃｅｒｔ  １０．７１．１４６．３０」というコマンドを実行した場合、図７の当該コマンドに対する返ってきた結果は、マルチキャスト送信デバイスが、１０．６６．９２．１と、１０．６６．０．１３と、１０．７１．２５５．２６と、１０．７１．２５５．２５とを含むルートの４ホップを連続的に通過し、最後に１０．７１．１４６．３０のマルチキャスト受信デバイスに到着したことを示している。従って、当該コマンドを使用することによって、マルチキャスト送信デバイスからマルチキャスト受信デバイスへのルートについての完全な情報が得られる。（２）当該ルーティング情報は、ＳＤＮコントローラのノースバウンドＡＰＩを使用してＳＤＮコントローラから取得される。マルチキャスト・ルーティングツリー管理サービスモジュールがＳＤＮコントローラ上に配置された場合、ＳＤＮコントローラは既存のユニキャスト・ルーティング情報を直接的に取得してよい。
【００４７】
加えて、マルチキャスト・ルーティングツリーについての情報が正確であるように保つべく、マルチキャスト・ルーティングツリーは、マルチキャストグループのメンバーが変わるたびに更新される必要がある。
【００４８】
Ｓ１０８．マルチキャスト・データパケットを送信及び転送する段階。この段階は具体的に、マルチキャスト送信デバイスがデータパケットをマルチキャストＩＰアドレス又はグループＩＤに送信する（或いは、マルチキャストＩＰアドレスをマルチキャスト・データパケットに追加する）ことを含む。ここで、マルチキャストＩＰアドレス又はグループＩＤは段階Ｓ１０２において申請されている。ＳＤＮコントローラは、フローエントリ変更命令を実行し、サウスバウンドＡＰＩを使用してＳＤＮスイッチに命令して、変更されたフローエントリに従ってデータ転送タスクを実行させ、必要ならば、データパケットの内容を変更して、データパケットのマルチキャストＩＰアドレスをマルチキャスト受信デバイスのＩＰアドレスに変更してよい。
【００４９】
具体的に、図８に示されるように、ＳＤＮスイッチは、マルチキャストＩＰアドレス２．２．２．１００に送信されたデータパケットをコピーして、次にそれを２つのマルチキャスト受信デバイスクライアントに送信する。ここで、２つのクライアントのＩＰアドレスは、２．２．２．１００及び２．２．２．１０２である。この実施形態では、ＯｐｅｎＦｌｏｗ１．０規格を満たすＳＤＮコントローラ上で実行される必要があるフローエントリ変更命令は、具体的に、次のようなものである：
ｏｖｓ−ｏｆｃｔｌ  ａｄｄ−ｆｌｏｗ  ｂｒ０
ｉｄｌｅ＿ｔｉｍｅｏｕｔ＝０，ｄｌ＿ｔｙｐｅ＝０ｘ０８００，ｎｗ＿ｄｓｔ＝２．２．２．１０２，ａｃｔｉｏｎｓ＝ｍｏｄ＿ｄｌ＿ｄｓｔ：２８：６ｅ：ｄ４：０７：１ａ：ｄｃ，ｍｏｄ＿ｎｗ＿ｄｓｔ＝２．２．２．１０２，ｏｕｔｐｕｔ：４，ｍｏｄ＿ｄｌ＿ｄｓｔ：００：２５：９ｅ：ｃｂ：７０：０ｄ，ｍｏｄ＿ｎｗ＿ｄｓｔ＝２．２．２．１００，ｏｕｔｐｕｔ：２
【００５０】
任意選択で、マルチキャスト・データパケットの送信が完了した後、もはやマルチキャストグループが保たれる必要はなく、マルチキャスト送信デバイスは、ＳＤＮコントローラに命令してマルチキャストＩＰアドレス又はグループＩＤをリリースさせてよく、ＳＤＮコントローラは更にＳＤＮスイッチに命令して、ルーティングルールを元に戻させる。
【００５１】
図９を参照すると、図９は、本発明の更に別の実施形態に係る概略構造図である。ＳＤＮマルチキャストシステム２０は、プロセッサ５１、受信機５２、エミッタ５３、ランダムアクセスメモリ５４、リードオンリメモリ５５、バス５６、及びネットワークインタフェースユニット５７を備える。プロセッサ５１は、バス５６を使用して、受信機５２、エミッタ５３、ランダムアクセスメモリ５４、リードオンリメモリ５５、及びネットワークインタフェースユニット５７に別々に接続されている。実行を要求された場合、ＳＤＮマルチキャストシステムは、リードオンリメモリ５５に構築された基本入出力システム、又は、組み込み型システムのブートローダーガイドシステムを使用して起動させられて、通常実行状態に入るようＳＤＮマルチキャストシステムを導く。ＳＤＮマルチキャストシステムが通常実行状態に入った後、ネットワークからデータを受信する、又は、ネットワークへデータを送信するよう、ランダムアクセスメモリ５４においてアプリケーションプログラム及びオペレーティングシステムが実行される。これにより、
受信機５２はマルチキャスト・データパケットを受信するよう構成され、
プロセッサ５１は、アプリケーションエンドに命令してマルチキャストグループを作成させ、かつマルチキャストグループのメンバーを管理させ、アプリケーションエンド又はＳＤＮコントローラに命令して、マルチキャストグループに従ってマルチキャスト・ルーティングツリーのプランニングを完成させるよう構成され、
エミッタ５３は、マルチキャスト・ルーティングツリーのプランニングに従ってマルチキャスト・データパケットを転送するよう構成される。
【００５２】
この実施形態では、プロセッサ５１は、中央処理装置ＣＰＵ、若しくは特定用途向け集積回路ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）であってよい、又は、本願のこの実施形態を実施する１又は複数の集積回路として構成されてよい。
【００５３】
上述の技術的解決法において、マルチキャストは、マルチキャスト送信デバイスとＳＤＮネットワークとの間の相互協力によって達成され、このことがマルチキャスト構成の複雑さを大いに低減する。サーバからクライアントへのマルチキャストが実装され得るのみならず、クライアントからクライアントへのＳＤＮマルチキャストも実装され得る。加えて、本発明では、専用ＭＣＵを更に配置する必要なくオーディオ・ビデオ会議を実施可能であり、従って、ネットワークコストが著しく低減され得る。
【００５４】
本願において提供されたいくつかの実装方式において、開示されたシステム、装置、及び方法は他の複数の方式で実装されてよいことが理解されるべきである。例えば、説明された装置の実施形態は例示に過ぎない。例えば、モジュール又はユニットの分割は、論理的機能の分割に過ぎず、実際の実装においては他の分割であってもよい。例えば、複数のユニット又はコンポーネントが別のシステムに組み合わせられてよい、又は、統合されてよい、又は、いくつかの機能が無視されてよい、又は実行されなくてもよい。加えて、示された若しくは議論された相互連結、又は直接的な連結若しくは通信接続は、いくつかのインタフェースを使用して実施されてよい。装置間、又はユニット間の間接的な連結又は通信接続は、電子的、機械的、又は他の形態で実施されてよい。
【００５５】
別個の部分として説明されたユニットは、物理的に別個であってもなくてもよく、ユニットとして示された部分は、物理的ユニットであってもなくてもよいか、１つの位置に配置されてよいか、又は、複数のネットワークユニット上に分散されてよい。ユニットの一部又は全ては、実施形態の解決法の目的を実現するよう、実際の必要性に応じて選択されてよい。
【００５６】
加えて、本願の実施形態における機能ユニットは、１つの処理ユニットに統合されてよい、又は、機能ユニットのそれぞれは、物理的に単独で存在してよい、又は、２若しくはそれより多いユニットが１つのユニットに統合されてよい。統合されたユニットは、ハードウェアの形態で実装されてよい、又は、ソフトウェア機能ユニットの形態で実装されてよい。
【００５７】
統合されたユニットがソフトウェア機能ユニットの形態で実装され、独立した製品として販売又は使用される場合、統合されたユニットはコンピュータ可読記憶媒体に格納されてよい。そのような理解に基づいて、基本的に本願の技術的解決法、又は、先行技術に寄与する部分、又は、技術的解決法の全て又は一部は、ソフトウェア製品の形態で実装されてよい。ソフトウェア製品は、記憶媒体に格納され、（パーソナルコンピュータ、サーバ、又はネットワークデバイスであってよい）コンピュータデバイス、又はプロセッサ（ｐｒｏｃｅｓｓｏｒ）に命令して、本願の実装方式において説明された方法の段階の全て又は一部を実行させるためのいくつかの命令を含む。上述の記憶媒体は、ＵＳＢフラッシュドライブ、リムーバブルハードディスク、リードオンリメモリ（ＲＯＭ、Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ランダムアクセスメモリ（ＲＡＭ、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、磁気ディスク、又は光ディスクなどの、プログラムコードを格納できる任意の媒体を含む。
【００５８】
上述の説明は単に本願の実装方式であり、本願の範囲を限定するよう意図されてはいない。本願の本明細書及び図面の内容を使用して作成された、構造上の同等な変更又はプロセスの同等な変更、又は、別の関連技術分野への本明細書及び図面の内容の直接的又は間接的な適用は、本願の保護範囲内に含まれるものとする。
【図１】
0006463783.tif 000002
【図２】
0006463783.tif 000003
【図３】
0006463783.tif 000004
【図４】
0006463783.tif 000005
【図５】
0006463783.tif 000006
【図６Ａ】
0006463783.tif 000007
【図６Ｂ】
0006463783.tif 000008
【図７】
0006463783.tif 000009
【図８】
0006463783.tif 000010
【図９】
0006463783.tif 000011