(57)【要約】【課題】  UPnP AVプロトコルを用いたデータ伝送において、実コネクションと仮想コネクションとの対応付けを可能とする。【解決手段】  本発明のデータ伝送方法は、所定の伝送プロトコルに従って互いに通信を行う第１及び第２メディア装置と、UPnP AVプロトコルに基づいて前記第１及び第２メディア装置を制御する制御装置とを用いたデータ伝送方法であって、前記第１及び第２メディア装置間に、前記制御装置による制御の下、仮想化伝送路を確立し、前記第１メディア装置から第２メディア装置に、前記仮想化伝送路に関する情報を含む、伝送路確立要求データを送信し、前記仮想化伝送路と対応づけて、前記第１および第２メディア装置間にデータ伝送路を確立し、前記確立されたデータ伝送路を用いて前記第２メディア装置から第１メディア装置へまたはこの逆へメディアデータを送信することを特徴とする。【選択図】  図１
2006115471.tif 000002
【特許請求の範囲】
【請求項１】
所定の伝送プロトコルに従って互いに通信を行う第１及び第２メディア装置と、UPnP AVプロトコルに従って前記第１及び第２メディア装置を制御する制御装置とを備えたデータ伝送システムであって、
前記制御装置は、
前記第１及び第２メディア装置間に、前記UPnP AVプロトコルに基づく仮想コネクションを確立する仮想コネクション確立手段と、
前記仮想コネクションを用いて前記第２メディア装置からメディアデータを受信又は前記第２メディア装置へメディアデータを送信することを、前記第１メディア装置に指示する指示データを送出するデータ通信指示手段と、を有し、
前記第１メディア装置は、
前記指示データを受信した場合は、前記メディアデータの受信又は送信を行うための実コネクションを確立することを前記第２メディア装置に要求する実コネクション確立要求を生成し、生成した前記実コネクション確立要求を前記第２メディア装置に送出する、前記実コネクション確立要求は前記仮想コネクションに関する情報を含む、実コネクション確立要求手段と、
確立された前記実コネクションを用いて前記メディアデータの受信又は送信を行う第１のデータ通信手段と、を有し、
前記第２メディア装置は、
前記第１メディア装置からの前記実コネクション確立要求に基づいて、前記仮想コネクションと対応づけて、前記第１メディア装置との間で前記実コネクションを確立する実コネクション確立手段と、
確立された前記実コネクションを用いて前記第１メディア装置に前記メディアデータを送信又は前記第１メディア装置から前記メディアデータを受信する第２のデータ通信手段と、を有する、
ことを特徴とするデータ伝送システム。
【請求項２】
前記制御装置における前記仮想コネクション確立手段は、
第２メディア装置側仮想コネクション情報を生成することを指示する第１指示データを前記第２メディア装置に送出する第１指示データ送出手段と、
前記第２メディア装置から前記第２メディア装置側仮想コネクション情報を受け取った場合は、第１メディア装置側仮想コネクション情報を生成することを指示する第２指示データを前記第１メディア装置に送出する、前記第２指示データは前記第２メディア装置側仮想コネクション情報を含む、第２指示データ送出手段と、を有し、
前記第２メディア装置は、さらに、
前記第１指示データを受け取った場合は、前記第２メディア装置側仮想コネクション情報を生成し、生成した前記第２メディア装置側仮想コネクション情報を第２メディア装置側通信資源に割り当てる第１の割当手段と、
生成した前記第２メディア装置側仮想コネクション情報を前記制御装置に送出する仮想コネクション情報送出手段と、を有し、
前記第１メディア装置は、さらに、
前記第２指示データを受け取った場合は、前記第１メディア装置側仮想コネクション情報を生成し、生成した前記第１メディア装置側仮想コネクション情報を、第１メディア装置側通信資源に割り当てる、第２の割当手段と、
前記指示データが前記制御装置から受信された場合は、第１メディア装置側実コネクション情報を生成し、生成した前記第１メディア装置側実コネクション情報を前記第１メディア装置側通信資源に割り当てる第３の割当手段と、を有し
前記第２メディア装置における前記実コネクション確立手段は、前記実コネクション確立要求が前記第１メディア装置から受信された場合は、第２メディア装置側実コネクション情報を生成し、生成した前記第２メディア装置側実コネクション情報を前記第２メディア装置側通信資源に割り当てる、前記第１メディア装置からの前記実コネクション確立要求には前記第２メディア装置側仮想コネクション情報が含まれる、
ことを特徴とする請求項１に記載のデータ伝送システム。
【請求項３】
前記第１又は第２メディア装置は、前記実コネクションにおけるデータ通信が活性状態であるか非活性状態であるかを検出する検出手段と、
前記データ通信が非活性状態であることを検出した場合は、前記第１又は第２メディア装置側通信資源を解放する解放手段と、
をさらに備えたことを特徴とする請求項２に記載のデータ伝送システム。
【請求項４】
前記第１又は第２メディア装置における前記解放手段は、所定期間継続して前記データ通信が非活性状態であることを検出した場合は、前記第１又は第２メディア装置側通信資源を解放することを特徴とする請求項３に記載のデータ伝送システム。
【請求項５】
前記第１又は第２メディア装置は、前記UPnP AVプロトコルに従って、前記制御装置を介して、相手方の前記第２又は第１メディア装置の稼働状態を取得する取得手段と、
前記第２又は第１メディア装置が非稼働状態である場合は、前記第１又は第２メディア装置側通信資源を解放する解放手段と、
をさらに備えたことを特徴とする請求項２ないし４のいずれかに記載のデータ伝送システム。
【請求項６】
所定の伝送プロトコルに従って互いに通信を行う第１及び第２メディア装置と、UPnP AVプロトコルに基づいて前記第１及び第２メディア装置を制御する制御装置とを用いたデータ伝送方法であって、
前記第１及び第２メディア装置間に、前記制御装置による制御の下、仮想コネクションを確立するステップと、
前記第１メディア装置から第２メディア装置に、前記仮想コネクションに関する情報を含む、実コネクション確立要求を送信するステップと、
前記仮想コネクションと対応づけて、前記第１および第２メディア装置間に実コネクションを確立するステップと、
前記確立された実コネクションを用いて前記第２メディア装置から第１メディア装置へまたはこの逆へメディアデータを送信するステップと、
を備えたデータ伝送方法。
【請求項７】
前記仮想コネクションを確立するステップは、
第２メディア装置側仮想コネクション情報を生成し、生成した前記第２メディア装置側仮想コネクション情報を第２メディア装置側通信資源に割り当てるステップ、
前記第２メディア装置側仮想コネクション情報を前記第１メディア装置に送出するステップ、
前記第２メディア装置側仮想コネクション情報に基づいて前記第１メディア装置側仮想コネクション情報を生成し、生成した前記第１メディア装置側仮想コネクション情報を、第１メディア装置側通信資源に割り当てるステップ、を含み、
前記実コネクション確立要求を送信するステップは、前記仮想コネクションに関する情報として前記第２メディア装置側仮想コネクション情報を送信するステップを含み、
前記実コネクションを確立するステップは、
第１メディア装置側実コネクション情報を生成し、生成した前記第１メディア装置側実コネクション情報を前記第１メディア装置側通信資源に割り当てるステップ、
第２メディア装置側実コネクション情報を生成し、生成した前記第２メディア装置側実コネクション情報を前記第２メディア装置側通信資源に割り当てるステップ、を含む、
ことを特徴とする請求項６に記載のデータ伝送方法。
【請求項８】
さらに、
前記実コネクションにおけるデータ通信が活性状態であるか非活性状態であるかを検出するステップと、
前記データ通信が非活性状態である場合は、前記第１又は第２メディア装置側通信資源を解放するステップと、
を備えたことを特徴とする請求項７に記載のデータ伝送方法。
【請求項９】
前記解放するステップは、所定期間継続して前記データ通信が非活性状態である場合は、前記第１又は第２メディア装置側通信資源を解放することを特徴とする請求項８に記載のデータ伝送方法。
【請求項１０】
さらに、
前記UPnP AVプロトコルに従って前記第２又は第１メディア装置の稼働状態を取得するステップと、
前記第２又は第１メディア装置が非稼働状態である場合は、前記第１又は第２メディア装置側通信資源を解放するステップと、
を備えたことを特徴とする請求項７ないし９のいずれかに記載のデータ伝送方法。
【請求項１１】
所定の伝送プロトコルに従って相手方のメディア装置と通信を行う、UPnP AVプロトコルに基づく制御装置による制御を受けるメディア装置であって、
前記相手方のメディア装置との間で仮想コネクションを確立する指示を前記制御装置から受けた場合は、前記相手方のメディア装置との間で仮想コネクションを確立する仮想コネクション確立手段と、
前記仮想コネクションに基づいて前記相手方のメディア装置からメディアデータを受信又は前記相手方のメディア装置へメディアデータを送信することを前記制御装置から指示された場合は、前記メディアデータを受信または送信するための実コネクションを確立することを要求する、前記仮想コネクションに関する情報を含む実コネクション確立要求を生成する実コネクション確立要求生成手段と、
生成された前記実コネクション確立要求を前記相手方のメディア装置に送信する実コネクション確立要求送信手段と、
前記実コネクションが確立されたら、前記確立された実コネクションを用いて、前記相手方のメディア装置からメディアデータを受信又は前記相手方のメディア装置へメディアデータを送信するデータ通信手段と、
を備えたメディア装置。
【請求項１２】
前記仮想コネクション確立手段は、
前記制御装置から相手方仮想コネクション情報を受け取り、前記相手方仮想コネクション情報を用いて前記自装置側仮想コネクション情報を生成し、生成した前記自装置側仮想コネクション情報を、自装置側通信資源に割り当て、
前記実コネクション確立要求生成手段は、前記制御装置からの指示を受けた場合は、自装置側実コネクション情報を生成し、生成した前記自装置側実コネクション情報を前記自装置側通信資源に割り当て、前記仮想コネクションに関する情報として前記相手方仮想コネクション情報を含む、前記実コネクション確立要求を生成する、
ことを特徴とする請求項１１に記載のメディア装置。
【請求項１３】
前記実コネクションにおいてデータ通信が活性状態であるか非活性状態であるかを検出する検出手段と、
前記データ通信が非活性状態であることを検出した場合は、前記自装置側通信資源を解放する解放手段と、
をさらに備えたことを特徴とする請求項１２に記載のメディア装置。
【請求項１４】
前記解放手段は、所定期間継続してデータ通信が非活性状態であることを検出した場合は、前記自装置側通信資源を解放することを特徴とする請求項１３に記載のメディア装置。
【請求項１５】
前記UPnP AVプロトコルに従って、前記制御装置を介して、前記相手方のメディア装置の稼働状態を取得する取得手段と、
前記相手方のメディア装置が非稼働状態である場合は、前記自装置側通信資源を解放する解放手段と、
をさらに備えたことを特徴とする請求項１２ないし１４のいずれかに記載のメディア装置。
【請求項１６】
所定の伝送プロトコルに従って相手方のメディア装置と通信を行う、UPnP AVプロトコルに基づく制御装置による制御を受けるメディア装置であって、
前記相手方のメディア装置に対し仮想コネクションを確立する旨の指示を前記制御装置から受けた場合は、前記相手方のメディア装置へ仮想コネクションを確立し、確立した仮想コネクションに関する情報を前記制御装置に渡す、仮想コネクション確立手段と、
前記相手方のメディア装置へメディアデータを送信又は前記相手方のメディア装置からメディアデータを受信するための実コネクションの確立を要求する実コネクション確立要求を前記相手方のメディア装置から受信する実コネクション確立要求受信手段と、
前記実コネクション確立要求に前記仮想コネクションに関する情報が含まれる場合は、前記仮想コネクションと対応付けて、前記相手方のメディア装置との間で前記実コネクションを確立する実コネクション確立手段と、
前記実コネクションを用いて前記相手方のメディア装置へメディアデータを送信又は前記相手方のメディア装置からメディアデータを受信するデータ通信手段と、
を備えたメディア装置。
【請求項１７】
前記仮想コネクション確立手段は、前記指示を受けた場合は、前記自装置側仮想コネクション情報を生成し、生成した前記自装置側仮想コネクション情報を自装置側通信資源に割り当て、前記自装置側仮想コネクション情報を前記制御装置に送出し、
前記実コネクション確立手段は、前記実コネクション確立要求データに前記自装置側仮想コネクション情報が含まれる場合は、自装置側実コネクション情報を生成し、生成した自装置側実コネクション情報を前記自装置側通信資源に割り当てる、
ことを特徴とする請求項１６に記載のメディア装置。
【請求項１８】
前記実コネクションにおいて前記データ通信が活性状態であるか非活性状態であるかを検出する検出手段と、
前記データ通信が非活性状態であることを検出した場合は、前記自装置側通信資源を解放する解放手段と、
をさらに備えたことを特徴とする請求項１６に記載のメディア装置。
【請求項１９】
前記解放手段は、所定期間継続して前記データ通信が非活性状態であることを検出した場合は、前記自装置側通信資源を解放することを特徴とする請求項１８に記載のメディア装置。
【請求項２０】
前記UPnP AVプロトコルに従って、前記制御装置を介して、前記相手方のメディア装置の稼働状態を取得する取得手段と、
前記相手方のメディア装置が非稼働状態である場合は、前記自装置側通信資源を解放する解放手段と、
をさらに備えたことを特徴とする請求項１７ないし１９のいずれかに記載のメディア装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ伝送システム、データ伝送方法およびメディア装置に関する。
【背景技術】
【０００２】
オーディオ機器やビデオ機器（以下、AV機器）を、ネットワークで相互に結合し、それらAV機器間で、映像データやオーディオデータを受け渡すような場面が増加している。AV機器をネットワークで結合し、相互にデータ伝送を行うためには、何らかのプロトコルが必要となる。例えば、シリアルバスを用いたIEEE(The Institute of Electrical and Electronics  Enginners)1394方式のプロトコルや、IEEE802方式のネットワークにおいてTCP/IPプロトコル上に構築されるHTTP(Hyper Text Transport Protocol)やRTSP(Realtime Streaming Protocol)といったプロトコル等がある。
【０００３】
各AV機器で用いられるプロトコルは、機器によって様々であり、それ故、種々のプロトコルの機器が同一ネットワークに配置され得る。そこで、このような種々のプロトコルに対応可能にネットワークにおけるAV機器間の伝送を制御する手順が求められてきた。その手順を実現する一つが、Universal Plug and Play（UPnP）プロトコルであり、特にAV機器同士の連携のために、UPnP AVプロトコルが作成されている。
【０００４】
UPnP AVプロトコルにおいては、AV機器間のAVデータ伝送は、仮想コネクションの概念を用いて行われる。仮想コネクションは、実際の伝送路チャネルや機器の入出力プラグ等と関連づけられるものの、伝送路や伝送プロトコルには依存しないよう、UPnP AVプロトコル上では扱われる。UPnP AVによるAVデータ伝送と制御は、この仮想コネクションを用いて、管理される。即ち、仮想コネクションを引数として、AVデータ伝送の制御が行われる。
【特許文献１】特開２００２−３０４３３３公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、これまでUPnP AVで用いられてきた仮想コネクションは、実際のAVデータ伝送と必ずしも対応付けられておらず、このため、AVデータ伝送の管理及び制御を効果的に行うことができないことも多かった。
【０００６】
例えば、IEEE1394プロトコルでは、AV機器の入力プラグと出力プラグとの間に継続的なコネクションを確立することによって通信を行うが、この場合は、該コネクションと仮想コネクションとの対応付けは容易である。なぜならば、前もって実コネクションを確立し、この実コネクションに対して仮想コネクションを対応付けできるからである。つまり、仮想コネクションの両端は、実際のAV機器の入力プラグと出力プラグに対応けられ、且つ、実コネクションが継続する期間はデータ伝送が行われ仮想コネクションも維持されると捉えることができるからである。
【０００７】
一方、HTTPプロトコル等の場合は、仮想コネクションを確保した時点では、実コネクションは何ら確立されていない。実コネクションは、仮想コネクション確立後のUPnP AVのAVTransportサービスのSetAVTransportURIアクション、Playアクション、AVデータ伝送の再生側又は送出側からの伝送要求が行われた際に確立される。この実コネクションの確立の際、コントロールポイント（ControlPoint）による制御よって、メディアレンダラ（MediaRenderer）又はメディアサーバ（MediaServer）では、上記SetAVTransportURIアクションの引数である仮想コネクションIDとURIとから仮想コネクションと実コネクションとの対応付けが可能である。しかし、相手側のメディアサーバ又はメディアレンダラでは、仮想コネクションと実コネクションとを対応づける情報が全くない。なお、メディアレンダラはメディア情報を再生する装置、メディアサーバは該メディア情報をメディアレンダラに供給する装置、コントロールポイントは、メディアレンダラ及びメディアサーバを制御する装置である。
【０００８】
この問題は既に指摘されており、例えば文献“Designing a UPnP AV Media Renderer v1.0 Intel Corporation, 2003”の5.4〜5.6章において、仮想コネクションと実コネクションとを対応付ける必要がある旨が述べられている。しかし、具体的な方法は何ら記載されていない。また、文献“Designing a UPnP AV MediaServer v1.0 Intel Corporation, 2003”の5.14.1節には、HTTP_GETをコンテンツの配信に用いる場合は、仮想コネクションと実コネクションとの対応付けができない旨が記載されている。また、特開2002-304333「伝送方法及び伝送装置」は、UPnP AVで採用されているコンテンツ検索、伝送及び再生の手順を説明したものであるが、仮想コネクションと実コネクションとの対応づけについは何ら言及されていない。
【０００９】
本発明は、上記問題点に鑑みてなされたものであり、その目的は、UPnP AVプロトコルを用いたデータ伝送において、実コネクションと仮想コネクションとの対応付けを可能としたデータ伝送システム、データ伝送方法およびメディア装置を提供することにある。
【課題を解決するための手段】
【００１０】
本発明の一態様としてのデータ伝送システムは、所定の伝送プロトコルに従って互いに通信を行う第１及び第２メディア装置と、UPnP AVプロトコルに従って前記第１及び第２メディア装置を制御する制御装置とを備えたデータ伝送システムであって、前記制御装置は、前記第１及び第２メディア装置間に、前記UPnP AVプロトコルに基づく仮想コネクションを確立する仮想コネクション確立手段と、前記仮想コネクションを用いて前記第２メディア装置からメディアデータを受信又は前記第２メディア装置へメディアデータを送信することを、前記第１メディア装置に指示する指示データを送出するデータ通信指示手段と、を有し、前記第１メディア装置は、前記指示データを受信した場合は、前記メディアデータの受信又は送信を行うための実コネクションを確立することを前記第２メディア装置に要求する実コネクション確立要求を生成し、生成した前記実コネクション確立要求を前記第２メディア装置に送出する、前記実コネクション確立要求は前記仮想コネクションに関する情報を含む、実コネクション確立要求手段と、確立された前記実コネクションを用いて前記メディアデータの受信又は送信を行う第１のデータ通信手段と、を有し、  前記第２メディア装置は、前記第１メディア装置からの前記実コネクション確立要求に基づいて、前記仮想コネクションと対応づけて、前記第１メディア装置との間で前記実コネクションを確立する実コネクション確立手段と、確立された前記実コネクションを用いて前記第１メディア装置に前記メディアデータを送信又は前記第１メディア装置から前記メディアデータを受信する第２のデータ通信手段と、を有する、ことを特徴とする。
【００１１】
本発明の一態様としてのデータ伝送方法は、所定の伝送プロトコルに従って互いに通信を行う第１及び第２メディア装置と、UPnP AVプロトコルに基づいて前記第１及び第２メディア装置を制御する制御装置とを用いたデータ伝送方法であって、前記第１及び第２メディア装置間に、前記制御装置による制御の下、仮想コネクションを確立するステップと、前記第１メディア装置から第２メディア装置に、前記仮想コネクションに関する情報を含む、実コネクション確立要求を送信するステップと、前記仮想コネクションと対応づけて、前記第１および第２メディア装置間に実コネクションを確立するステップと、前記確立された実コネクションを用いて前記第２メディア装置から第１メディア装置へまたはこの逆へメディアデータを送信するステップと、を備える。
【００１２】
本発明の一態様としてのメディア装置は、所定の伝送プロトコルに従って相手方のメディア装置と通信を行う、UPnP AVプロトコルに基づく制御装置による制御を受けるメディア装置であって、前記相手方のメディア装置との間で仮想コネクションを確立する指示を前記制御装置から受けた場合は、前記相手方のメディア装置との間で仮想コネクションを確立する仮想コネクション確立手段と、前記仮想コネクションに基づいて前記相手方のメディア装置からメディアデータを受信又は前記相手方のメディア装置へメディアデータを送信することを前記制御装置から指示された場合は、前記メディアデータを受信または送信するための実コネクションを確立することを要求する、前記仮想コネクションに関する情報を含む実コネクション確立要求を生成する実コネクション確立要求生成手段と、生成された前記実コネクション確立要求を前記相手方のメディア装置に送信する実コネクション確立要求送信手段と、前記実コネクションが確立されたら、前記確立された実コネクションを用いて、前記相手方のメディア装置からメディアデータを受信又は前記相手方のメディア装置へメディアデータを送信するデータ通信手段と、を備える。
【００１３】
本発明の一態様としてのメディア装置は、所定の伝送プロトコルに従って相手方のメディア装置と通信を行う、UPnP AVプロトコルに基づく制御装置による制御を受けるメディア装置であって、前記相手方のメディア装置に対し仮想コネクションを確立する旨の指示を前記制御装置から受けた場合は、前記相手方のメディア装置へ仮想コネクションを確立し、確立した仮想コネクションに関する情報を前記制御装置に渡す、仮想コネクション確立手段と、前記相手方のメディア装置へメディアデータを送信又は前記相手方のメディア装置からメディアデータを受信するための実コネクションの確立を要求する実コネクション確立要求を前記相手方のメディア装置から受信する実コネクション確立要求受信手段と、前記実コネクション確立要求に前記仮想コネクションに関する情報が含まれる場合は、前記仮想コネクションと対応付けて、前記相手方のメディア装置との間で前記実コネクションを確立する実コネクション確立手段と、前記実コネクションを用いて前記相手方のメディア装置へメディアデータを送信又は前記相手方のメディア装置からメディアデータを受信するデータ通信手段と、を備える。
【発明の効果】
【００１４】
本発明により、UPnP AVプロトコルを用いたデータ伝送において、実コネクションと仮想コネクションとの対応付けが可能になる。
【発明を実施するための最良の形態】
【００１５】
図１は、本発明の実施の形態に従った伝送システムの全体構成を示すブロック図である。
【００１６】
メディアサーバ（MediaServer）MSと、メディアレンダラ（MediaRenderer）MRと、コントロールポイント（ControlPoint）CPとが、ホームネットワーク等のネットワークを介して接続されている。これらメディアサーバMS、メディアレンダラＭＲ及びコントロールポイントＣＰは、UPnP AVプロトコルに従った手順を実行可能である。UPnP AVプロトコル及びこれに関連する仕様については、例えば、“http://www.upnp.org/standardizeddcps/mediaserver.asp”“UPnP AV Architecture v0.83, June 12, 2002”“ConnectionManager V1.0, June 25, 2002”“Designing a UPnP AV MediaRenderer v1.0, Intel Corporation, 2003（http://www.intel.com/technology/upnp/download/Designing_a_UPnP_AV_ MediaRenderer_v1_0-XF.pdf）”“Designing a UPnP AV MediaServer v1.0, Intel Corporation, 2003（http://www.intel.com/technology/upnp/download/Designing_a_UPnP_AV_MediaServer.pdf）”に詳しく述べられている。
【００１７】
図１において、メディアサーバMSは、例えばDVDプレーヤ、CDプレーヤ、衛星放送受信器、ケーブルテレビ受信器等である。メディアサーバMSにおけるメディアソース格納部２１は、メディアレンダラMRに再生させるコンテンツデータを格納する。
【００１８】
メディアレンダラMRは、例えばテレビ、ステレオ、スピーカ、携帯オーディオプレーヤ等である。メディアレンダラMRにおける再生器３１は、メディアサーバMSからネットワークを介して取得したコンテンツデータを再生する。
【００１９】
コントロールポイントCPは、メディアサーバMS及びメディアレンダラMRを制御する。コントロールポイントCPは、例えば図示しない入力インターフェースを介してユーザによって操作可能である。
【００２０】
メディアサーバMSにおける実コネクション管理部２２は、メディアレンダラMRにおける実コネクション管理部３２との間で実データ通信路１１を介してデータ通信を行う。より詳細には、実コネクション管理部２２は、実データ通信路１１内に実コネクション管理部３２との間で実コネクションを形成してAVデータの伝送を行う。実コネクション管理部２２、３２は、実コネクションの状態を、実コネクション情報として管理する。
【００２１】
メディアサーバMSにおける仮想コネクション管理部２３及びメディアレンダラMRにおける仮想コネクション管理部３３は、UPnP AVプロトコルのAVTransportサービス（AVTS）及びConnectionManagerサービス（CMS）の動作を行う。仮想コネクション管理部２３、３３は、UPnP通信路１２を介して、コントロールポイントCPとの間で、UPnPに従って、各種やり取りを行う。UPnP通信路１２と実データ通信路１１は、例えば同一の伝送媒体（例えばケーブル）に含まれる場合もあるし、別々の伝送媒体に含まれる場合もあり得る。仮想コネクション管理部２３、３３は、それぞれコントロールポイントCPの指示（ConnectionManagerサービスにおけるPrepareForConnection()アクションの実行指示）に従って仮想コネクション情報を生成する。これによりコントロールポイントＣＰは、仮想コネクション管理部２３、３３間に、UPnP通信路１２に仮想コネクションを形成する。仮想コネクション管理部２３、３３は、各々生成した仮想コネクション情報を管理する。仮想コネクション管理部２３、３３間には複数の仮想コネクションを形成可能であり、この場合、仮想コネクション管理部２３、３３は、それぞれ複数の仮想コネクション情報を生成及び管理する。
【００２２】
メディアサーバMSにおけるContentDirectoryサービス（CDS）部２５は、コントロールポイントCPからの要求に応じて、メディアレンダラMRに供給可能な各種コンテンツデータについて、その識別子（URI）や、対応可能な伝送プロトコル、データフォーマット等の情報を通知する。
【００２３】
メディアサーバMSにおけるコネクションマップ２４及びメディアレンダラMRにおけるコネクションマップ３４は、実コネクションを形成するための資源の単位をチャネルとして管理する。本例では、コネクションマップ２４は、７つのチャネル２４（１）〜２４（７）を有し、コネクションマップ３４も、７つのチャネル３４（１）〜３４（７）を有する。各チャネルは、仮想コネクション情報と実コネクション情報との対を含む。
【００２４】
図２は、チャネルに登録される仮想コネクション情報及び実コネクション情報の基本フォーマットを示す。
【００２５】
仮想コネクション情報は、ConnectionManager仕様に示される以下の４つの情報の組である。
PeerMangager：対向機器の識別子（UDN：Unique Device Name）
PeerServiceId：対向機器のConnectionMangaerサービスのサービスID（serviceId）
PeerConnectionID：対向機器のConnectionManagerサービスが発行した仮想コネクションID
ConnectionID：自機器のConnectionManagerサービスが発行した仮想コネクションID
【００２６】
ここで、自機器とはメディアサーバMS又はメディアレンダラMRであり、対向機器とは、メディアサーバMSにとってのメディアレンダラMR、メディアレンダラMRにとってのメディアサーバMSである。
【００２７】
なお、以下の説明ではメディアサーバMSのUDNを"uuid:E6CAB760-6863-43e8-8184-CC22FB4CB62C"、メディアレンダラMRのUDNを"uuid:B7DA4840-C028-4259-A56D-59551C79BF30"とする。各々のConnectionManagerサービスのserviceIdは、同じ"urn:upnp-org:serviceId:ConnectionManager" とする。
【００２８】
一方、実コネクション情報は、以下の３つの情報の組である。
handle：実コネクションの識別子
status：実コネクションの状態（活性又は非活性）を示すフラグ
Last closed time：実コネクションが最後に非活性（例えば転送プロトコルによるコネクションが切断、所定時間データが流れない等）に移行した時刻（最終非活性移行時刻）
【００２９】
各チャネルにおいて、仮想コネクション情報及び実コネクション情報の両方とも登録されていない場合は、当該チャネルは仮想コネクション管理部及び実コネクション管理部のいずれによっても使用されていないことを示す。例えば仮想コネクション及び実コネクションが両方とも確立されていない場合がこれに該当する。
【００３０】
一方、仮想コネクション情報と実コネクション情報との両方が登録されている場合は、当該チャネルは、仮想コネクション及び実コネクションの両方によって使用されていることを示す。例えば仮想コネクション及び実コネクションが共に確立されている場合がこれに該当する。
【００３１】
また、仮想コネクション情報のみが登録されている場合は、当該チャネルは、仮想コネクション管理部によって使用されているが、実コネクション管理部によっては使用されていないことを示す。例えば、仮想チャネルは確立されているが、実チャネルが確立されていない場合がこれに該当する。
【００３２】
さらに、実コネクション情報のみが登録されている場合は、当該チャネルは、実コネクション管理部によって使用されているが、仮想コネクション管理部によっては使用されていないことを示す。例えば、仮想コネクション管理部によって仮想コネクションが確立されていないにも拘わらず、実コネクションが確立されている場合がこれに該当する。即ち、UPnP AVのCnnectionManagerサービスによらずに対向機器との間で伝送路を確立した場合がこれに該当する。
【００３３】
図３は、図１の伝送システムによる基本的な動作を示すシーケンス図である。
【００３４】
メディアサーバMSにおけるhttpサーバは、例えば図１の実コネクション管理部２２を含み、UPnP部は、仮想コネクション管理部２３を含む。また、メディアレンダラMRにおけるhttpクライアントは、例えば図１の再生器３１及び実コネクション管理部３２を含み、UPnP部は、仮想コネクション管理部３３を含む。
【００３５】
まず、コントロールポイントCPは、メディアサーバMSにおけるContentDirectoryサービス部２５にBrowse()アクションを指示する（ステップS11）。Browse()アクションを指示されたContentDirectoryサービス部２５は、メディアソース格納部２１に保持されているコンテンツデータの識別子（URI）、対応可能な伝送プロトコル、データフォーマット等の情報を、コントロールポイントCPに渡す。
【００３６】
次に、コントロールポイントCPは、メディアレンダラMRにおける仮想コネクション管理部３３のControlManagerサービスにGetProtocolInfo()アクションを指示する（ステップS12）。GetProtocolInfo()アクションを指示された仮想コネクション管理部３３は、対応可能な伝送プロトコルやデータフォーマット等の情報を、コントロールポイントCPに渡す。
【００３７】
次に、コントロールポイントCPは、メディアサーバMSにおける仮想コネクション管理部２３のConnectionManagerサービスにPrepareForConnecton()アクション（PFC()アクション）を指示する（ステップS13）。この際、引数として、メディアレンダラMRのUDNとConnectionManagerサービスのserviceId、及びメディアレンダラMRにおいて割り当てた仮想コネクションID(PeerConnectionID)を渡す。これらUDN及びseriveIdは、UPnPプロトコルに従ったマルチキャスト配信によって、予めメディアレンダラMRからコントロールポイントCPに通知されている。一方、PeerConnectionIDに関してはこの時点でメディアレンダラMRにおいて仮想コネクション情報は確保されていないため、コントロールポイントCPがメディアサーバMSのConnectionManagerサービスのPFC()アクションを呼び出す際の引数の一つである、メディアレンダラMRの仮想コネクションIDとして、“−１”又は“０”をコントロールポイントCPが与える。コントロールポイントCPからPFC()アクションを指示されたメディアサーバMSにおける仮想コネクション管理部２３は、図４のフローチャートに示す仮想コネクション情報生成処理を実行する。
【００３８】
まず、コネクションマップ２４から空のチャネルを探す（ステップA1）。空のチャネルとは、仮想コネクション情報及び実コネクション情報のいずれも登録されていないチャネルのことである。
【００３９】
空のチャネルがある場合は（ステップA2のYES）、チャネルを１つ取得し、仮想コネクションIDを生成する（ステップA3）。
【００４０】
生成した仮想コネクションIDを当該チャネルに登録し、さらにPFC()アクション指示の引数として渡されたUDN及びserviceIdもチャネルに登録する。これによってコネクションマップ２４を更新する（ステップＡ４）。ここでは取得したチャネルに対する仮想コネクションID（ConnectionID）として“２５”を割り当て、UDN（PeerManager）として“uuid:E6CAB760-6863-43e8-8184-CC22FB4CB62C”を、serviceId（PeerServiceId）として“urn:upnp-org:serviceId:ConnectionManager”を登録したとする。また、この時点でメディアレンダラMRにおいて仮想コネクション情報は確保されていないため、ここではコントロールポイントCPがメディアレンダラMRの仮想コネクションID（PeerConeectionID）として“−１”を与え、その値を登録したとする。図５に、仮想コネクション情報として登録された内容を示す。なお、図５から理解されるように、実コネクション情報はまだ登録されていない（handleがヌルである）。メディアサーバMSは、登録した仮想コネクション情報をコントロールポイントCPに返す。
【００４１】
ステップA2において空のチャネルがなかった場合は（ステップA2のNO）、PFC()アクションの実行結果として、コントロールポイントCPにエラーを返す（ステップA5）。エラーを返す代わりに、使用中のチャネルを解放し、解放したチャネルに仮想コネクション情報を登録することも可能である。この場合の処理ステップを図６のフローチャートに示す。
【００４２】
即ち、空きチャネルがなかった場合は（ステップA2のNO）、まず、実コネクション情報が登録されていないチャネルを探し（ステップA6）、そのようなチャネルがあった場合は（ステップA7のYES）見つかったチャネルを解放して（ステップA12）ステップA1に戻る。
【００４３】
実コネクション情報がないチャネルがなかった場合（ステップA7のNO）、即ち、全てのチャネルに実コネクション情報が登録されていた場合は、それらのチャネルの中から仮想コネクション情報が登録されていないチャネルを探し（ステップA8）、そのようなチャネルがあった場合は（ステップA9のYES）見つかったチャネルを解放して（ステップA12）ステップA1に戻る。
【００４４】
仮想コネクション情報が登録されていないチャネルがなかった場合（ステップA9のNO）、即ち、全てのチャネルに仮想コネクション情報及び実コネクション情報の両方が登録されていた場合は、実コネクションの非活性時間が一定時間以上経過しているチャネルを探し（ステップA10）、そのようなチャネルがあった場合は（ステップA11のYES）、見つかったチャネルを解放して（ステップA12）ステップA1に戻る。そのようなチャネルが見つからなかった場合は（ステップA11のNO）エラーを返す（ステップA5）。
【００４５】
図３に戻り、次に、コントロールポイントCPは、同様にして、メディアレンダラMRにおける仮想コネクション管理部３３のConnectionManagerサービスにもPrepareForConnecton()アクション（PFC（）アクション）を指示する（ステップS14）。この際、引数として、メディアサーバMSのUDNとConnectionManagerサービスのserviceID、及びステップS13で受け取った仮想コネクション情報に含まれる、メディアサーバMSのConnectionManagerサービスで割り当てられた仮想コネクションIDを渡す。メディアサーバMSのUDN及びseriveIdは、UPnPに従ったマルチキャスト配信によって、予めメディアサーバMSからコントロールポイントCPに通知されている。コントロールCPによってPFC()アクションを指示されたメディアレンダラMRにおける仮想コネクション管理部３３は、上述同様、図４又は図６のフローチャートに示す処理を実行する。コネクションマップ３４におけるチャネルに仮想チャネル情報を登録できた場合は、メディアレンダラMRは、当該仮想チャネル情報をコントロールポイントCPに返す。
【００４６】
ここでは例として、メディアレンダラMRのConnectionManagerサービスでは、ConnectionID="3"が割り当てられたとする。よって、メディアレンダラMR側の仮想コネクション情報は、
PeerManager="uuid:E6CAB760-6863-43e8-8184-CC22FB4CB62C"
PeerServiceId="urn:upnp-org:serviceId:ConnectionManager"
PeerConnectionID="25"
ConnectionID="3"となる。
【００４７】
以上により、メディアサーバMSにおける仮想コネクション管理部２３及びメディアレンダラMRにおける仮想コネクション管理部３３間に仮想コネクションが確立される。
【００４８】
次に、コントロールポイントCPは、AVTransportサービスのSetAVTransportURI()アクションをメディアレンダラMRに指示する（ステップS15）。この際、引数として、コントロールポイントCPは、先程メディアレンダラMRから取得した仮想コネクション情報も渡す。メディアレンダラMRは、SetAVTransportURI()アクションを実行した結果として、ユーザによってコントロールポイントCPに指定されたコンテンツデータのURIをコントロールポイントCPから取得する。
【００４９】
次に、コントロールポイントCPは、AVTransportサービスのPlay()アクションをメディアレンダラMRに指示する（ステップS16）。この際、引数として、コントロールポイントCPは、先程メディアレンダラMRから取得した仮想コネクション情報も渡す。メディアレンダラMRは、Play()アクションを実行した結果として、ステップS15でコントロールポイントCPから渡されたURIを有するコンテンツデータをメディアサーバMSから取得して再生する。
【００５０】
より詳しくは、まず、メディアレンダラMRにおける実コネクション管理部３２は、メディアサーバMSにおける実コネクション管理部２２との間で、実コネクションの確立を行う（ステップS17、S18）。
【００５１】
図７は、メディアレンダラMR側における実コネクション確立処理（ステップS17）の流れを示すフローチャートである。
【００５２】
まず、メディアレンダラMRにおける実コネクション管理部３２は、SetAVTransportURI()アクション又はPlay()アクションを指示された際にコントロールポイントCPから受け取った仮想コネクション情報が登録されたチャネルをコネクションマップ３４から探す（ステップB1）。
【００５３】
そのようなチャネルがあった場合は（ステップB2のYES）、そのチャネルに実コネクション情報を登録する（ステップB3）。即ち、handleフィールド（図２参照）に実コネクションを識別する値をセットし、statusフィールドを非活性とし、Last closed timeフィールドには適当な初期値をセットする。
【００５４】
次に、実コネクション管理部３２は、メディアサーバMSにおける実コネクション管理部２２に、実コネクションの確立要求を、仮想コネクション情報を含めて送信する（ステップB4）。具体的には、例えばHTTPのGETリクエストによって、実コネクションの確立要求を送信する。この要求には、GETリクエストのリクエストヘッダフィールドへのユーザ定義フィールドに、例えば、以下の付与情報を追加する。
GET /foo/bar.mpg HTTP/1.0
X-AV-ConnectionInfo:PeerUDN=uuid:E6CAB760-6863-43e8-8184-CC22FB4CB62C;
PeerServiceId=urn:upnp-org:serviceId:ConnectionManager;PeerConnectionID=25;
UDN=uuid:B7DA4840-C028-4259-A56D-59551C79BF30;
ServiceId=urn:upnp-org:serviceId:ConnectionManager;ConnectionID=3
【００５５】
例には、リクエストヘッダ全体を含んでおり、"X-AV-ConnectionInfo:" から、"ConnectionID=25"までは一行で表現される。この例において、実コネクション確立要求に関連付けられる仮想コネクション情報は、X-AV-ConnectionInfoフィールドに格納される。X-AV-ConnectionInfoフィールドは、セミコロン(';')で区切られる6個の部分で構成され、PeerUDN, PeerServiceId, PeerConnectionID, ConnectionIDの4つは、ステップS14で割当てられたメディアレンダラMRで管理される仮想コネクション管理情報の、PeerManager, PeerServiceId, PeerConnectionID, ConnectionIDにそれぞれ対応する値が埋められる。残りの2つの部分、UDN, ServiceIdは、この仮想コネクション情報を保持するメディアレンダラMRのUDNと、そのConnectionManagerサービスのServiceIdが埋められ、前者4つの部分で表現される仮想コネクション情報の唯一性を保証する。
【００５６】
なお、X-AV-ConnectionInfoフィールドは、標準仕様に含まれない、ユーザ定義のフィールドであるので、本発明の内容に対応しないHTTPサーバでは、このフィールドを無視して処理する。このとき、該HTTPサーバには何ら支障は生じない。
【００５７】
図７に戻り、実コネクションの確立要求を送信したメディアレンダラMRにおける実コネクション管理部３２は、メディアサーバMSにおける実コネクション管理部２２からの応答を待ち（ステップB5）、実コネクション管理部２２から実コネクション情報を登録した旨を受け取った場合は、即ち、実コネクション管理部２２、３２間に実コネクションが確立された場合は、コネクションマップを更新する（ステップB6）。即ち、該当チャネルにおけるstatusフィールドを活性にする。この後、メディアレンダラMRにおける実コネクション管理部３２は、メディアサーバMSにおける実コネクション管理部２２から、HTTPに従って、コンテンツデータの伝送を受け、受け取ったコンテンツデータを再生する。
【００５８】
ステップB2でチャネルが得られなかった場合は（ステップB2のNO）、メディアレンダラMRは、コントロールポイントCPにエラーを返す（ステップB7）。
【００５９】
図８は、メディアサーバMS側における実コネクション確立処理（図３のステップS18）の流れを示すフローチャートである。
【００６０】
図７のステップB4で実コネクションの確立要求を受け取ったメディアサーバMSにおける実コネクション管理部２２は（ステップC1）、受け取った確立要求から仮想コネクション情報を抽出する（ステップC2）。
【００６１】
実コネクション管理部２２は、抽出した仮想コネクション情報に対応するチャネルをコネクションマップ２４から検索する（ステップC3のYES、ステップC4）。例えば、仮想コネクション情報に含まれるメディアサーバMSのコネクションIDと同じ値を含むチャネルをコネクションマップ２４から検索する。
【００６２】
ここでステップC3で抽出される仮想コネクション情報に含まれる、メディアサーバMRで割り当てている(X-AV-ConnectionInfo中の)ConnectionIDが"3"であり、これはメディアサーバMSで認識しているメディアレンダラMR側のConnectionID(=PeerConnectionID)="-1"と異なる。この相違は、メディアサーバMS、メディアレンダラMR各々のPFC()アクションを、コントロールポイントCPが呼び出す際の引数の内容の違いに基づくものである。メディアサーバMSでは、その相違を無視してよい。
【００６３】
該当するチャネルがない場合（ステップC5のNO）、または、実コネクションの確立要求に仮想コネクション情報が含まれていなかった場合は（ステップC3のNO）、空きチャネルを探索する（ステップC6、C7）。
【００６４】
ステップC5又はステップC7においてチャネルを取得できた場合は（ステップC5のYES、C7のYES）、実コネクション管理部２２は、取得したチャネルにおける実コネクション情報を更新する（ステップC8）。即ち、handleフィールドに実コネクションを識別する値をセットし、statusフィールドを活性とし、Last closed timeフィールドに適当な初期値をセットする。ここでは、ステップC3において仮想コネクション情報が含まれていたとし、実コネクション情報として、例えば図１４に示すものが登録されたとする。
【００６５】
但し、ステップC3において仮想コネクション情報が含まれていなかった場合は（ステップC3のNO）、ステップC6に移り、仮想コネクション情報と対応付けることなく、実コネクション情報を登録する。即ち、実コネクションの確立要求は、確保済みの仮想コネクションに基づくものではないと判断し、特定の仮想コネクションに対応付けることなく、コネクションマップを更新する。これによって、従来方法に基づいて動作する相手方装置との接続互換性を保つことが出来る。このような特定の仮想コネクションとの対応付けのない実コネクションは、例えば確立後における実コネクションの維持の優先度を下げる等の取扱いをしてもよい（図６のステップA8、A9参照）。
【００６６】
実コネクション情報を登録した実コネクション管理部２２は、メディアレンダラMRにおける実コネクション管理部３２との間で実コネクションを確立した旨の応答を、メディアレンダラMRにおける実コネクション管理部３２に行う(ステップC10)。
【００６７】
実コネクション管理部２２は、実コネクションを確立した旨をメディアレンダラMRに伝える際、例えば以下のようにして、サーバ側における仮想コネクション情報を、HTTP GETレスポンスヘッダフィールドに埋め込む。この例は、レスポンスヘッダ全体を含む。"X-AV-ConnectionInfo:" から、"ConnectionID=25"までは一行で表現される。
HTTP/1.1 200 OK
Date: Mon, 29 Mar 2004 05:37:17 GMT
Server:Apache/1.3.29(Unix)
Last-Modified:Thu, 25 Jul 2002 06:51:36 GMT
Etag:"7e0aa2-bf8-3d3f9ff8"
Accept-Ranges:bytes
Content-Length:3064000
Connection:close
Content-Type:video/mpeg
X-AV-ConnectionInfo:PeerUDN= uuid:B7DA4840-C028-4259-A56D-59551C79BF30;
PeerServiceId=urn:upnp-org:serviceId:ConnectionManager;PeerConnectionID=-1; 
UDN=uuid:E6CAB760-6863-43e8-8184-CC22FB4CB62C;
ServiceId=urn:upnp-org:serviceId:ConnectionManager;ConnectionID=25
【００６８】
この内容は、上述したステップB4でGETリクエストに埋め込まれた情報と基本的に同じであるが、HTTPサーバすなわちメディアサーバMS側からの視点になっている点で異なる。HTTPクライアントすなわちメディアレンダラMRでは、この仮想コネクション情報を得ることによって、相手方機器において仮想コネクションと実コネクションとの関連付けが管理されていることを認識できる。
【００６９】
ここでメディアサーバMSで認識しているメディアレンダラMR側でのConnectionID(X-AV-ConnectionInfo中のPeerConnectionID)が"-1"であり、これはメディアサーバMRで割り当てているConnectionID="3"と異なる。この相違は、メディアサーバMS、メディアレンダラMR各々のPFC()アクションを、コントロールポイントCPが呼び出す際の引数の内容の違いに基づくものである。メディアレンダラMRでは、その相違を無視してよい。
【００７０】
上記応答が、ステップC7のYESを通じての処理の結果である場合、仮想コネクション情報との適切な対応付けができていないために、X-AV-ConnectionInfoに格納される情報は不完全であるか、X-AV-ConnectionInfoフィールドがない場合がある。メディアレンダラMRは、この場合、実コネクションを確立できたものの、メディアサーバMSにおいては仮想コネクションとの対応付けを行えなかった旨を把握することが出来る。
【００７１】
以上の一連の手順において、仮想コネクションの一意性を把握するために用いることが出来る情報は、意味のある情報が割り当てられ、メディアサーバMSおよびメディアレンダラMR双方で把握しており、かつ値が一致しているところの、メディアサーバMSで割り当てたConnectionIDのみに限られる場合がある。
【００７２】
このような場合において、メディアサーバMSおよびメディアレンダラMRで管理し実コネクションと関連付けられる情報、ステップB4,ステップC10でX-AV-ConnectionInfoに格納する情報、といった情報であるところの、仮想コネクション情報は、メディアサーバMS,メディアレンダラMR双方において、メディアサーバMSにて割り当てられたと認識しているConnectionID、およびそのメディアサーバMSのUDNとserviceIdの組として定義し、以上に述べた一連の処理を行ってもよい。
【００７３】
その他仮想コネクション情報は、メディアサーバMS,メディアレンダラMR相互に対応付けを確認可能な、任意の情報、またはその組み合わせにて構成してもよい。
【００７４】
図８に戻り、ステップC7において、チャネルを得られなかった場合は（ステップC7のNO）、実コネクション管理部２２は、実コネクションの確立が失敗した旨をメディアレンダラMRにおける実コネクション管理部３２に返す（ステップC9）。
【００７５】
図３に戻り、コントロールポイントCPは、例えばユーザによる指示に応じて、メディアサーバMS及びメディアレンダラMRにおける仮想コネクション管理部２３、３３に、ConnectionComplete() アクションの実行を指示する（ステップS19、S20）。この際、各仮想コネクション管理部２３、３３に対して、それぞれ対応する仮想コネクション情報を指定する。これにより、指定した仮想コネクション情報に対応する仮想コネクション及びこれに関連する実コネクションが解放される（コネクション解放処理）。
【００７６】
図９は、コネクション解放処理（第１のコネクション解放処理）の流れを説明するフローチャートである。以下の処理は、メディアサーバMS及びメディアレンダラMRのそれぞれにおいて行われる。
【００７７】
まず、コントロールポイントCPから指定された仮想コネクション情報を含むチャネルをコネクションマップから検索する（ステップD1）。
【００７８】
そのようなチャネルが見つかった場合は（ステップD2のYES）、そのチャネルから仮想コネクション情報を消去する（仮想コネクションを解放する）（ステップD3）。
【００７９】
そして、消去した仮想コネクション情報に対応する実コネクション情報を当該チャネルから消去する（例えば少なくともhandleをヌルとし、statusを非活性にする）（実コネクションを解放する）（ステップD4）。データ伝送が実行中であった場合は、データ伝送を停止してから実コネクション情報を消去する。以上によってチャネルが解放される。
【００８０】
ステップD2においてチャネルが見つからなかった場合は（ステップD2のNO）、コントロールポイントCPにエラーを返す（ステップD5）。
【００８１】
以上に説明した第１のコネクション解放処理では、コントロールポイントCPがメディアサーバMR及びメディアレンダラＭＲにConnectionComplete()アクションを実行させることにより、つまりユーザの指示により、明示的にコネクションの解放を行った。以下では、コネクションの自動的な解放について説明する。
【００８２】
図１０は、コネクションの自動解放処理（第２のコネクション解放処理）の流れを説明するフローチャートである。
【００８３】
まず、メディアサーバMS及びメディアレンダラMRにおける仮想コネクション管理部２３、３３は、チャネルを１つ選択し（ステップE1）、実コネクション情報が登録されているか否かを判断する（ステップE2）。
【００８４】
実コネクション情報が登録されている場合は（ステップE2のYES）、実コネクションが活性及び非活性のいずれにあるかを判断する（ステップE3）。
【００８５】
実コネクションが非活性である場合は（ステップE3のYES）、実コネクション情報に含まれる最終非活性移行時刻に基づき、「最終非活性移行時刻＋タイムアウト時間−現在の時刻」を計算する（ステップE4）。タイムアウト時間は予め定められた値であって、実コネクションが非活性になっても、仮想コネクションをその値に示される時間、継続させるためのものである。このような措置は、一連の再生過程において、コネクションの確立と切断を繰り返す伝送プロトコルにおいて有効である。
【００８６】
計算された値が０以上である場合は（ステップE4のYES）、即ち、最終非活性移行時刻からタイムアウト時間が経過した場合は、上述の図９に示したフローチャートに従ってコネクションの解放処理を行う（ステップE5）。
【００８７】
ステップE2において実コネクション情報が登録されていない場合（ステップE2のNO）、ステップE3において実コネクションが活性である場合（ステップE3のNO）、ステップE4で計算された値が０未満である場合（ステップE4のYES）、処理を続行する場合は（ステップE6のYES）次のチャネルを選択して（ステップE1）、同様の処理を行う。
【００８８】
図１１は、最終非活性移行時刻の更新処理を説明するフローチャートである。
【００８９】
メディアサーバMS及びメディアレンダラMRにおける実コネクション管理部２２、３２は、実コネクションが非活性に移行したら（ステップF1）、当該実コネクションに対応するチャネルをコネクションマップから検索する（ステップF2）。
【００９０】
見つかったチャネルに仮想コネクション情報が登録されていない場合は（ステップF3のNO）、図９のステップD4と同様にして実コネクション情報を消去することによりチャネルを解放する（ステップF6）。
【００９１】
一方、見つかったチャネルに仮想コネクション情報が登録されている場合は（ステップF3のYES）、実コネクション情報におけるstatusフィールドを活性にし（ステップF4）、さらにLast closed timeフィールドにおける最終非活性移行時刻を更新する（ステップF5）。
【００９２】
ここで、コネクションの解放処理は、上述した第１及び第２のコネクション解放処理（図９、図１０参照）の他、メディアサーバMS及びメディアレンダラMRにUPnPコントロールポイントとしての機能をさらに備えさせることにより、図１２及び図１３のフローチャートに示すようにして行うこともできる。
【００９３】
図１２は、第３のコネクション解放処理の流れを説明するフローチャートである。
【００９４】
メディアサーバMS又はメディアレンダラMRが、メディアレンダラMR又はメディアサーバMSから、あるいは周囲のUPnPデバイス（メディアサーバ又はメディアレンダラ）から終了通知（例えばSSDP:byebye）を受信する（ステップG1）。終了通知には、その装置のUDN等が含まれる。
【００９５】
終了通知に含まれるUDNを抽出し、抽出したUDNを有するチャネルがコネクションマップに存在するか否かを検索する（ステップG2、G3）。
【００９６】
チャネルが見つかった場合は（ステップG4のYES）、図９のフローチャートに従って、チャネルを解放する（ステップG5）。チャネルが見つからなかった場合は（ステップG4のNO）特に何もしない。
【００９７】
図１３は、第４のコネクション解放処理の流れを説明するフローチャートである。
【００９８】
まず、メディアサーバMS又はメディアレンダラMRは、コネクションマップからチャネルを選択し（ステップH1）、選択したチャネルに仮想コネクション情報が登録されている場合は（ステップH2のYES）、その仮想チャネル情報におけるUDNについて、SSDP：discover（UPnPの探索手続き）を実行する（ステップH3、H4）。
【００９９】
そのUDNを有する装置から応答が得られない場合は（ステップH5のNO）、その装置はネットワークに参加していないと判断し、そのチャネルを解放する（ステップH6）。
【０１００】
ステップH2において仮想コネクション情報が登録されていなかった場合（ステップH2のNO）、ステップH5において応答があった場合（ステップH5のYES）及びステップH6の後は、処理を続行する場合は（ステップH7のYES）、次のチャネルを選択する（ステップH1）。
【０１０１】
以上の図１２及び図１３に示した手続きによって、対向機器の活動が終了または確認されなくなった場合に、当該対向機器に対して割り当てたチャネルを解放することが可能になる。
【０１０２】
以上に説明した本実施の形態では、HTTP-GETのようなメディアの再生側からメディアの供給側に対して実コネクションを確立し、データ伝送を要求するプル型のストリーム伝送であったが、プッシュ型のストリーム伝送でも本発明は適用可能である。この場合、メディアの送出側であるメディアサーバ側においては従来と同様にして実コネクションの確立時に実コネクションと仮想コネクションとが対応付けされ、メディアの再生側におけるメディアレンダラでは、本発明によって仮想コネクションと実際の再生資源との対応付けが可能となる。
【０１０３】
本発明は、実コネクションの確立時に、仮想コネクション情報を埋め込み、埋め込んだ仮想コネクション情報を取り出せるプロトコルであれば適用可能である。例えばRTSP／RTP／UDPを用いた場合、RTSPにユーザ定義ヘッダを加えることができることから、これに仮想コネクション情報を埋め込むことで、本発明を適用できる。
【０１０４】
なお、本実施の形態は、Webアプリケーションで用いられるクッキーやセッションIDに類似するとも考えられる。しかし、これとの違いの一つに、例えば、通常のWebアプリケーションでは、サーバ及びクライアント間のみでセッション情報をやり取りするのに対し、本実施の形態では、コントロールポイントが、セッション情報をサーバ及びクライアント間で受け渡すことがある。
【０１０５】
以上の説明において、図１に示される各構成要素の全部または一部の機能は、ハードウェア的に実現しても、通常のプログラミング手段により生成したプログラムをコンピュータに実行させることによって実現も、これらの両方によって実現してもよい。
【０１０６】
以上のように、本実施の形態によれば、仮想コネクション情報を、実コネクションの確立プロセス時に相手方の装置に伝送するため、仮想コネクションの形成後に、実コネクションを形成する場合であっても、実コネクションと仮想コネクションとを対応付けできる。これにより、例えば、仮想コネクションを通じて、実コネクションを適正に制御できる。
【０１０７】
また、本実施の形態によれば、仮想コネクション情報から得られる対向機器の識別子（UDN）に基づいて、対向機器の活動状況を把握し、非稼働状態であると判断した場合は、チャネルを解放するようにしたため、チャネル管理を適正に行うことができる。
【０１０８】
また、本実施の形態によれば、実コネクションの最終非活性移行時刻から、所定の期間以上、実コネクションが活性にならない場合は、チャネルを解放するようにしたため、チャネル管理を適正に行うことができる。
【０１０９】
また、本実施の形態によれば、実コネクションの確立要求に仮想コネクション情報が含まれない場合は、仮想コネクションの確立時に確保したチャネルが当該確立要求に対して割り当てられないようにしたため（ステップC6、C7のNO参照）、UPnP AVプロトコルに基づくデータ伝送をより適正に行うことができる。
【０１１０】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【０１１１】
【図１】本発明の実施の形態に従った伝送システムの全体構成を示すブロック図である。
【図２】仮想コネクション情報及び実コネクション情報の基本フォーマットを示す図である。
【図３】図１の伝送システムによる基本的な動作を示すシーケンス図である。
【図４】仮想コネクション情報生成処理の流れを示すフローチャートである。
【図５】仮想コネクション情報の具体例を示す図である。
【図６】仮想コネクション情報生成処理の別例の流れを示すフローチャートである。
【図７】メディアレンダラMR側における実コネクション確立処理の流れを示すフローチャートである。
【図８】メディアサーバMS側における実コネクション確立処理の流れを示すフローチャートである。
【図９】第１のコネクション解放処理の流れを説明するフローチャートである。
【図１０】第２のコネクション解放処理の流れを説明するフローチャートである。
【図１１】最終非活性移行時刻の更新処理を説明するフローチャートである。
【図１２】第３のコネクション解放処理の流れを説明するフローチャートである。
【図１３】第４のコネクション解放処理の流れを説明するフローチャートである。
【図１４】仮想コネクション情報及び実コネクション情報の具体例を示す図である。
【符号の説明】
【０１１２】
１１  実データ通信路
１２  UPnP通信路
２１  メディアソース格納部
２２、３２  実コネクション管理部
２３、３３  仮想コネクション管理部
２４、３４  コネクションマップ
２４（１）〜２４（７）、３４（１）〜３４（７）  チャネル
２５  Content Directory サービス部
３１  再生器
メディアサーバ  MS
メディアレンダラ  MR
コントロールポイント  CP
【図１】
2006115471.tif 000003
【図２】
2006115471.tif 000004
【図３】
2006115471.tif 000005
【図４】
2006115471.tif 000006
【図５】
2006115471.tif 000007
【図６】
2006115471.tif 000008
【図７】
2006115471.tif 000009
【図８】
2006115471.tif 000010
【図９】
2006115471.tif 000011
【図１０】
2006115471.tif 000012
【図１１】
2006115471.tif 000013
【図１２】
2006115471.tif 000014
【図１３】
2006115471.tif 000015
【図１４】
2006115471.tif 000016