(57)【要約】【課題】  ユーザ操作に対する応答をより早めたコンテンツ再生技術を提供する。【解決手段】  DMP(Digital Media Player)へＴＣＰ／ＩＰパケットによりDMS(Digital Media Server)としてコンテンツを供給するサーバ装置であって、DMPからのTCP切断後、所定時間前記DMPからの所定操作アクセスがないことを検出する検出手段を備え、前記検出手段が前記所定操作アクセスがないことを検出した場合にアクセスが無くなったDMPが再生していたコンテンツのリソースを解放することを特徴とするサーバ装置。【選択図】      図３
2010057131.tif 000002
【特許請求の範囲】
【請求項１】
DMP(Digital Media Player)へＴＣＰ／ＩＰパケットによりDMS(Digital Media Server)としてコンテンツを供給するサーバ装置であって、
DMPからのTCP切断後、所定時間前記DMPからの所定操作によるアクセスがないことを検出する検出手段を備え、
前記検出手段が前記所定操作によるアクセスがないことを検出した場合にアクセスが無くなったDMPが再生していたコンテンツのリソースを解放することを特徴とするサーバ装置。
【請求項２】
前記所定操作によるアクセスはスキップ再生または特殊再生であることを特徴とする請求項１に記載のサーバ装置。
【請求項３】
DMS(Digital Media Server)からＴＣＰ／ＩＰパケットによりDMP(Digital Media Player)としてコンテンツを供給されるクライアント装置であって、
コンテンツを表示する表示手段を備え、
DMSへの所定操作によるアクセスによるTCP切断後、続けて所定時間内にTCPコネクション確立と前記DMSへのHTTPリクエストを行うことを特徴とするクライアント装置。
【請求項４】
請求項１に記載のサーバ装置と請求項３に記載のクライアント装置からなるコンテンツ再生システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ再生技術に関し、特に、デジタルメディアサーバにおける応答高速化に関する。
【背景技術】
【０００２】
近年、家庭内には、ＨＤＤレコーダ、フラットパネルディスプレイなどのデジタル家電や、ＰＣ（Personal Computer）が普及してきている。これらの機器は、近時の通信ネットワーク技術や通信デバイスの発達に伴い、通信ネットワークへの接続機能を有するものが増えている。このため、家庭内の機器同士を、通信ネットワークを介して通信可能に接続した、いわゆる家庭内ネットワークが普及し始めている。
【０００３】
このような家庭内ネットワークでは、機器間でデータ通信を行なうことにより、各機器に記憶されたデジタルコンテンツ（以下、単に「コンテンツ」と称する。）の共有が可能となるため、ユーザに利便性および快適性を提供することができる。したがって、家庭内ネットワークは、今後ますます普及していくことが予想される。
【０００４】
家庭内ネットワーク向けに、音楽・写真・動画といったコンテンツを、家電・ＰＣ・モバイル機器などの多種多様な機器間でシームレスに共有させるための規格として、例えばＤＬＮＡ（Digital Living Network Alliance）が発行した設計ガイドライン（Home Networked Device Interoperability Guidelines version 1.0）が知られている。以下では、この設計ガイドラインを「ＤＬＮＡガイドライン」と称する。
【０００５】
ＤＬＮＡガイドラインは、家庭内ネットワークにおいて高い相互接続性を達成するために、既存の規格を選定して策定されたものである。機器間の物理的な接続手段は、有線・無線に関わらず、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol）のパケットが通信可能なものであればよいと規定されている。例えば、有線であればイーサネット（登録商標）での接続、無線であればＩＥＥＥ８０２．１１ａ／ｂ／ｇでの接続をそれぞれ規定しており、その上でＴＣＰ／ＩＰのパケットが通信可能であればよい。
【０００６】
さらに、ＤＬＮＡガイドラインでは、家庭内ネットワーク上での機器の発見・制御方法の定義やコンテンツの検索・選択・管理方法の定義のために、ＵＰｎＰ（Universal Plug and Play）を規定している。また、コンテンツの伝送方法と再生制御方法との定義のためにＨＴＴＰ（Hyper Text Transfer Protocol）を規定している。最後に、機器の相互接続性と共生とのために各コンテンツのフォーマットを定義している。
【０００７】
ＤＬＮＡガイドラインにおける一般的なネットワークとしては、コンテンツを保有するDMS(Digital Media Server)と、ネットワークを経由してDMSのコンテンツを再生するDMP(Digital Media Player)とから構成される。ネットワークはＴＣＰ／ＩＰのパケットを通信するものであり、DMSとDMPはネットワーク上に何台接続されていても良い。
【０００８】
マルチメディア通信における動画像再生では、任意の動画像に飛び越して再生を行うとき、これを高速化して操作レスポンスを向上させる動画像データ再生方法および動画像データ再生システムを実現するといった工夫がある（例えば特許文献１）。ただしＤＬＮＡに関わる上記のような構成に適用できるものではないという問題があった。
【０００９】
一方、HTTPプロトコルを利用したデジタルメディアサーバは、クライアントからのGET要求が来ると、要求されたコンテンツのデータを送信し、TCPが切断されると、データの送信を停止している。
【００１０】
このため、従来方法においては、GET要求が来ると、コンテンツのリソース（ストリームファイル、ストリームの時間テーブル、ローカル暗号鍵）を確保し、TCPが切断されると、コンテンツのリソースを解放していた。
【００１１】
問題点として従来方法においては、スキップ再生の応答が遅いという問題がある。スキップ再生では、ユーザ操作をトリガに、同一コンテンツに対して再生停止→再生開始を行う。しかしながら、サーバは、再生停止処理においてスキップ再生と判断できないために、TCPが切断されると、コンテンツのリソースを解放してしまう。このため、再生開始処理で再度リソースを確保する必要があり、応答が遅くなるといった問題があった。
【特許文献１】特開平１０−２３３７２号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、ユーザ操作に対する応答をより早めたコンテンツ再生技術を提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明のサーバ装置は、DMP(Digital Media Player)へＴＣＰ／ＩＰパケットによりDMS(Digital Media Server)としてコンテンツを供給するサーバ装置であって、DMPからのTCP切断後、所定時間前記DMPからの所定操作アクセスがないことを検出する検出手段を備え、前記検出手段が前記所定操作アクセスがないことを検出した場合にアクセスが無くなったDMPが再生していたコンテンツのリソースを解放することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、ユーザ操作に対する応答をより早めたコンテンツ再生技術が得られる。
【発明を実施するための最良の形態】
【００１５】
本発明による実施形態を図１乃至図５を参照して説明する。
図１は、この発明を適用したデジタルテレビジョン放送受信装置１１１の外観と、このデジタルテレビジョン放送受信装置１１１を中心として構成されるネットワークシステムの一例を概略的に示している。
【００１６】
すなわち、デジタルテレビジョン放送受信装置１１１は、主として、薄型のキャビネット１１２と、このキャビネット１１２を起立させて支持する支持台１１３とから構成されている。そして、キャビネット１１２には、例えばＳＥＤ（Surface-conduction Electron-emitter Display）表示パネル，液晶表示パネル等でなる平面パネル型の映像表示器１１４、スピーカ１１５、操作部１１６、リモートコントローラ１１７から送信される操作情報を受ける受光部１１８等が設置されている。
【００１７】
また、このデジタルテレビジョン放送受信装置１１１には、例えばＳＤ（Secure Digital）メモリカード、ＭＭＣ（Multimedia Card）及びメモリスティック等の第１のメモリカード１１９が着脱可能となっており、この第１のメモリカード１１９に対して番組や写真等の情報の記録再生が行なわれるようになっている。
【００１８】
さらに、このデジタルテレビジョン放送受信装置１１１には、例えば契約情報等の記録された第２のメモリカード（ＩＣカード）１２０が着脱可能となっており、この第２のメモリカード１２０に対して情報の記録再生が行なわれるようになっている。
【００１９】
また、このデジタルテレビジョン放送受信装置１１１は、第１のＬＡＮ（Local Area Network）端子１２１、第２のＬＡＮ端子１２２、ＵＳＢ（Universal Serial Bus）端子１２３及びｉ．ＬＩＮＫ端子１２４を備えている。
【００２０】
このうち、第１のＬＡＮ端子１２１は、ＬＡＮ対応ＨＤＤ専用ポートとして使用されるもので、接続されたＮＡＳ（Network Attached Storage）であるＬＡＮ対応のＨＤＤ１２５に対して、イーサネット（登録商標）により情報の記録再生を行なうために使用される。
【００２１】
このように、ＬＡＮ対応ＨＤＤ専用ポートとしての第１のＬＡＮ端子１２１を設けることにより、他のネットワーク環境やネットワーク使用状況等に影響されることなく、ＨＤＤ１２５に対してハイビジョン画質による番組の情報記録を安定して行なうことができる。
【００２２】
また、第２のＬＡＮ端子１２２は、イーサネット（登録商標）を用いた一般的なＬＡＮ対応ポートとして使用されるもので、例えばハブ１２６を介して、ＬＡＮ対応のＨＤＤ１２７、コンテンツサーバ１２８、ＨＤＤ内蔵のＤＶＤ（Digital Versatile Disk）レコーダ１２９等の機器を接続し、これらの機器と情報伝送を行なうために使用される。
【００２３】
なお、コンテンツサーバ１２８については、家庭内ネットワークにおいてコンテンツのサーバ機器として動作するための機能を持ち、さらにコンテンツのアクセスに必要なＵＲＩ（Uniform Resource Identifier）情報を提供するサービスを備えたＵＰｎＰ（ユニバーサルプラグアンドプレイ）対応機器として構成される。
【００２４】
なお、ＤＶＤレコーダ１２９については、第２のＬＡＮ端子１２２を介して通信されるデジタル情報が制御系のみの情報であるため、デジタルテレビジョン放送受信装置１１１との間でアナログの映像及び音声情報を伝送するために、専用のアナログ伝送路１３０を設ける必要がある。
【００２５】
さらに、この第２のＬＡＮ端子１２２は、ハブ１２６に接続されたブロードバンドルータ１３１を介して、例えばインターネット等のネットワーク１３２に接続し、このネットワーク１３２を介してコンテンツサーバ１３３や携帯電話１３４等と情報伝送を行なうために使用される。
【００２６】
なお、コンテンツサーバ１３３についてはコンテンツのサーバ機器として動作するための機能を持ち、さらにコンテンツのアクセスに必要なＵＲＩ情報を提供するサービスを備えたＵＰｎＰ対応機器として構成される。
【００２７】
また、上記ＵＳＢ端子１２３は、一般的なＵＳＢ対応ポートとして使用されるもので、例えばハブ１３５を介して、携帯電話１３６、デジタルカメラ１３７、メモリカードに対するカードリーダ／ライタ１３８、ＨＤＤ１３９、キーボード１４０等のＵＳＢ機器を接続し、これらのＵＳＢ機器と情報伝送を行なうために使用される。
【００２８】
さらに、上記ｉ．ＬＩＮＫ端子１２４は、例えばＡＶ−ＨＤＤ１４１、Ｄ（Digital）
−ＶＨＳ（Video Home System）１４２等をシリアル接続し、これらの機器と情報伝送を行なうために使用される。
図２は、上記したデジタルテレビジョン放送受信装置１１１の主要な信号処理系を示している。
すなわち、ＢＳ／ＣＳデジタル放送受信用のアンテナ２４３で受信した衛星デジタルテレビジョン放送信号は、入力端子２４４を介して衛星デジタル放送用のチューナ２４５ａに供給される。
【００２９】
チューナ２４５ａは、制御部２６１からの制御信号により所望のチャンネルの放送信号を選局し、この選局された放送信号をＰＳＫ（Phase Shift Keying）復調器２４５ｂに出力する。
【００３０】
ＰＳＫ復調器２４５ｂは、制御部２６１からの制御信号により、チューナ２４５ａで選局された放送信号を復調し、所望の番組を含んだトランスポートストリームを得て、ＴＳ復号器２４５ｃに出力する。
【００３１】
ＴＳ復号器２４５ｃは、制御部２６１からの制御信号によりトランスポートストリーム（ＴＳ）多重化された信号のＴＳ復号処理を行い、所望の番組のデジタルの映像信号及び音声信号をデパケットすることにより得たＰＥＳ（Packetized Elementary Stream）を信号処理部２４７内のＳＴＤバッファ２４７ｆへ出力する。
【００３２】
また、ＴＳ復号器２４５ｃは、デジタル放送により送られているセクション情報を信号処理部２４７内のセクション処理部２４７ｈへ出力する。
また、地上波放送受信用のアンテナ２４８で受信した地上デジタルテレビジョン放送信号は、入力端子２４９を介して地上デジタル放送用のチューナ２５０ａに供給される。
【００３３】
チューナ２５０ａは、制御部２６１からの制御信号により所望のチャンネルの放送信号を選局し、この選局された放送信号をＯＦＤＭ（Orthogonal Frequency Division Multiplexing）復調器２５０ｂに出力する。
【００３４】
ＯＦＤＭ復調器２５０ｂは、制御部２６１からの制御信号により、チューナ２５０ａで選局された放送信号を復調し、所望の番組を含んだトランスポートストリームを得て、ＴＳ復号器２５０ｃに出力する。
【００３５】
ＴＳ復号器２５０ｃは、制御部２６１からの制御信号によりトランスポートストリーム（ＴＳ）多重化された信号のＴＳ復号処理を行い、所望の番組のデジタルの映像信号及び音声信号をデパケットすることにより得たＰＥＳ（Packetized Elementary Stream）を信号処理部２４７内のＳＴＤバッファ２４７ｆへ出力する。
【００３６】
また、ＴＳ復号器２５０ｃは、デジタル放送により送られているセクション情報を信号処理部２４７内のセクション処理部２４７ｈへ出力する。
ここで、上記信号処理部２４７は、テレビ視聴時には、ＴＳ復号器２４５ｃおよびＴＳ復号器２５０ｃからそれぞれ供給されたデジタルの映像信号及び音声信号に対して、選択的に所定のデジタル信号処理を施し、グラフィック処理部２５４及び音声処理部２５５に出力している。また、信号処理部２４７は、コンテンツ再生時には、制御部２６１から入力されたコンテンツの再生信号を選択し、所定のデジタル信号処理を施し、グラフィック処理部２５４及び音声処理部２５５に出力している。
【００３７】
制御部２６１には、信号処理部２４７から、番組を取得するための各種データや電子番組ガイド（ＥＰＧ）情報，番組属性情報（番組ジャンル等），字幕情報等（サービス情報、ＳＩやＰＳＩ）が入力されている。
【００３８】
制御部２６１は、これら入力された情報からＥＰＧ，字幕を表示するため画像生成処理を行い、この生成した画像情報をグラフィック処理部２５４へ出力する。
セクション処理部２４７ｈは、ＴＳ復号器２４５ｃ（２５０ｃ）から入力されたセクション情報の中から、番組を取得するための各種データや電子番組ガイド（ＥＰＧ）情報，番組属性情報（番組ジャンル等），字幕情報等（サービス情報、ＳＩやＰＳＩ）を制御部２６１へ出力する。
【００３９】
グラフィック処理部２５４は、（１）信号処理部２４７内のＡＶデコーダ２４７ｇから供給されるデジタルの映像信号と、（２）ＯＳＤ（On Screen Display）信号生成部２５７で生成されるＯＳＤ信号と、（３）データ放送による画像データと、（４）制御部２６１により生成されたＥＰＧ，字幕信号とを合成して映像処理部２５８へ出力する機能を有する。
【００４０】
また、字幕放送による字幕を表示するとき、グラフィック処理部２５４は、制御部２６１からの制御による字幕情報に基づき、映像信号上に字幕情報を重畳する処理を行う。
【００４１】
グラフィック処理部２５４から出力されたデジタルの映像信号は、映像処理部２５８に供給される。この映像処理部２５８は、入力されたデジタルの映像信号を、前記映像表示器１１４で表示可能なフォーマットのアナログ映像信号に変換した後、映像表示器１１４に出力して映像表示させるとともに、出力端子２５９を介して外部に導出させる。
【００４２】
また、上記音声処理部２５５は、入力されたデジタルの音声信号を、前記スピーカ１１５で再生可能なフォーマットのアナログ音声信号に変換した後、スピーカ１１５に出力して音声再生させるとともに、出力端子２６０を介して外部に導出させる。
【００４３】
ここで、このデジタルテレビジョン放送受信装置１１１は、上記した各種の受信動作を含むその全ての動作を制御部２６１によって統括的に制御されている。この制御部２６１は、ＣＰＵ（Central Processing Unit）等を内蔵しており、前記操作部１１６からの操作情報を受け、または、リモートコントローラ１１７から送出された操作情報を、前記受光部１１８を介して受信し、その操作内容が反映されるように各部をそれぞれ制御している。
【００４４】
この場合、制御部２６１は、主として、そのＣＰＵが実行する制御プログラムを格納したＲＯＭ（Read Only Memory）２６１ａと、該ＣＰＵに作業エリアを提供するＲＡＭ（Random Access Memory）２６１ｂと、各種の設定情報及び制御情報等が格納される不揮発性メモリ２６１ｃとを利用している。
【００４５】
また、この制御部２６１は、カードＩ／Ｆ（Interface）２６５を介して、前記第１のメモリカード１１９が装着可能なカードホルダ２６６に接続されている。これによって、制御部２６１は、カードホルダ２６６に装着された第１のメモリカード１１９と、カードＩ／Ｆ２６５を介して情報伝送することができる。
【００４６】
さらに、上記制御部２６１は、カードＩ／Ｆ２６７を介して、前記第２のメモリカード１２０が装着可能なカードホルダ２６８に接続されている。これにより、制御部２６１は、カードホルダ２６８に装着された第２のメモリカード１２０と、カードＩ／Ｆ２６７を介して情報伝送することができる。
【００４７】
また、上記制御部２６１は、通信Ｉ／Ｆ２６９を介して第１のＬＡＮ端子１２１に接続されている。これにより、制御部２６１は、第１のＬＡＮ端子１２１に接続されたＬＡＮ対応のＨＤＤ１２５と、通信Ｉ／Ｆ２６９を介して情報伝送することができる。この場合、制御部２６１は、ＤＨＣＰ（Dynamic Host Configuration Protocol）サーバ機能を有し、第１のＬＡＮ端子１２１に接続されたＬＡＮ対応のＨＤＤ１２５にＩＰ（Internet Protocol）アドレスを割り当てて制御している。
【００４８】
さらに、上記制御部２６１は、通信Ｉ／Ｆ２７０を介して第２のＬＡＮ端子１２２に接続されている。これにより、制御部２６１は、第２のＬＡＮ端子１２２に接続された各機器（図１参照）と、通信Ｉ／Ｆ２７０を介して情報伝送することができる。
【００４９】
また、上記制御部２６１は、ＵＳＢ  Ｉ／Ｆ２７１を介して前記ＵＳＢ端子１２３に接続されている。これにより、制御部２６１は、ＵＳＢ端子１２３に接続された各機器（図１参照）と、ＵＳＢ  Ｉ／Ｆ２７１を介して情報伝送することができる。
【００５０】
さらに、上記制御部２６１は、ｉ．ＬＩＮＫ  Ｉ／Ｆ２７２を介してｉ．ＬＩＮＫ端子１２４に接続されている。これにより、制御部２６１は、ｉ．ＬＩＮＫ端子１２４に接続された各機器（図１参照）と、ｉ．ＬＩＮＫ  Ｉ／Ｆ２７２を介して情報伝送することができる。
【００５１】
ところで、この実施形態ではＨＤＤ１２５に、初期登録時のＨＤＤ１２５、ＨＤＤ１２７、コンテンツサーバ１２８、ＤＶＤレコーダ１２９それぞれに割り当てられたストレージＩＤ（ＩＰアドレス、機器名を含む）を記述した登録ファイルを記憶保持している。
【００５２】
また、不揮発性メモリ２６１ｃに、ＨＤＤ１２５、ＨＤＤ１２７、コンテンツサーバ１２８、ＤＶＤレコーダ１２９それぞれのストレージＩＤを記憶している。
また、制御部２６１は、この発明に係わる機能として、ＵＰｎＰを利用した（１）サーバ機器発見機能２６１ｄと、（２）ＵＰｎＰを利用したコンテンツ情報取得機能２６１ｅと、（３）コンテンツアクセス制御機能２６１ｆとを備えている。
【００５３】
（１）制御部２６１は、サーバ機器発見機能２６１ｄにより、ＵＰｎＰのディスカバリ機能を用いてネットワーク上のＵＰｎＰ対応機器を発見する。例えばサーバ機器発見機能２６１ｄは、ＵＰｎＰのディスカバリ機能を用いてコンテンツサーバ１２８を発見する。
【００５４】
（２）制御部２６１は、コンテンツ情報取得機能２６１ｅにより、ＵＰｎＰのコントロール機能を用いてＵＰｎＰ対応機器をコントロールし、ＵＰｎＰ対応機器内のコンテンツをアクセスするために必要なＵＲＩ情報を取得する。例えばコンテンツ情報取得機能２６１ｅは、コンテンツサーバ１２８をコントロールし、コンテンツサーバ１２８内のＨＤＤ等に蓄積されているコンテンツをアクセスするために必要なＵＲＩ情報をコンテンツサーバ１２８から取得する。
【００５５】
（３）制御部２６１は、コンテンツアクセス制御機能２６１ｆにより、サーバ機器発見機能２６１ｄにより取得したサーバ機器のＩＰアドレス情報と、コンテンツ情報取得機能２６１ｅにより取得したＵＲＩ情報から得たＩＰアドレス情報と、デジタルテレビジョン放送受信装置１１１のＬＡＮ端子１２２に割り当てられたＩＰアドレスとネットマスクに基づいてコンテンツへのアクセス可否判定を行う。そして制御部２６１は、アクセス可と判断した場合にはコンテンツアクセスを許可するが、否と判断した場合には許可できない旨を映像表示器１１４にＯＳＤにより表示させる。
【００５６】
図２はDMPに関わる構成であるが、DMSでも映像表示や音声出力に関わる部分は不要であるが、制御部を例えば制御部２６１と同様な構成とすればよい。例えば図１のコンテンツサーバ１２８をそのような構成とすることができる。
【００５７】
ところでTCP/IPは、TCPとIPの組合せであり、HTTP等でデータの送受信を行うための下請けを担う、すなわち"フロー制御"や"エラー訂正"を行うプロトコルである。
【００５８】
TCPでは、相手ホストに対して仮想的なコネクションを貼る。この仮想的コネクションによって、ネットワーク間でバイトストリーム通信、すなわちバイト単位でデータを通信する事ができるようになる。TCPにおいてもIP同様、パケット別にTCPヘッダが付加される。
【００５９】
TCPでは、正確なデータの転送、即ちデータの誤り・抜け・重複・順序間違い等のチェックを行い、エラーがあれば直ちにデータを再要求し、通信の信頼性を保つ。また、フロー制御により、複数の経路によってパケット送信の時間差が発生するのを防ぐために、最初に送信先までの経路を作り、後に送信したパケットが先に到着するのを防ぐ。
【００６０】
更に、通信路の多重化を行い、同時に複数の通信が行えるようにする。これは、ある一つのサーバに向かって同時に複数の接続を試みる、例えばHTTPとFTPとtelnetを同時に利用したいような場合である。この時、ホストコンピュータと端末のマシンの間は1本のTCP/IPによるリンクができる。
【００６１】
しかし、この場合このままでは、ホストコンピュータはどのクライアントアプリケーションからデータが来たのか、またどのサーバアプリケーションにデータを渡していいのか、すなわちHTTPなのかFTPなのかtelnetなのかがわからないため、TCPではポート番号を使って、どのアプリケーションにデータを渡すかを決定する。ポート番号は1から65535まであり、通信の両端のアプリケーションを識別する。このうち、1から1023まではサーバアプリケーション用に予約されているが、それ以上の番号も使用する事が可能である。クライアントアプリケーションは1023より大きな番号が動的に割り当てられる。
【００６２】
よく使われるプロトコルのポート番号はWell-known-PortとしてRFC 1700にて定義されている。例えば、HTTPは80番、FTPが21番、telnetサーバが23番となっている。このようにして、同じ端末間で複数のアプリケーションを同時に使用した場合でも、お互いのデータが混乱なく、相手のアプリケーションに伝わるようになっています。
【００６３】
なおHTTPの既定ポート番号は80だが、これ以外のポート番号であっても、それが使用されていない事が確認できれば、使用してもかまわず例えば、HTTPの場合は、80から連想される8000や8080等がしばしば利用されている。FTPdが立っていないと確認できている場合はポート番号に21を使用したりしてもかまわない。但し、このような番号の使用は広く利用されるサーバにはあまり適用すべきではない。
【００６４】
ここでソケットの説明をする。ソケットとは、ネットワーク上の2つのプログラムがデータを送受信するための仕組みを抽象化したもので、以前にTCP/IPが実装された時に用意された仕組みである。ソケットにより、ネットワークを利用したプログラミングが格段に容易になっている。
【００６５】
ソケットには、ストリームソケットとデータグラムソケットの2種類がある。ストリームソケットでは、実際のデータ送受信の前に、まずコネクションを確立する。これにより、信頼性のあるデータ送受信が保証されるので、確実なデータの送受信やサイズの大きいデータ転送に適している。但し、信頼性がある一方、速度は犠牲にされる。トランスポート層のプロトコルとしてTCPを使用する。データグラムソケットは、コネクションレス型通信方式で、データの通信における送信データの順序は保証されないので、データ損失や重複が起こる可能性もある。しかし、データの信頼性が重要視されない局面でオーバーヘッドを抑える事ができ、TCPに比べ高速な通信が可能となります。主に、実時間性が要求されるストリーミング等で利用される。トランスポート層のプロトコルとしてUDPを使用する。
【００６６】
HTTPでは、信頼性が要求される事から、通信にTCP/IPを利用する。以降 "ソケット" は、ストリームソケットを指すものとする。
【００６７】
TCPクライアントとTCPサーバについて以下に説明する。
まずTCPクライアント(HTTPにおいては、HTTPクライアント)の通信の流れは次のようになる。
socket
まず、ソケットを作成する。この時点では、ソケットはまだIPアドレスやポート番号と関連付けられていない。
connect
作成されたソケットより、特定のIPアドレスの特定のポート番号へと接続する。接続できなかった場合、接続されるまで待つか、そのソケットを破棄し終了する。
send, write
ソケットに、データを送信する。HTTPの場合、送信されるデータはHTTPリクエストである。
recv, read
ソケットから、データを受信する。HTTPの場合、受信するデータはHTTPレスポンスである。
close
接続を終了する場合は、ソケットを閉じる。クライアントが能動的に閉じなくても、サーバが定める有効時間が過ぎると、サーバ側から切断される。
なおHTTPアプリケーションは、recvにて受信したデータを解析して、ユーザが望むような形で出力する。
TCPサーバ(HTTPにおいては、HTTPサーバ)の通信の流れは次のようになる。
socket
まず、ソケットを作成する。この時点では、ソケットはまだIPアドレスやポート番号と関連付けられていない。
bind
作成したソケットを、そのホスト上の特定のポート番号を割り当てる。
listen
ソケットが、最大で何個のクライアントから同時にリクエストを受ける事ができるか(キューの長さ)を指定する。ここで指定する数以上のリクエストは拒否される。
accept
サーバは、クライアントからの接続要求を待ち構える。接続要求があり、クライアントとの接続が確立すると、それをサーバのソケットに結び付ける。
recv, read
ソケットから、データを受信する。HTTPの場合、受信するデータはHTTPリクエストである。
send, write
ソケットに、データを送信する。HTTPの場合、送信されるデータはHTTPレスポンスである。
close
接続を終了する場合は、ソケットを閉じる。HTTP/1.0では、データ送信終了と同時に接続を終了するが、HTTP/1.1では、データ送信終了からサーバが定める時間内にリクエストが無い場合にのみ、接続を終了する。
【００６８】
次にHTTP/1.1でサポートされているメソッドを以下に示す。
（メソッド  HTTP  説明）
GET ◎ ◎ 最も一般的に使用されるメソッドである。ブラウザはサーバに対してページの取得を要求する。
HEAD ◎ ◎ ヘッダのみの情報を要求する。サーバはGETメソッドとHEADメソッドは必ずサポートしなければならない。
POST ○ ○ CGIでよく使用されるメソッドである。method="POST" を指定したフォームに入力したデータをサーバに転送する際に使用される。
【００６９】
PUT ○ ○ ファイルをサーバにアップロードする際に用いられる。
DELETE ○ ○ 指定したリソースを削除することをサーバに要求する。
CONNECT × ○ プロキシサーバを経由してSSL通信する際などに使用する。
OPTIONS × ○ サーバがサポートしているメソッドやオプションを調べる際に用いる。
TRACE × ○ HTTP要求がどのプロキシサーバを経由して送信されるかなど、HTTPの動作をトレースする際に用いる。このメッセージを受け取った最後のサーバは、要求メッセージに含まれるエンティティ（通常はヘッダ＋メッセージボディ）をそのまま返す。
【００７０】
応答メッセージにはステータス番号が含まれる。
（分類番号  メッセージ  説明）
情報 100 Continue 処理を継続しています。続きのリクエストを送信してください。
101 Switching Protocols Upgrade ヘッダで指定したプロトコルに変更して再要求してください。
成功 200 OK 成功しました。
201 Created Location ヘッダで指定した場所に新しいコンテンツが作成されました。
202 Accepted 要求は受理されました。ただし処理は完了していません。
Non-Authoritative Information 応答ヘッダはオリジナルサーバーが返したものとは異なりますが、処理は成功です。
204 No Content コンテンツはありませんが、処理は成功しました。
205 Reset Content 要求を受理したので、現在のコンテンツ（画面）を破棄してください。
206 Partial Content コンテンツを一部のみ返却します。
転送 300 Multiple Choices コンテンツ入手方法について複数の選択肢があります。
Moved Permanently Location ヘッダで指定された別の場所に移動しました。
302 Found Location ヘッダで指定された別の場所に見つかりました。そちらを見てください。
303 See Other Location ヘッダで指定された他の場所を見てください。
304 Not Modified 更新されていません。If-Modified-Since ヘッダを用いた場合に返却されます。
305 Use Proxy Location ヘッダで指定したプロキシを使用してください。
306 (Unused) 未使用。
307 Temporary Redirect 別の場所に一時的に移動しています。
クライアントエラー 400 Bad Request 要求が不正です。
401 Unauthorized 認証されていません。
402 Payment Required 支払いが必要です。
403 Forbidden アクセスが認められていません。
404 Not Found 見つかりません。
405 Method Not Allowed 指定したメソッドはサポートされていません。
406 Not Acceptable 許可されていません。
407 Proxy Authentication Required プロキシ認証が必要です。
408 Request Timeout リクエストがタイムアウトしました。
409 Conflict リクエストがコンフリクト（衝突・矛盾）しました。
410 Gone 要求されたコンテンツは無くなってしまいました。
411 Length Required Content-Length ヘッダを付加して要求してください。
412 Precondition Failed If-... ヘッダで指定された条件に合致しませんでした。
413 Request Entity Too Large 要求されたエンティティが大きすぎます。
414 Request-URI Too Long 要求された URI が長すぎます。
415 Unsupported Media Type サポートされていないメディアタイプです。
416 Requested Range Not Satisfiable 要求されたレンジが不正です。
417 Expectation Failed Expect ヘッダで指定された拡張要求は失敗しました。
サーバーエラー 500 Internal Server Error サーバーで予期しないエラーが発生しました。
501 Not Implemented 実装されていません。
502 Bad Gateway ゲートウェイが不正です。
503 Service Unavailable サービスは利用可能ではありません。
504 Gateway Timeout ゲートウェイがタイムアウトしました。
505 HTTP Version Not Supported このHTTPバージョンはサポートされていません。
一般にTCP切断のタイミングでは、再生停止とスキップ再生の区別を行うことは難しい。
しかしながら、スキップ再生の場合には、TCP切断後すぐに同一コンテンツへのGET要求が来る。
このため、TCP切断後すぐにはコンテンツのリソースを解放せず、所定時間（例えば５秒）アクセスがない場合にリソースを解放するように改良すれば（図３）、スキップ再生においてはリソースを解放せずに済む（図４）。
【００７１】
詳細に述べると図３のシーケンスは次のようになる。DMPおよびDMSの各制御部を中心とした制御プログラムによる動作である。
まずユーザからの再生指示があった場合、DMPからDMSに対してTCPコネクションを確立する（ステップＳ３１）。次にHTTPリクエストGETを行う（ステップＳ３２）。DMSでは、リソース確保済みのコンテンツと要求が異なる場合（ステップＳ３３のYES）リソースを開放する。より具体的にはストリームファイルをCLOSEしてローカル暗号鍵を破棄する（ステップＳ３４）。またリソースを未確保の場合（ステップＳ３５のYES）リソースを確保する。より具体的にはストリームファイルをOPENしてローカル暗号鍵を準備する（ステップＳ３６）。次にDMPに対してHTTPレスポンス200 OKを行い（ステップＳ３７）、コンテンツデータを送る（ステップＳ３８）。
【００７２】
次にユーザからの停止指示があった場合、DMPからDMSに対してTCPコネクションを切断する（ステップＳ３９）。次にDMSでは、所定時間アクセスがないことを確認（検出）してから（ステップＳ４０）、リソースを開放する。より具体的にはストリームファイルをCLOSEしてローカル暗号鍵を破棄する（ステップＳ４１）。
【００７３】
TCP切断後にコンテンツのリソースを保持した状態で、別コンテンツへのGET要求が来た場合は、確保済みのリソースを解放して、要求されたコンテンツのリソースを確保する（図３のGETリクエストS32〜レスポンスS37のシーケンス）。リソースの解放にかかる時間は、リソースを確保する時間に比べて短いため、問題とならない。また、複数コンテンツのリソースを確保することができる場合は、確保済みのリソースの内、アクセスされたのが一番古いものを解放すれば良い。
【００７４】
サーバの処理を改良した場合のスキップ再生のシーケンスを図４に示す。
ステップＳ３１からステップＳ３８までの順は図３と同様であるが、次にユーザからのスキップ指示があった場合、DMPからDMSに対してTCPコネクションを切断し（ステップＳ４２）続けて、TCPコネクション確立をし（ステップＳ４３）、HTTPリクエストGETをする（ステップＳ４４）。次にDMSでは、DMPに対してHTTPレスポンス200 OKを行い（ステップＳ４５）、コンテンツデータを送る（ステップＳ４６）。
【００７５】
効果として、TCP切断時にコンテンツのリソースを解放していないため、30秒スキップのGET要求に対する応答が従来方法に比べて早くなる。
通常再生から特殊再生（早送り・早戻し）に遷移する場合も、スキップ再生と同じシーケンスであるため、本発明で、通常再生から特殊再生の遷移も早くなる（図５）。
【００７６】
ステップＳ３１からステップＳ３８までの順は図３、４と同様であるが、次にユーザからの例えば早送り指示があった場合、DMPからDMSに対してTCPコネクションを切断し（ステップＳ５２）続けて、TCPコネクション確立をし（ステップＳ５３）、HTTPリクエストGETをする（ステップＳ５４）。次にDMSでは、DMPに対してHTTPレスポンス200 OKを行い（ステップＳ５５）、コンテンツデータを送る（ステップＳ５６）。
【００７７】
特殊再生（早送り・早戻し）から通常再生に遷移する場合も、スキップ再生と同じシーケンスであるため、本実施形態により、通常再生から特殊再生の遷移も早くなる。
【００７８】
上記のように実施形態の概要として、デジタルメディアサーバにおいて、クライアントからのTCP切断後もすぐにはリソースを解放せず、一定時間アクセスがない場合にリソースを解放する。これにより効果としてスキップ再生時などの応答を高速化した。
【００７９】
なお、この発明は上記実施形態に限定されるものではなく、この外その要旨を逸脱しない範囲で種々変形して実施することができる。
また、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係る構成要素を適宜組み合わせても良いものである。
【図面の簡単な説明】
【００８０】
【図１】本発明を適用したデジタルテレビジョン放送受信装置１１１の外観と、このデジタルテレビジョン放送受信装置１１１を中心として構成されるネットワークシステムを説明するための図。
【図２】デジタルテレビジョン放送受信装置１１１の主要な信号処理系を示す図。
【図３】同実施形態の効果を説明するために示す改良した再生シーケンス図。
【図４】同実施形態の改良シーケンスにおけるスキップ再生を示す図。
【図５】同実施形態に用いられる改良シーケンスで通常再生から早送りへの移行を示す図。
【符号の説明】
【００８１】
１１１…デジタルテレビジョン放送受信装置、１１２…キャビネット、１１３…支持台、１１４…映像表示器、１１５…スピーカ、１１６…操作部、１１７…リモートコントローラ、１１８…受光部、１１９…第１のメモリカード、１２０…第２のメモリカード、１２１…第１のＬＡＮ端子、１２２…第２のＬＡＮ端子、１２３…ＵＳＢ端子、１２４…ｉ．ＬＩＮＫ端子、１２５，１２７，１３９…ＨＤＤ、１２６，１３５…ハブ、１２８，１３３…コンテンツサーバ、１２９…ＤＶＤレコーダ、１３０…アナログ伝送路、１３１…ブロードバンドルータ、１３２…ネットワーク、１３４，１３６…携帯電話、１３７…デジタルカメラ、１３８…カードリーダ／ライタ、１４０…キーボード、１４１…ＡＶ−ＨＤＤ、１４２…Ｄ−ＶＨＳ。
【図１】
2010057131.tif 000003
【図２】
2010057131.tif 000004
【図３】
2010057131.tif 000005
【図４】
2010057131.tif 000006
【図５】
2010057131.tif 000007