説明

中継装置、パケット中継方法及びそのプログラム

【課題】サーバがQoSに対応していない場合であっても、ストリーミングデータの通信品質の低下を抑制する。
【解決手段】中継装置は、サーバが提供するサービスの種類を表すサービス情報と、サービスの提供用の通信に関する情報を表す通信情報との提供をサーバに要求し、要求への応答によって、サービス情報と、通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する。この中継装置は、プロトコルを用いた通信を利用して、サーバを識別可能な識別情報と、サービス情報と、通信情報とを取得する取得部と、取得部が取得した情報に基づいて、サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定する設定部と、設定したルールに基づいて、受信したパケットを転送する転送部とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、サーバが提供するサービスの種類を表すサービス情報と、サービスの提供用の通信に関する情報を表す通信情報との提供をサーバに要求し、当該要求への応答によって、サービス情報と通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する中継技術に関する。
【背景技術】
【0002】
近年、ネットワークを介してサーバからストリーミングデータを受信して、映像コンテンツなどを端末で視聴する技術が開発されている。こうした技術として、例えば、DLNA(Digital Living Network Alliance)規格が定められている。DLNA規格では、映像、音楽、画像などの各種コンテンツを提供するDMS(digital media server)と、コンテンツを再生するDMP(digital media player)とが規定され、ローカルエリアネットワークにおいて、DMSが記憶するコンテンツを複数のDMPで簡単に共有することができる。
【0003】
かかるDLNA規格では、スイッチングハブなどの中継装置を介してDMSのコンテンツをDMPに配信する場合、ネットワークの負荷が増大して、ストリ−ミングデータの再生が停止したり、途切れたりすることを抑制するために、QoS(Quality of Service)制御を採用可能としている。DLNA規格で規定されるQoS制御では、DMSは、送信するコンテンツデータに、その種類に応じた優先度を表すタグを付し、中継装置は、そのタグに基づいてQoS制御を行う(例えば、下記特許文献1)。しかしながら、かかるQoS制御は、DMSがQoS対応製品である必要があり、汎用性の面から改善の余地を残していた。かかる問題は、DLNAに準拠したネットワークシステムに限らず、コンテンツの送信側でQoSの優先順位を設定するネットワークシステムに共通する問題であった。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】WO2007−105568号公報
【特許文献2】特開2008−293436号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上述の問題の少なくとも一部を考慮し、本発明が解決しようとする課題は、サーバがQoSに対応していない場合であっても、ストリーミングデータの通信品質の低下を抑制することである。
【課題を解決するための手段】
【0006】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。
【0007】
[適用例1]サーバが提供するサービスの種類を表すサービス情報と、該サービスの提供用の通信に関する情報を表す通信情報との提供を前記サーバに要求し、該要求への応答によって、該サービス情報と、該通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する中継装置であって、
前記プロトコルを用いた通信を利用して、前記サーバを識別可能な識別情報と、前記サービス情報と、前記通信情報とを取得する取得部と、
前記取得部が取得した情報に基づいて、前記サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定する設定部と、
前記設定したルールに基づいて、前記受信したパケットを転送する転送部と
を備えた中継装置。
【0008】
かかる構成の中継装置は、サーバが提供するサービスの種類を表すサービス情報と、サービスの提供用の通信に関する情報を表す通信情報とをサーバに要求することによって取得可能なプロトコルを用いた通信を利用して、サーバの識別情報とサービス情報と通信情報とを取得するので、識別情報とサービス情報と通信情報とに基づいて、受信したパケットがストリーミングサービスの通信であるか否かを判別することができる。そして、中継装置は、取得した情報に基づいて、ストリーミングサービスの通信についてのQoS制御のルールを設定し、当該ルールに基づいてパケットの転送を行う。したがって、サーバがQoSに対応していない場合であっても、QoS制御によって、ストリーミングデータの通信品質の低下を抑制することができる。
【0009】
[適用例2]適用例1記載の中継装置であって、前記取得部は、所定のコマンドを用いて前記サーバを検索して、前記識別情報を取得するとともに、該取得した識別情報を宛先として、前記プロトコルを用いた要求を行い、前記識別情報を有するサーバから前記応答を受け取って、前記サービス情報と前記通信情報とを取得する中継装置。
【0010】
かかる構成の中継装置は、サーバを検索して、検索されたサーバに対して要求を行うことで、サーバの識別情報とサービス情報と通信情報とを取得することができるので、構成が容易である。また、短時間でサーバの識別情報とサービス情報と通信情報とを取得することができる。
【0011】
[適用例3]適用例2記載の中継装置であって、前記取得部は、前記検索を所定のタイミングで繰り返し行い、該検索の結果、新たな識別情報が取得された場合には、該新たな識別情報を有するサーバから、前記サービス情報と前記通信情報とを新たに取得し、前記設定部は、前記取得部が新たに取得した情報に基づいて、前記ルールの更新を行う中継装置。
【0012】
かかる構成の中継装置は、サーバの検索を繰り返し行い、新たに取得したサーバの識別情報とサービス情報と通信情報とに基づいて、QoS制御のルールを更新する。したがって、ネットワークに新たにサーバを追加した場合でも、当該追加されたサーバが提供するストリーミングサービスについて、好適にQoS制御を行うことができる。
【0013】
[適用例4]適用例2記載の中継装置であって、前記取得部は、前記検索を所定のタイミングで繰り返し行い、前記設定部は、前記検索の結果、取得済みの前記識別情報を再度取得できなかった場合には、該取得できなかった識別情報に基づいて、前記ルールの更新を行う中継装置。
【0014】
かかる構成の中継装置は、取得済みの識別情報を再度取得できなかった場合には、取得できなかった識別情報に基づいてルールの更新を行うので、ネットワークからサーバが離脱した場合に、その結果を好適に反映して、離脱したサーバに関するルールを削除することができる。その結果、ルールの構成が簡略化されるので、QoS制御の処理効率を高めることができる。
【0015】
[適用例5]前記取得部は、前記受信したパケットの内容を監視し、該受信したパケットが前記応答である場合に、該受信したパケットから前記識別情報と前記サービス情報と前記通信情報とを取得する適用例1記載の中継装置。
【0016】
かかる構成の中継装置は、受信したパケットの内容を監視し、受信したパケットから識別情報とサービス情報と通信情報とを取得するので、ネットワークに余分な負荷をかけることがない。
【0017】
[適用例6]適用例5記載の中継装置であって、前記取得部は、前記受信したパケットが、前記識別情報と前記サービス情報と前記通信情報とを未取得の前記サーバに係るものである場合にのみ、前記識別情報と前記サービス情報と前記通信情報とを取得し、前記設定部は、前記取得部が前記識別情報と前記サービス情報と前記通信情報とを新たに取得した場合に、該新たに取得した情報に基づいて前記ルールの更新を行う中継装置。
【0018】
かかる構成の中継装置は、未取得の識別情報、サービス情報及び通信情報のみを取得し、それに基づいてQoS制御のルールを更新する。つまり、ネットワークに新たにサーバが追加された場合に限り、ルールを更新するので、処理が効率的である。
【0019】
[適用例7]適用例5または適用例6記載の中継装置であって、前記プロトコルは、前記サーバが前記サービスの提供を行えない状態に変化することを判断可能な通知を該サーバが送信する仕組みを含み、前記設定部は、前記受信したパケットが前記通知である場合に、該通知に基づいて前記ルールの更新を行う中継装置。
【0020】
かかる構成の中継装置は、受信したパケットが、サーバがサービスの提供を行えない状態に変化する旨の通知を受けた場合にルールの更新を行うことができるので、ネットワークからサーバが離脱した場合に、その結果を好適に反映して、離脱したサーバに関するルールを削除することができる。その結果、ルールの構成が簡略化されるので、QoS制御の処理効率を高めることができる。
【0021】
また、本発明は、上述した中継装置のほか、適用例8のパケット中継方法、適用例9のプログラム、当該プログラムを記録した記憶媒体等としても実現することができる。勿論、これらの実現形態に対しても、適用例2〜適用例7の構成を付加することも可能である。
[適用例8]サーバが提供するサービスの種類を表すサービス情報と、該サービスの提供用の通信に関する情報を表す通信情報との提供を前記サーバに要求し、該要求への応答によって、該サービス情報と、該通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送するパケット中継方法であって、前記プロトコルを用いた通信を利用して、前記サーバを識別可能な識別情報と、前記サービス情報と、前記通信情報とを取得し、前記取得した情報に基づいて、前記サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定し、前記設定したルールに基づいて、前記受信したパケットを転送するパケット中継方法。
【0022】
[適用例9]サーバが提供するサービスの種類を表すサービス情報と、該サービスの提供用の通信に関する情報を表す通信情報との提供を前記サーバに要求し、該要求への応答によって、該サービス情報と、該通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する中継装置が該転送を行うためのプログラムであって、前記プロトコルを用いた通信を利用して、前記サーバを識別可能な識別情報と、前記サービス情報と、前記通信情報とを取得する取得機能と、前記取得した情報に基づいて、前記サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定する設定機能と、前記設定したルールに基づいて、前記受信したパケットを転送する転送機能とをコンピュータに実現させるプログラム。
【図面の簡単な説明】
【0023】
【図1】ネットワークシステム20の概略構成を示す説明図である。
【図2】ネットワークシステム20を構成するハブ100の概略構成を示す説明図である。
【図3】第1実施例としてのQoS制御設定処理の流れを示すフローチャートである。
【図4】第2実施例としてのQoS制御設定処理の流れを示すフローチャートである。
【発明を実施するための形態】
【0024】
本発明の実施例について説明する。
A.第1実施例:
A−1.ネットワークシステム20の概略構成:
本発明の実施例としてのネットワークシステム20の概略構成を図1に示す。ネットワークシステム20は、DLNA規格に準拠したネットワークシステムである。本実施例におけるネットワークシステム20は、有線LANと無線LANとが混在して構築されている。
【0025】
図1に示すように、本実施例のネットワークシステム20は、ハブ100,200,300、DMS30、DMP70等を備えている。なお、説明を簡単にするため、DMS、DMPは、各1台として示しているが、これらは複数台であってもよい。ハブ100,200,300は、有線インタフェースと無線インタフェースとを備え、OSI参照モデルのレイヤ2(データリンク層)でパケットの転送を行うスイッチングハブである。このハブ100,200,300は、同一の構成を有している。なお、本実施例において、パケットとは、単にデータの転送単位を意味し、レイヤ2,レイヤ3などのプロトコルレイヤに依存した意味ではない。
【0026】
このネットワークシステム20において、ハブ100は、有線によって、DMS30、ネットワークプリンタ40及びハブ200にそれぞれ接続されており、さらに、無線によって、無線インタフェースを備える携帯電話50と接続されている。ハブ200は、有線によって、HUB100とゲートウェイ65とにそれぞれ接続されており、さらに、無線によって、無線インタフェースを備えるパーソナルコンピュータ60とハブ300とにそれぞれ接続されている。このゲートウェイ65は、有線によってインターネットINTに接続されている。ハブ300は、有線によって、DMP70と接続されており、さらに、無線によって、ハブ200及び無線インタフェースを備えたゲーム機80と接続されている。DMP70は、さらに、有線によってテレビ90に接続されている。なお、図1においては、ノード間の有線による接続を実線で表示し、無線による接続を点線で表示している。かかるネットワークシステム20において、DMS30がDMP70に向けて送信したストリーミングデータは、ハブ100,200,300の転送を介して、DMP70に受信される。DMP70は受信したストリーミングデータを再生してテレビ90に出力することができる。
【0027】
本実施例では、ネットワークシステム20において、有線LANは、Ethernet(登録商標)に準拠して構築され、無線LANは、IEEE802.11に準拠して構築されている。ただし、ネットワークシステム20の接続形態は、有線、無線を制限するものではなく、有線LANのみによって構築されていてもよいし、無線LANのみによって構築されていてもよい。また、これらのLANは、他の規格に準拠して構築されていてもよい。例えば、有線LANがPLC(Power Line Communications)に準拠して構築されていてもよい。
【0028】
A−2.ハブ100の概略構成:
同一構成のハブ100,200,300を代表して、ハブ100の概略構成を図2に示す。ハブ100は、データリンク層において、MACアドレス情報に基づいてパケットの転送を行う、いわゆるスイッチングハブである。図示するように、ハブ100は、CPU110、フラッシュROM120、RAM130、有線インタフェース140、無線インタフェース150を備え、それぞれがバスにより相互に接続されている。
【0029】
CPU110は、フラッシュROM120に記憶されたファームウェア等のプログラムをRAM130に展開して実行することで、ハブ100の動作全般を制御する。このCPU110は、受信したパケットを、MACアドレステーブルを参照して、宛先MACアドレスに対応するポートに転送する。なお、かかる機能は、CPU110とは別体にMACチップを設けて実現してもよい。また、CPU110は、所定のプログラムを実行することで、DLNA規格に準拠した通信を行う。DLNA規格では、UPnP(Universal Plug and Play)プロトコルを用いて、ネットワークに接続された機器の自動認識やIPアドレスの自動割り当てを行う。CPU110は、所定のプログラムにより、取得部111、設定部112、転送部113としても機能する。これらの各機能部の詳細については後述する。
【0030】
有線インタフェース140は、有線LAN規格に準拠してノードと接続するためのインタフェースである。本実施例では、4つのポートを備えている。この有線インタフェース140は、各ポートから受信した信号の波形を整えるPHYチップを内蔵している。無線インタフェース150は、無線LAN規格に準拠して、ノードと接続するためのインタフェースである。
【0031】
A−3.QoS制御設定処理:
ネットワークシステム20において、ハブ100,200,300が実行するQoS制御設定処理について説明する。QoS制御設定処理とは、ハブ100,200,300が実行するパケットの転送処理におけるQoS制御のルールを設定する処理である。この処理で設定するルールは、DMS30から送信されるストリーミングデータの品質を確保するためのものである。以下、QoS制御設定処理がハブ100で実行されるものとして説明する。
【0032】
本実施例におけるQoS制御設定処理の流れを図3に示す。この処理は、本実施例においては、ハブ100の電源を投入し、UPnPによって自身のIPアドレスを設定した後、定期的に繰り返し実行される。QoS制御設定処理が開始されると、図3に示すように、ハブ100のCPU110は、まず、取得部111の処理として、ディスカバリ動作によって、ネットワークシステム20に接続されたDMS30を検索する(ステップS400)。具体的には、UPnPで規定されたSSDP(Simple Service Discovery Protocol)を用い、DMSの検索パケットであるM−SEARCHメソッドをマルチキャストで送信する。なお、このディスカバリ動作は、DLNA規格において、定期的に実行することが規定されており、本実施例では、このディスカバリ周期に合わせて、QoS制御設定処理を実行するものとした。つまり、DLNA規格で規定されるディスカバリ動作をステップS400の処理に流用するものとした。ただし、QoS制御設定処理の開始タイミングは、適宜設定すればよい。DMS30は、このM−SEARCHメソッドを受信すると、ハブ100に対して、応答をユニキャストで送信する。この応答を受信して、ハブ100は、DMS30を発見し、そのIPアドレスを知ることができる。
【0033】
DMS30を検索すると、CPU110は、過去に実行したQoS制御設定処理のステップS440(後述)によって既に登録されているDMSが全て発見されたか否かを判断する(ステップS410)。なお、現在実行中のQoS制御設定処理が、繰り返し実行される処理のうちの1回目の処理である場合には、登録したDMSが全て発見されたものと判断することとした。
【0034】
その結果、登録済みのDMSのうちで、上記ステップS400で発見できなかったDMSがあれば(ステップS410:NO)、CPU110は、発見できなかったDMSの登録情報を削除する(ステップS420)。この登録情報とは、後述するステップS440,S460で登録される情報であり、その内容は後述する。なお、かかる構成に代えて、複数回のQoS制御設定処理において、登録済みのDMSのうちで、所定回数連続して発見できなかったDMSがあった場合に、DMSの登録情報を削除する構成としてもよい。こうすれば、パケットの消失にも対応できる。
【0035】
一方、登録済みのDMSが上記ステップS400で全て発見されれば(ステップS410:YES)、CPU110は、さらに、未登録のDMSを上記ステップS400で発見したか否かを判断する(ステップS430)。その結果、未登録のDMSを発見していれば(ステップS430:YES)、CPU110は、未登録のDMSのIPアドレスを登録する(ステップS440)。
【0036】
IPアドレスを登録すると、CPU110は、取得部111の処理として、登録したIPアドレスを有するDMS(ここではDMS30とする)のコンテンツ情報を取得する(ステップS450)。コンテンツ情報とは、DMS30がどのようなサービスをどのような通信で提供するかを示す情報である。この処理は、本実施例においては、UPnPで規定されたCDS(Content Directory Service)を利用する。CDSは、DMSが持つコンテンツの情報を階層化して配信する機能である。CPU110は、この機能を利用して、DMS30に対して所定のコマンドを発行すると、DMS30からの応答によって、DMS30が提供するサービス(コンテンツ)の種類を表す情報(以下、サービス情報ともいう)、例えば、「Video」、「Music」、「Pictures」と、その種類ごとに、コンテンツを提供する通信に関する情報(以下、通信情報ともいう)を取得することができる。通信情報としては、コンテンツの種類毎に設定されたプロトコルタイプ、ポート番号などが含まれる。
【0037】
コンテンツ情報を取得すると、CPU110は、DMS30のIPアドレスと対応付けて、コンテンツの種類ごとのプロトコルタイプとポート番号とを登録する(ステップS460)。ここで登録する情報は、ストリーミング配信を行うコンテンツに係るものに限られる。
【0038】
このプロトコルタイプとポート番号とは、DMSが配信するストリーミングデータの判別に用いることができる。CDSの応答には、コンテンツの種類ごとに設定されたポート番号が含まれるので、このポート番号を用いれば、基本的に、ストリーミングデータを判別することができる。ポート番号は、同一のプロトコルを使用する場合であっても同一であるとは限らない。通常、汎用のプロトコルに対して既定のウエルノウンポート(例えば、HTTPであれば80)が用いられるが、DLNA規格対応機器においては、ベンダが設定可能なレジスタードポートやプライベートポートが設定されることが多いからである。また、ポート番号は、コンテンツの種類ごとに異なる値で設定されることもあれば、複数のコンテンツの種類間で同一の値で設定されることもある。DLNA規格では、通信形態として、ストリーミングの他に、アップロードやダウンロードも規定されているが、ストリーミングと、アップロード及びダウンロードとでは、通常、ポート番号が異なるので、これらを判別することも可能である。なお、プロトコルタイプ及びポート番号は、DMS30以外のノードが送信するパケットと同じ内容になることも考えられるが、後述するように、DMSが配信するストリーミングデータの判別にIPアドレスを併用することによって、このような状況は判別可能である。
【0039】
プロトコルタイプは、DLNA規格では、TCP(Transmission Control Protocol)とUDP(User Datagram Protocol)とが定められている。DMSの仕様によっては、種類の異なるコンテンツ間でプロトコルタイプが異なる場合には、これらのコンテンツに同一のポート番号が与えられることがある。ポート番号に加えてプロトコルタイプをストリーミングデータの判別に用いれば、このような場合にもストリーミングデータを好適に判別することができ、判別精度を向上させることができる。ただし、ポート番号のみを用いる構成としてもよい。
【0040】
プロトコルタイプとポート番号とを登録すると、あるいは、未登録のDMSを発見していなければ(ステップS430:NO)、CPU110は、登録情報、すなわち、IPアドレス、プロトコルタイプ及びポート番号が上記ステップS420,S440,S460で変更されたか否かを判断する(ステップS470)。その結果、登録情報に変更があれば(ステップS470:YES)、ネットワークシステム20にDMSが新たに接続されたか、離脱したということであり、CPU110は、設定部112の処理として、新たな登録情報に基づいてQoS制御ルールを設定する(ステップS480)。ここで設定するQoS制御ルールは、登録されたIPアドレスとプロトコルタイプとポート番号との組み合わせをリスト化し、当該リストに合致するパケット、すなわち、DMS30が配信するストリーミングデータであると判別されるパケットを優先的に転送することを定めたものである。つまり、ステップS480では、DMS30を送信元とするストリーミングデータのQoS制御における優先度が、他のパケットよりも高く設定される。本実施例においては、コンテンツの種類によらず、また、送信元のDMSの違いによらず、全てのストリーミングデータは、同等の優先度を設定するものとした。
【0041】
QoS制御については、公知の技術であるため、詳しい説明は省略するが、優先制御や帯域制御を例示することができる。優先制御は、定められた優先度ごとにキューを分けて、優先度が高いパケットを予め定めた重み付けで重み付けた優先順位で優先的に送信する制御である。帯域制御は、パケットの優先度に応じて、帯域を確保したり、制限したりする制御である。帯域の制限を行う場合、過剰に蓄積されたパケットは輻輳制御によって破棄されることとなる。
【0042】
一方、登録情報に変更がなければ(ステップS470:NO)、ネットワークシステム20にDMSの新たな接続または離脱がないということであり、CPU110はQoS制御設定処理を終了する。こうして、QoS制御設定処理は終了となる。かかるQoS制御設定処理でQoS制御のルールが設定されると、CPU110は、転送部113の処理として、当該ルールに基づいたQoS制御によって、受信したパケットの転送処理を行う。なお、ハブ100は、レイヤ2でパケットの転送を行うスイッチングハブであるが、CPU110は、IPアドレスとプロトコルタイプとポート番号とによってQoS制御を行うために、上位レイヤのヘッダをチェックした後に、レイヤ2で転送処理を行うこととなる。
【0043】
A−4.効果:
かかる構成のハブ100は、DMS30が提供するコンテンツの種類を表すサービス情報と、コンテンツの提供用の通信に関する情報を表す通信情報であるプロトコルタイプ及びポート番号とをDMS30に要求することによって取得可能なプロトコルを用いた通信を利用して、DMS30のIPアドレスとサービス情報と通信情報とを取得するので、IPアドレスとサービス情報と通信情報とに基づいて、受信したパケットがストリーミングサービスの通信であるか否かを判別することができる。そして、取得した情報に基づいて、ストリーミングサービスの通信についてのQoS制御のルールを設定し、当該ルールに基づいてパケットの転送を行う。したがって、DMS30がQoSに対応していない場合であっても、QoS制御を行うことができ、ストリーミングデータの通信品質の低下を抑制することができる。しかも、上述のプロトコルとしてUPnPを用いることができるので、汎用性が高い。
【0044】
また、ハブ100は、DMS30を検索して、検索されたDMS30に対して要求を行うことで、DMS30のIPアドレスとサービス情報と通信情報とを取得することができるので、構成が容易である。また、短時間でDMS30のIPアドレスとサービス情報と通信情報とを取得することができる。しかも、DMS30を検索するタイミングは、DLNA規格において規定された定期的な検索のタイミングと一致させているため、すなわち、DLNA規格において必要となる検索のための通信を流用することができるため、処理が効率的であると共に、ネットワーク負荷の増大を抑制することができる。
【0045】
また、ハブ100は、DMS30の検索を繰り返し行い、新たに発見したDMS30からDMS30のIPアドレスとサービス情報と通信情報とを取得し、それらに基づいて、QoS制御のルールを更新する。したがって、ネットワークに新たにDMS30を追加した場合でも、当該追加されたサーバが提供するストリーミングサービスについて、好適にQoS制御を行うことができる。しかも、ハブ100は、検索によって未登録のDMS30を発見した場合にのみ、CDSを利用してIPアドレスとサービス情報と通信情報とを取得するので、処理が効率的であると共に、ネットワーク負荷の増大を抑制することができる。
【0046】
また、ハブ100は、検索によって取得済みのDMS30のIPアドレスを再度取得できなかった場合には、取得できなかったDMS30に基づいてQoS制御のルールの更新を行うので、ネットワークからDMS30が離脱した場合に、その結果を好適に反映して、離脱したDMS30に関するルールを削除することができる。その結果、ルールの構成が簡略化されるので、QoS制御の処理効率を高めることができる。
【0047】
B.第2実施例:
本発明の第2実施例について説明する。第2実施例におけるハブ100のハード構成は、第1実施例と同様である。第2実施例では、QoS制御設定処理の流れのみが第1実施例と異なる。以下、第2実施例としてのQoS制御設定処理について図4を用いて説明する。なお、以下の説明では、第1実施例と共通する事項については、説明を簡略化する。図4に示すように、第2実施例としてのQoS制御設定処理が開始されると、ハブ100のCPU110は、取得部111の処理として、受信したパケットをモニタする(ステップS500)。この処理は、受信したパケットが、DMS30がDMP70の要求を受けてDMP70に送信するCDSパケットであるか、それとも、ByeByeパケットであるか、それとも、その他のパケットであるかを判別するために行う。ByeByeパケットは、UPnPで規定されており、ネットワークに接続された機器が電源OFFなどの理由によってネットワークから離脱することをマルチキャストで通知するパケットである。かかるByeByeパケットは、DMS30がコンテンツの配信サービスの提供を行えない状態に変化することを判断可能な通知となる。
【0048】
具体的には、CPU110は、受信したパケットの宛先ポート番号を参照する。そして、受信したパケットがCDSパケットやByeByeパケットである可能性があれば、つまり、宛先ポート番号がUPnPに対応する値であれば、CPU110は、さらにデータ領域まで参照して、受信パケットの内容を解釈し、CDSパケットやByeByeパケットであるか否かを判別する。このように階層的な判別を行うことによって、効率的な判別を行うことができる。
【0049】
受信したパケットをモニタした結果、受信パケットがCDSパケットでもByeByeパケットでもなければ(ステップS510:その他)、CPU110は、QoS制御設定処理を終了する。
【0050】
一方、受信パケットがCDSパケットであれば(ステップS510:CDS)、CPU110は、当該パケットの送信元が、過去に実行したQoS制御設定処理のステップS530(後述)によって既に登録されているDMS30であるか否かをIPアドレスによって判断する(ステップS520)。その結果、既に登録されていれば(ステップS520:YES)、再度登録する必要はないため、CPU110は、QoS制御設定処理を終了する。一方、登録されていなければ(ステップS520:NO)、CPU110は、取得部111の処理として、受信したCDSパケットの内容を取得して、DMS30のIPアドレスと、コンテンツの種類ごとのプロトコルタイプとポート番号とを対応付けて登録情報として登録する(ステップS530)。
【0051】
さらに、受信パケットがByeByeパケットであれば(ステップS510:ByeBye)、送信元のDMS30は、ネットワークから離脱し、今後、ストリーミングデータを送信しないということであるから、CPU110は、当該パケットの送信元のDMSの登録情報を削除する(ステップS540)。
【0052】
登録情報の登録または削除を行うと、CPU110は、設定部112の処理として、新たな登録情報に基づいてQoS制御ルールを設定する(ステップS550)。こうして、QoS制御設定処理は終了となる。
【0053】
かかる構成のハブ100は、受信したパケットの内容をモニタし、受信したパケットからIPアドレスとサービス情報と通信情報とを取得するので、ネットワークに余分な負荷をかけることがない。
【0054】
また、ハブ100は、特定したCDSパケットのうちの未取得のIPアドレス、サービス情報及び通信情報のみを取得し、それに基づいてQoS制御のルールを更新する。つまり、ネットワークに新たにDMS30が追加された場合に限り、ルールを更新するので、処理が効率的である。
【0055】
上述した実施形態の変形例について説明する。
C:変形例:
C−1.変形例1:
上述の実施形態においては、QoS制御の設定ルールにおいて、IPアドレスを用いてDMS30を識別する構成について示したが、かかる構成に限られるものではなく、DMS30を識別可能な種々の識別情報を用いることができる。例えば、MACアドレスを用いてもよい。
【0056】
C−2.変形例2:
ハブ100は、上述したQoS制御の実行状態にあるか否かを表示する表示部を備えていてもよい。こうした表示部としては、例えば、LEDやディスプレイとすることができる。こうすれば、QoS制御が実行されているか否かをユーザが確認することができ、利便性が向上する。
【0057】
C−3.変形例3:
ハブ100は、ユーザの指示を受け付ける入力部を備えていてもよい。こうした入力部としては、例えば、QoS制御の程度を設定可能なGUIを表示するディスプレイとしてもよい。QoS制御の程度としては、上述した優先制御における重み付けの内容や、帯域制限の可否、範囲などを例示することができる。こうすれば、各ノードをユーザが使用する状況に応じて、ストリーミングデータの優先度を変更することができ、より柔軟な運用を行うことができる。例えば、ネットワークシステム20が複数のユーザによって利用され、そのユーザの1人がゲーム機80をインターネットINTとの通信を利用して使用している場合に、ゲームの応答性が著しく悪化しないようにQoSの優先度を調節することができる。かかるGUIは、設定の候補を選択可能に構成してもよい。こうすれば、ユーザ操作が容易になり、利便性が向上する。
【0058】
あるいは、入力部は、QoS制御の実行の可否を受け付けるスイッチとしてもよい。こうしても、より柔軟な運用を行うことができる。例えば、ゲーム機80の応答性を最優先したいときには、ユーザは、入力部を操作して、QoS制御を停止させることができる。かかる構成を上述の変形例2と組み合わせれば、ユーザは、QoSの動作状態を確認した上で、QoS制御の実行の可否を入力できるので、より効果的である。
【0059】
C−4.変形例4:
上述の実施形態においては、UPnPプロトコルに準拠したネットワークにおいてQoS制御を実現するハブ100の構成について示したが、本発明を適用するネットワークは、UPnPプロトコルに準拠したプロトコルに限るものではない。当該ネットワークは、サーバが提供するサービスの種類を表すサービス情報と、サービスの提供用の通信に関する情報を表す通信情報との提供をサーバに要求し、当該要求への応答によって、サービス情報と、通信情報とを取得可能なプロトコルを利用可能に構築されたものであればよい。当該プロトコルは、規格化されていないプロトコルであってもよい。
【0060】
C−5.変形例5:
上述の実施形態においては、本発明の中継装置の一形態として、ハブ100の構成について示したが、本発明の中継装置は、上記変形例2で述べたネットワークに適合可能であり、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する中継装置であればよい。本発明は、例えば、ブリッジ機能を有するアクセスポイント、ネットワーク層において転送を行うスイッチングルーターやレイヤ3スイッチ、トランスポート層においてスイッチングを行うレイヤ4スイッチなど種々の形態で実施することができる。
【0061】
以上、本発明の実施形態について説明したが、上述した実施形態における本発明の構成要素のうち、独立クレームに記載された要素以外の要素は、付加的な要素であり、適宜省略、または、組み合わせが可能である。また、本発明はこうした実施形態に限られるものではなく、本発明の要旨を脱しない範囲において、種々なる態様で実施できることは勿論である。例えば、本発明は、中継装置としての構成のほか、パケット中継方法、そのプログラム、当該プログラムを記録した記憶媒体等としても実現することができる。
【符号の説明】
【0062】
20…ネットワークシステム
30…DMS
40…ネットワークプリンタ
50…携帯電話
60…パーソナルコンピュータ
65…ゲートウェイ
70…DMP
80…ゲーム機
90…テレビ
100,200,300…ハブ
110…CPU
111…取得部
112…設定部
113…転送部
120…フラッシュROM
130…RAM
140…有線インタフェース
150…無線インタフェース
INT…インターネット

【特許請求の範囲】
【請求項1】
サーバが提供するサービスの種類を表すサービス情報と、該サービスの提供用の通信に関する情報を表す通信情報との提供を前記サーバに要求し、該要求への応答によって、該サービス情報と、該通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する中継装置であって、
前記プロトコルを用いた通信を利用して、前記サーバを識別可能な識別情報と、前記サービス情報と、前記通信情報とを取得する取得部と、
前記取得部が取得した情報に基づいて、前記サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定する設定部と、
前記設定したルールに基づいて、前記受信したパケットを転送する転送部と
を備えた中継装置。
【請求項2】
請求項1記載の中継装置であって、
前記取得部は、所定のコマンドを用いて前記サーバを検索して、前記識別情報を取得するとともに、該取得した識別情報を宛先として、前記プロトコルを用いた要求を行い、前記識別情報を有するサーバから前記応答を受け取って、前記サービス情報と前記通信情報とを取得する
中継装置。
【請求項3】
請求項2記載の中継装置であって、
前記取得部は、前記検索を所定のタイミングで繰り返し行い、該検索の結果、新たな識別情報が取得された場合には、該新たな識別情報を有するサーバから、前記サービス情報と前記通信情報とを新たに取得し、
前記設定部は、前記取得部が新たに取得した情報に基づいて、前記ルールの更新を行う
中継装置。
【請求項4】
請求項2記載の中継装置であって、
前記取得部は、前記検索を所定のタイミングで繰り返し行い、
前記設定部は、前記検索の結果、取得済みの前記識別情報を再度取得できなかった場合には、該取得できなかった識別情報に基づいて、前記ルールの更新を行う
中継装置。
【請求項5】
前記取得部は、前記受信したパケットの内容を監視し、該受信したパケットが前記応答である場合に、該受信したパケットから前記識別情報と前記サービス情報と前記通信情報とを取得する請求項1記載の中継装置。
【請求項6】
請求項5記載の中継装置であって、
前記取得部は、前記受信したパケットが、前記識別情報と前記サービス情報と前記通信情報とを未取得の前記サーバに係るものである場合にのみ、前記識別情報と前記サービス情報と前記通信情報とを取得し、
前記設定部は、前記取得部が前記識別情報と前記サービス情報と前記通信情報とを新たに取得した場合に、該新たに取得した情報に基づいて前記ルールの更新を行う
中継装置。
【請求項7】
請求項5または請求項6記載の中継装置であって、
前記プロトコルは、前記サーバが前記サービスの提供を行えない状態に変化することを判断可能な通知を該サーバが送信する仕組みを含み、
前記設定部は、前記受信したパケットが前記通知である場合に、該通知に基づいて前記ルールの更新を行う
中継装置。
【請求項8】
サーバが提供するサービスの種類を表すサービス情報と、該サービスの提供用の通信に関する情報を表す通信情報との提供を前記サーバに要求し、該要求への応答によって、該サービス情報と、該通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送するパケット中継方法であって、
前記プロトコルを用いた通信を利用して、前記サーバを識別可能な識別情報と、前記サービス情報と、前記通信情報とを取得し、
前記取得した情報に基づいて、前記サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定し、
前記設定したルールに基づいて、前記受信したパケットを転送する
パケット中継方法。
【請求項9】
サーバが提供するサービスの種類を表すサービス情報と、該サービスの提供用の通信に関する情報を表す通信情報との提供を前記サーバに要求し、該要求への応答によって、該サービス情報と、該通信情報とを取得可能なプロトコルを利用可能に構築されたネットワークにおいて、受信したパケットをデータリンク層以上に上位のプロトコルレイヤで転送する中継装置が該転送を行うためのプログラムであって、
前記プロトコルを用いた通信を利用して、前記サーバを識別可能な識別情報と、前記サービス情報と、前記通信情報とを取得する取得機能と、
前記取得した情報に基づいて、前記サーバが提供するストリーミングサービスの通信についてのQoS制御のルールを設定する設定機能と、
前記設定したルールに基づいて、前記受信したパケットを転送する転送機能と
をコンピュータに実現させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2012−15739(P2012−15739A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2010−149564(P2010−149564)
【出願日】平成22年6月30日(2010.6.30)
【出願人】(390040187)株式会社バッファロー (378)
【Fターム(参考)】