JP2009118361A - 通信制御装置ならびに通信制御方法 - Google Patents

通信制御装置ならびに通信制御方法 Download PDF

Info

Publication number
JP2009118361A
JP2009118361A JP2007291465A JP2007291465A JP2009118361A JP 2009118361 A JP2009118361 A JP 2009118361A JP 2007291465 A JP2007291465 A JP 2007291465A JP 2007291465 A JP2007291465 A JP 2007291465A JP 2009118361 A JP2009118361 A JP 2009118361A
Authority
JP
Japan
Prior art keywords
rtsp
communication control
qos
message
control device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2007291465A
Other languages
English (en)
Inventor
Mitsuhiro Imai
光洋 今井
Yuko Okayama
祐孝 岡山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Communication Technologies Ltd
Original Assignee
Hitachi Communication Technologies Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Communication Technologies Ltd filed Critical Hitachi Communication Technologies Ltd
Priority to JP2007291465A priority Critical patent/JP2009118361A/ja
Priority to PCT/JP2008/070279 priority patent/WO2009060932A1/ja
Publication of JP2009118361A publication Critical patent/JP2009118361A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

【課題】帯域制御処理を実行できない既存のクライアント端末においても、QoS保証されたストリーミング型コンテンツ配信サービスを受けることを可能とする通信制御装置ならびに通信制御方法を提供する。
【解決手段】RTSPを用いたストリーミング型コンテンツ配信サービスにおいて、ホームネットワークとQoS制御可能な外部ネットワークとの間に設置される通信制御装置105であって、RTSPクライアント機器とRTSPサーバ機器との間で送受信されるRTSPメッセージを取得するメッセージ取得部402と、メッセージ取得部402にて取得した前記RTSPメッセージから、QoS制御に必要な情報を取得するQoS制御情報生成部403と、QoS制御情報生成部403にて取得したQoS制御に必要な情報を元に、前記RTSPサーバ機器との間で映像伝送用のQoSセッションを確立するQoS制御部404とを有する。
【選択図】図4

Description

本発明は、通信制御装置ならびに通信制御方法に関し、特に、RTSP(Real Time Streaming Protocol)を用いて映像、音楽等のコンテンツの再生制御を行うストリーミング型コンテンツ配信サービスに用いられる通信制御装置ならびに通信制御方法に適用して有効な技術に関するものである。
ブロードバンドネットワークの普及により、PCやネットワーク接続TV(IPTV)、STB(Set Top Box)等をクライアント端末とした、ネットワークを介した映像や音楽等のコンテンツ配信サービスが拡大している。
このようなコンテンツ配信サービスは、ストリーミング型とダウンロード型に大別することができる。このうち、ストリーミング型のコンテンツ配信サービスにおいては、コンテンツ配信サーバは、クライアント端末でのコンテンツの再生速度に合わせてコンテンツを配信する必要がある。よって、このようなサービスの多くはRTSP(Real Time Streaming Protocol)等のプロトコルを用いてコンテンツの再生要求、停止要求といった再生制御を行い、再生要求を受けてRTP(Real-time Transport Protocol)等のプロトコルを用いてコンテンツを伝送する方法が取られる。
このようなストリーミング型のコンテンツ配信サービスにおいては、クライアント端末とコンテンツ配信サーバとの間のネットワーク帯域が十分に確保されない場合、もしくは時間的にネットワーク帯域が十分に確保できないことがある場合において、再生中のコンテンツが途中で止まる、途切れるといった問題が発生する可能性がある。
近年、NGN(Next Generation Network)のような帯域保証(QoS(Quality of Service)保証)可能なネットワークが登場するに至り、上記のような問題のあったストリーミング型のコンテンツ配信サービスにおいて、コンテンツが途中で止まったり、途切れたりすることを防止する、すなわちQoS保証を行う方法が開示されている。
例えば、特開2005−12655号公報(特許文献1)には、端末装置がコンテンツ配信サブシステムにセッション確立を要求した際に、SIP(Session Initiation Protocol)セッション制御サブシステムが、コンテンツ配信サブシステムから当該コンテンツの視聴に必要な帯域の情報を取得し、帯域制御サブシステムに当該帯域情報に含まれる帯域値の帯域予約の要求を行い、帯域制御サブシステムで確保された帯域でコンテンツ配信サブシステムから端末装置に当該コンテンツを送信する方法が開示されている。
また、特開2004−289627号公報(特許文献2)には、ストリーミングコンテンツの配信要求がクライアント端末から通信ネットワークを介して送信される際に、映像配信サーバの現在の使用可能帯域に関連する帯域リソース情報を監視するサーバリソース監視部と、通信ネットワーク上の複数の中継点に対応する複数のルータ、クライアント端末および映像配信サーバの間の複数の通信経路それぞれの現在の使用可能帯域に関連するネットワークリソース情報を監視するネットワークリソース監視部とを備えたストリーミングコンテンツ配信要求受付制御システムが開示されている。
また、このようなストリーミング型コンテンツ配信システムにおいては、コンテンツはUDP(User Datagram Protocol)で配送する場合が多い為、コンテンツ配信サーバから、NAT(Network Address Translation)を利用して構成されたネットワーク上のクライアント端末へのコンテンツデータの到達問題(いわゆるNAT越え問題)も存在し、この問題を解決するための方法も開示されている。
例えば、特開2005−51680号公報(特許文献3)には、動画端末がサーバにNATテーブル作成パケットを送信するようにし、また、RTSPなどの制御系通信プロトコルで、サーバが送るマルチメディアデータの送り先ポートを決めるという従来の方法を改め、サーバがコンテンツの配信を開始する前に、動画端末からのNATテーブル作成パケットの受信を待ち、サーバが送るコンテンツ配信の宛先のIPアドレスおよびポート番号として、このパケットの発信元IPアドレスおよび発信元ポート番号を使うことによりNAT越えの問題を解決する方法が開示されている。
特開2005−12655号公報(図1) 特開2004−289627号公報(図1) 特開2005−51680号公報(図4)
上述の従来技術にはそれぞれ以下のような課題がある。まず、特許文献1に示される方法では、端末装置が帯域制御のためにSIP制御を行う必要がある。ユーザ宅には今後、PC、STB、ネットワーク接続TV等の複数の端末装置が設置されることが考えられるが、特許文献1に示される方法で帯域制御を実現するためには、これら全ての端末装置をSIP制御可能なもので揃えなければならない。
例えば、ユーザ宅にインターネット等の帯域制御不可能なネットワーク上におけるストリーミング型コンテンツ配信サービス対応の端末装置が既にあったとしても、NGNのような帯域制御可能なネットワーク上におけるストリーミング型コンテンツ配信サービスをそのまま受けることはできず、ユーザに機器の買い替え、交換、ソフトウェア更新といったコストや手間を強いることになる。
また、特許文献2に示される方法では、ストリーミングコンテンツ配信要求受付制御システムは、コンテンツの配送経路を決定する為に、該当コンテンツの必要帯域情報を用いる。コンテンツの配送経路の決定は、WWWポータルサーバ上でユーザがコンテンツを選択した際に行われる為、ストリーミングコンテンツ配信要求受付制御システムでは、WWWポータルサーバで選択されたコンテンツのID情報からコンテンツの必要帯域情報を取得するためのコンテンツ管理テーブルをあらかじめ準備しておかなければならない。
すなわち、特許文献2に示される方法では、帯域制御やコンテンツ配送経路設定の処理とコンテンツそのものの情報とが密接に関係した構造となっており、単にコンテンツ配信サービスを行いたいサービス提供事業者にとっては、既存の映像配信システムを利用できない等、参入の敷居を高める構成となっている。
また、特許文献3に示される方法では、サーバから動画端末へのNAT越えを実現する為に、動画端末はNATテーブル作成パケットを送出する必要があり、また、サーバはNATテーブル作成パケットの受信を待ってからコンテンツの送出を開始する構成となるため、動画端末、サーバ双方が上記手順に対応した装置でなければならない。例えば、ユーザが従来から所持している動画端末を用いた場合や、一般のストリーミング型コンテンツ配信サーバを用いた場合はNAT越えを実現することができない。
すなわち、特許文献3に示される方法の実現のためには、コンテンツ配信サービス提供事業者は当該方法に準拠したサーバを用意し、さらにサービス提供事業者からユーザにも当該方法に準拠した動画端末を配布する、もしくはユーザが当該方法に準拠した動画端末を購入する等のコストや手間を強いることになる。
そこで本発明の目的は、帯域制御処理を実行できない既存のクライアント端末においても、QoS保証されたストリーミング型コンテンツ配信サービスを受けることを可能とする通信制御装置ならびに通信制御方法を提供することにある。
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
本発明の代表的な実施の形態による通信制御装置は、クライアント端末が接続されるホームネットワークと映像配信サーバが接続されるQoS制御可能な外部ネットワークとの間に設置される通信制御装置であって、クライアント端末と映像配信サーバとの間で送受信されるRTSPメッセージに含まれる情報からQoS制御やNAT越えに必要な情報を取得し、クライアント端末の代わりに映像配信サーバとの間のQoSセッションの確立や、NAT越えの為のポートフォワード設定を行うことを特徴とするものである。
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
本発明の代表的な実施の形態によれば、通信制御装置でQoSセッション制御を一元的に実行することにより、QoS制御手段を有しないクライアント端末を用いて通信制御装置と映像配信サーバとの間のQoS制御セッションの確立が可能であり、ユーザにとってクライアント端末をQoS制御可能なものに置き換えるコストが不要であり、管理コストも小さい帯域保証型コンテンツ配信システムを実現することができる。
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一の符号を付し、その繰り返しの説明は省略する。
図1は、本発明の一実施の形態である映像配信システムの構成の一例を示す図である。図1において、当該映像配信システムは、映像配信サーバ102、帯域制御サーバ103、通信制御装置105、映像受信表示装置107、108を有する構成となっている。
映像配信サーバ102と帯域制御サーバ103と通信制御装置105とは、NGN(Next Generation Network)等のQoS(Quality of Service)制御可能なネットワーク101と接続しており、所定の手順に従って情報の送受信を行うことができる。また、通信制御装置105と映像受信表示装置107、108は、ユーザ宅104内に設置され、有線または無線で構成されるホームネットワーク106と接続しており、所定の手順に従って情報の送受信を行うことができる。
通信制御装置105は、ネットワーク101とホームネットワーク106の両方と接続しており、ユーザ宅104内に設置された機器にとって、ネットワーク101に接続された機器と情報の送受信を行うためのゲートウェイとしての機能を有する。
図2は、通信制御装置105のハードウェア構成の一例を示す図である。図2において、通信制御装置105は、CPU201、メインメモリ202、EPROM203、第1ネットワークI/F204、第2ネットワークI/F205、不揮発性記憶装置206を有する構成となっており、これらはそれぞれバス207と接続され、所定の手順に従って情報の送受信を行うことができる。
EPROM203にはブートプログラムが記憶されており、また、不揮発性記憶装置206には各種プログラムが記憶されている。通信制御装置105が起動すると、EPROM203に記憶されたブートプログラムによって不揮発性記憶装置206から各種プログラムがメインメモリ202へと読み出される。CPU201はメインメモリ202に読み出された各種プログラムを実行することにより、第1ネットワークI/F204や第2ネットワークI/F205等による信号の送受信等を行う。
第1ネットワークI/F204は、ホームネットワーク106と接続しており、ホームネットワーク106に接続する機器との間で情報の送受信を行うことができる。第1ネットワークI/F204は、ネットワークカード等により実現することができる。同様に、第2ネットワークI/F205は、ネットワーク101と接続しており、ネットワーク101と接続する機器との間で情報の送受信を行うことができる。第2ネットワークI/F205も、ネットワークカード等により実現することができる。
不揮発性記憶装置206には、上述のように、CPU201がメインメモリ202に読み出して実行するための各種プログラムが記憶されている。不揮発性記憶装置206は、フラッシュメモリやHDD(ハードディスクドライブ)、光ディスク等により実現することができる。
図3は、映像受信表示装置107のハードウェア構成の一例を示す図である。映像受信表示装置108のハードウェア構成も映像受信表示装置107と同様である。図3において、映像受信表示装置107は、CPU301、メインメモリ302、EPROM303、出力装置304、ネットワークI/F305、不揮発性記憶装置306、入力装置307、映像再生装置308を有する構成となっており、これらはそれぞれバス309と接続され、所定の手順にしたがって情報の送受信を行うことができる。
EPROM303にはブートプログラムが記憶されており、また、不揮発性記憶装置306には各種プログラムが記憶されている。映像受信表示装置107が起動すると、EPROM303に記憶されたブートプログラムによって不揮発性記憶装置306から各種プログラムがメインメモリ302へと読み出される。CPU301はメインメモリ302に読み出された各種プログラムを実行することにより、出力装置304、ネットワークI/F305、入力装置307、映像再生装置308等による信号の送受信等を行う。
出力装置304は、映像再生装置308で伸張(デコード)されたコンテンツや、ユーザの操作に応答するための情報を表示等により出力するための手段であり、CRT、液晶ディスプレイ、プラズマディスプレイ、プロジェクタ、スピーカ、ヘッドフォン等によって実現される。また、出力装置304は、TV等のコンテンツ再生端末とは異なる装置で実現してもよい。この場合、映像受信表示装置107には別途D/Aコンバータ等のTV信号生成装置を具備し、当該装置と出力装置304とはAVケーブルや同軸ケーブル等で接続される。
ネットワークI/F305は、通信網を介して他の装置と情報を送受信するための手段であり、例えばネットワークアダプタ、無線送受信装置等によって実現される。不揮発性記憶装置306には、上述のように、CPU301がメインメモリ302に読み出して実行するための各種プログラムが記憶されており、例えばHDD、フラッシュメモリ、光ディスク等によって実現することができる。
入力装置307は、ユーザが必要な命令や情報を入力するための手段であり、例えばTV受信機で使用されるリモコンや、PCで使用されるキーボード、マウス等によって実現される。映像再生装置308は、音声や映像等のコンテンツをデコードし、デコードされたコンテンツを出力装置304に送信する装置である。
なお、上述した通信制御装置105および映像受信表示装置107の構成は、図2および図3に示す構成に限られないことは当然である。例えば、映像受信表示装置107において、コンテンツのデコードが全てソフトウェアプログラムによって実現され、CPU301で実行されるような場合は、映像再生装置308を有さない構成となる。この場合、当該ソフトウェアプログラムは不揮発性記憶装置306に記憶され、CPU301によってメインメモリ302上に読み出されて実行される。
映像配信サーバ102のハードウェア構成は、図示しないが、少なくとも1台以上のコンピュータ(CPU、メインメモリ、不揮発性記憶装置、入力装置、出力装置、ネットワークI/F等を含む)から構成されており、不揮発性記憶装置からメインメモリに読み出され、CPUによって実行される各種プログラムには、RTSP(Real Time Streaming Protocol)、RTP(Real-time Transport Protocol)等のコンテンツ配信用のプロトコル、およびSIP(Session Initiation Protocol)等のQoSセッション制御用のプロトコルが実装されている。
帯域制御サーバ103のハードウェア構成は、図示しないが、少なくとも1台以上のコンピュータ(CPU、メインメモリ、不揮発性記憶装置、入力装置、出力装置、ネットワークI/F等を含む)から構成されており、不揮発性記憶装置からメインメモリに読み出され、CPUによって実行される各種プログラムには、SIP等のQoSセッション制御用のプロトコルが実装されている。
次に、本実施の形態における通信制御装置105の機能の概要について説明する。図4は、通信制御装置105の機能構成の概要を示す図である。ルーティング部401は、図1におけるネットワーク101とホームネットワーク106との間のメッセージのルーティングを行う。このルーティング機能により、通信制御装置105は、ネットワーク101とホームネットワーク106との間のゲートウェイとして機能する。後述するNAT越えのためのポートフォワードの機能も、ルーティング部401で実現される。
メッセージ取得部402は、詳細は後述するが、ルーティング部401を介して映像受信表示装置107と映像配信サーバ103との間で送受信されるRTSPメッセージを取得するRTSPメッセージ取得機能を有する。QoS制御情報生成部403は、メッセージ取得部402で取得されたRTSPメッセージから、後述するQoSセッション制御のための情報およびポートフォワード設定のための情報を取得・生成し、テーブル群405に記憶する。
QoS制御部404は、QoS制御情報生成部403で取得・生成されたQoSセッション制御のための情報を元に、SIP等のQoSセッション制御用のプロトコルにより、映像配信サーバ103との間でQoSセッションを確立する。タイムアウト監視部406は、通信制御装置105と映像受信表示装置107および映像配信サーバ102との間で確立される複数の通信セッションのタイムアウトを一元的に監視する機能を有する。
ルーティング部401、メッセージ取得部402、QoS制御情報生成部403、QoS制御部404、タイムアウト監視部406の各部は、例えば不揮発性記憶装置206に記憶されるプログラムによって実現され、当該プログラムがメインメモリ202に読み出された後、CPU201によって実行されることで、通信制御装置105は各機能を実現する。なお、上記各部をプログラムではなく回路によって構成することも当然可能である。また、テーブル群405は、上記プログラムの実行時にメインメモリ202上に作成される。
次に、本実施の形態の映像配信システムにおいて、通信制御装置105が扱うテーブル群405の内容について説明する。テーブル群405に含まれるテーブルは、通信制御装置105内で唯一のテーブルである「システム共通テーブル」と、映像受信表示装置107、108からのRTSPコネクション毎に記憶するテーブルである「コネクション内テーブル」とに分類することができる。
図5は、接続情報管理テーブル500の構成とデータの例を示す図である。接続情報管理テーブル500はコネクション内テーブルに該当し、対象のRTSPコネクションに係る映像受信表示装置107と映像配信サーバ102の情報や、コネクションのステータス等を管理する。接続情報管理テーブル500は、クライアントアドレス501、サーバアドレス502、タイムアウト503、タイマー504、状態505の各項目から構成される。
図6は、利用可能ポート番号テーブル600の構成とデータの例を示す図である。利用可能ポート番号テーブル600はシステム共通テーブルに該当し、通信制御装置105においてRTSPコネクションに係る通信に利用可能なポート番号の範囲を記憶する。利用可能ポート番号テーブル600は、利用可能ポート番号範囲601の項目から構成される。
図7は、利用ポート番号テーブル700の構成とデータの例を示す図である。利用ポート番号テーブル700はシステム共通テーブルに該当し、通信制御装置105においてRTSPコネクションに係る通信に既に利用されているポート番号を記憶する。利用ポート番号テーブル700は、利用ポート番号701の項目から構成される。
図8は、RTSP通信利用ポート番号テーブル800の構成とデータの例を示す図である。RTSP通信利用ポート番号テーブル800はコネクション内テーブルに該当し、対象のRTSPコネクションについて、通信制御装置105が映像配信サーバ102との間でRTSPメッセージの送受信に利用しているポート番号を記憶する。RTSP通信利用ポート番号テーブル800は、RTSP通信利用ポート番号801の項目から構成される。
図9は、映像データ受信情報テーブル900の構成とデータの例を示す図である。映像データ受信情報テーブル900はコネクション内テーブルに該当し、対象のRTSPコネクションについて、通信制御装置105が映像配信サーバ102から映像データを受信し、映像受信表示装置107へ送信するためのポートの情報等を管理する。映像データ受信情報テーブル900は、通信制御装置ポート901、サーバポート902、クライアントポート903、帯域904の各項目から構成される。
次に、本実施の形態の映像配信システムにおける動作の概要について説明する。図1に示す構成において、映像受信表示装置107、108は、映像配信サーバ102等のRTSPサーバとの間でRTSPメッセージを送受信するRTSPクライアントであり、RTSPメッセージの送受信によって、音声や映像等のコンテンツの再生制御を行う。
ネットワーク101は、NGN等のQoS制御可能なネットワークであり、ネットワーク101に接続する機器は、帯域制御サーバ103に対して、例えば、「どのIPアドレスの機器の何番ポートとどのIPアドレスの機器の何番ポートとの間で何Kbpsの帯域を確保する」、といったQoSセッション制御要求を行うことによって、ネットワーク101に接続した機器間で品質の高い通信を行うことができる。なお、本実施の形態においては、以下、QoSセッション制御のプロトコルにはSIPを用いるものとして説明を行う。
映像配信サーバ102は、映像受信表示装置107等のRTSPクライアントとの間でRTSPメッセージの送受信を行うRTSPサーバである。また、帯域制御サーバ103等のSIPサーバとの間でQoSセッション制御情報を送受信するSIPクライアントでもある。
帯域制御サーバ103は、通信制御装置105、映像配信サーバ102等のSIPクライアントとの間でQoSセッション制御情報の送受信を行い、実際のQoS制御を実行するSIPサーバである。また、図1には図示しないが、帯域制御サーバ103は、IMS(IP Multimedia System)の一部であり、SIPクライアントからのQoSセッション制御要求に応じてIMS内の各サーバ、例えば、HSS(Home Subscriber Server)、共通イネーブラ、AS(Application Server)等と必要な情報の送受信を行い、QoSセッション制御を行う。
通信制御装置105は、帯域制御サーバ103等のSIPサーバとの間でQoSセッション制御情報の送受信を行うSIPクライアントである。また、通信制御装置105は、ネットワーク101、ホームネットワーク106の両方と接続しており、メッセージ取得部402において、ホームネットワーク106側に接続された映像受信表示装置107等のRTSPクライアントが送信するRTSPメッセージ、およびネットワーク101側に接続された映像配信サーバ102等のRTSPサーバが送信するRTSPメッセージを取得するRTSPメッセージ取得機能を有する。
ここで、上記RTSPメッセージ取得機能について説明する。RTSPメッセージ取得機能において、映像受信表示装置107等のRTSPクライアント機器が送信するRTSPメッセージを取得するにはいくつかの方法があるが、その内の2つの方法について以下に説明する。
第1のRTSPメッセージ取得方法は、通信制御装置105にて、RTSPメッセージを取得するためのポートを監視し、映像受信表示装置107等のRTSPクライアント機器にRTSPプロキシ設定として通信制御装置105の当該ポートを設定した上で、映像受信表示装置107等のRTSPクライアント機器から映像配信サーバ102等のRTSPサーバ機器へRTSPメッセージを送信する方法である。
RTSPクライアント機器は、RTSPサーバ機器とRTSPメッセージの送受信を行うための通信路を確立する。第1のRTSPメッセージ取得方法では、RTSPクライアント機器は、接続先の情報(RTSPサーバ機器のIPアドレスおよびポート)を含む通信路確立要求を、RTSPプロキシ設定に指定された通信制御装置105のRTSPメッセージ監視ポートに対して送信することになる。
通信制御装置105では、RTSPメッセージ監視ポートに到達する接続元の情報(RTSPクライアント機器のIPアドレスおよびポート)、接続先の情報(RTSPサーバ機器のIPアドレスおよびポート)を含む通信路確立要求を取得して通信路を確立する。これ以降、RTSPクライアント機器は、当該通信路を介してRTSPメッセージを送信するため、通信制御装置105は、RTSPクライアント機器からのRTSPメッセージを取得することができる。
上述した第1のRTSPメッセージ取得方法では、映像受信表示装置107等のRTSPクライアント機器においてRTSPプロキシ設定が可能であることが必須となる。映像受信表示装置107においてRTSPプロキシ設定が可能でない場合は、通信制御装置105は、以下に説明する第2のRTSPメッセージ取得方法にてRTSPメッセージを取得する必要がある。
第2のRTSPメッセージ取得方法は、通信制御装置105に対して、ホームネットワーク106側からの通信により入力される特定の情報を、通信制御装置105のRTSPメッセージ監視ポートに対してリダイレクトするような設定を行う方法である。例えば、通信制御装置105のオペレーティングシステムがLinux(登録商標)の場合は、以下のような設定により実現できる。
まず、Linuxのカーネルをリダイレクト設定が可能なように構成しておく。そして、例えば、“iptables -t nat -A PREROUTING -p tcp --dport 554 -j REDIRECT --to-ports 10554”のコマンドによって、Linuxに対してポートのリダイレクトの設定を行う。この設定によれば、通信制御装置105を通る554番ポート(RTSPで用いられるWell Known Port)宛の通信を、例えば10554番ポート宛にリダイレクトすることができる。
通信制御装置105にてあらかじめ上記のようなポートのリダイレクト設定を行い、リダイレクト先のポートを監視することによって、通信制御装置105は、RTSPクライアント機器がRTSPサーバ機器とRTSPメッセージの送受信を行うための通信路確立要求を取得することができる。
第2のRTSPメッセージ取得方法では、RTSPクライアント機器は、RTSPサーバ機器のRTSP待ち受けポート(通常は554番ポート)に対して通信路確立要求を送信する。ホームネットワーク106に接続するRTSPクライアント機器から、ネットワーク101に接続するRTSPサーバ機器に対しての通信は、必ず通信制御装置105を経由する。
通信制御装置105は、RTSPクライアント機器が送信したRTSPサーバ機器宛の通信をリダイレクトし、リダイレクト先の監視ポートにて接続元の情報(RTSPクライアント機器のIPアドレスおよびポート)および接続先の情報(RTSPサーバ機器のIPアドレスおよびポート)を含む通信路確立要求を取得し、RTSPクライアント機器との間に通信路を確立する。これ以降、RTSPクライアント機器は、当該通信路を介してRTSPメッセージを送信するため、通信制御装置105は、RTSPクライアント機器からのRTSPメッセージを取得することができる。
上述した第2のRTSPメッセージ取得方法では、映像受信表示装置107等のRTSPクライアント機器にはRTSPプロキシ設定等の特別な設定は必要なく、RTSPクライアント機器は、通常の方法で単に映像配信サーバ102等のRTSPサーバ機器に対しての通信を行っているだけである。
上述した第1のRTSPメッセージ取得方法あるいは第2のRTSPメッセージ取得方法を用いたRTSPメッセージ取得機能により、通信制御装置105は、映像受信表示装置107等のRTSPクライアント機器が映像配信サーバ102等のRTSPサーバ機器に対して送信する通信路確立要求を取得することができる。言い換えると、通信制御装置105は、映像受信表示装置107等のRTSPクライアント機器が送信する通信路確立要求を取得することにより、RTSPクライアント機器との間に通信路を確立することができる。以下、このRTSPクライアント機器と通信制御装置105との間の通信路を第1の通信路と記述する。
上述した第1あるいは第2のRTSPメッセージ取得方法により、RTSPクライアント機器と第1の通信路を確立した通信制御装置105は、取得した通信路確立要求に含まれる接続元の情報(RTSPクライアント機器のIPアドレスおよびポート)および接続先の情報(RTSPサーバ機器のIPアドレスおよびポート)を取得することができる。ここで取得したRTSPサーバ機器の情報を用いて、通信制御装置105はさらに、RTSPサーバ機器と接続するための通信路を確立することができる。以下、このRTSPサーバ機器と通信制御装置105との間の通信路を第2の通信路と記述する。
通信制御装置105は、第1の通信路を経由して受信したRTSPメッセージの内容を解析し、必要な情報を取得したり、適切に書き換えたりした後、第2の通信路を経由してRTSPサーバ機器に送信する。その後、通信制御装置105は、RTSPサーバ機器からの応答であるRTSPメッセージを第2の通信路を経由して受信する。通信制御装置105は、取得したRTSPメッセージの内容を解析し、必要な情報を取得したり、適切に書き換えたりした後、第1の通信路を経由してRTSPクライアント機器に対して送信する。
送受信されるRTSPメッセージには、QoSセッション制御に必要な情報(QoS制御を行う各機器のIPアドレスとポートおよび必要な帯域の情報)も含まれている。本実施の形態の映像配信システムは、上述のように、通信制御装置105によって、RTSPクライアント機器とRTSPサーバ機器との間で送受信されるRTSPメッセージからQoSセッション制御に必要な情報を取得し、RTSPクライアント機器による再生制御が行われるまでの間に、RTSPサーバ機器と通信制御装置105との間でQoS制御を行うことによって、QoSセッション制御機能を有しないRTSPクライアント機器が、QoS保証された映像等のコンテンツ配信サービスを受けることを可能とするシステムである。
以下、本実施の形態の映像配信システムにおける動作の流れについて説明する。以下の説明において、通信制御装置105は上述した第1あるいは第2のRTSPメッセージ取得方法を用いて、RTSPクライアント機器が送信するRTSPメッセージを取得することができるように設定されているものとする。なお、第1のRTSPメッセージ取得方法を用いる場合は、映像受信表示装置107等のRTSPクライアント機器に対してあらかじめRTSPプロキシ設定がされているものとする。
まず、図10〜図13を用いて、本実施の形態の映像配信システムにおける動作の流れの概要を説明する。
図10は、通信路(第1の通信路および第2の通信路)の確立の際の動作の流れを示すシーケンス図である。まず、映像受信表示装置107が、通信制御装置105を経由して、映像配信サーバ102宛に通信路確立要求を送信する。通信制御装置105は、上述のRTSPメッセージ取得機能によって当該通信路確立要求を取得し、映像受信表示装置107との間に第1の通信路を確立する(1001)。
次に、通信制御装置105は、メインメモリ202上にRTSPコネクション毎に作成されるワークメモリに、接続情報管理テーブル500を新規に作成する(1002)。次に、通信制御装置105は、通信路確立要求に含まれる接続元(クライアント)IPアドレスおよび接続先(サーバ)IPアドレスを取得して、接続情報管理テーブル500のクライアントアドレス501およびサーバアドレス502に記憶する(1003)。
次に、通信制御装置105は、システムであらかじめ決めておくタイムアウトの初期値(例えば120秒)を、接続情報管理テーブル500のタイムアウト503およびタイマー504に設定する(1004)。なお、ここで設定するタイムアウト値は、後にRTSP SETUPレスポンスを受信した際に取得するRTSPセッションのタイムアウト値に書き換えられることになる。
次に、通信制御装置105は、通信制御装置105と映像配信サーバ102との間でRTSPメッセージの送受信を行うためのポートを決定する(1005)。ここではまず、システム共通テーブルである利用可能ポート番号テーブル600から利用可能ポート番号範囲601を取得し、次に、システム共通テーブルである利用ポート番号テーブル700に記憶している利用ポート番号701を全て読み出す。
通信制御装置105は、利用可能ポート番号範囲601のうち、利用ポート番号701に含まれない、すなわち現在利用されていないポートを一つ選び、それをRTSPメッセージの送受信に用いるポートとし、当該ポートを新たに利用ポート番号テーブル700に追記する。また、RTSP通信利用ポート番号テーブル800をワークメモリ上に作成し、当該ポートをRTSP通信利用ポート番号801として記憶する。
次に、通信制御装置105は、帯域制御サーバ103に対し、映像配信サーバ102との間にRTSP用QoSセッションを確立することを要求する(1006)。このとき、RTSPメッセージ自体はリアルタイム性が必要とされず、情報量もあまり多くない為、確保する帯域の指定は必要ない。すなわち、通信制御装置105のIPアドレスと上記で決定したRTSP通信利用ポート番号801、および映像配信サーバ102のIPアドレスおよびポートの情報を用いてRTSP用QoSセッションを確立する。
次に、通信制御装置105は、確立したRTSP用QoSセッションを通して第2の通信路を確立する(1007)。最後に、接続情報管理テーブル500の状態505を“Init”に設定する(1008)。
また、図示しないが、上記のように通信路(第1の通信路、RTSP用QoSセッション、第2の通信路)が確立すると、タイムアウト監視部406が起動する。タイムアウト監視部406は、接続情報管理テーブル500のタイマー504に設定した値を1秒毎にデクリメントし、タイマー504の値が0になった時点でタイムアウトと判定する。タイムアウトが発生すると、通信制御装置105は、上記で確立した各通信路を切断する。
なお、詳細は後述するが、タイマー504の値は、タイムアウトと判定される前に新たなRTSPメッセージを受信することで、タイムアウト503に設定した値にリセットされる。すなわち、タイムアウトとは、次のRTSPメッセージが到達するまでの待ち時間である。
図11は、再生準備の際の動作の流れを示すシーケンス図である。これ以降、RTSPクライアント機器とRTSPサーバ機器との間ではRTSPメッセージの送受信が行われる。RTSPには、メッセージの送受信を行うための各種のメソッドが定義されている。例えば、OPTIONS、DESCRIBE、SETUP、PLAY、PAUSE、ANNOUNCE、TEARDOWN等であり、それぞれについてリクエストとレスポンスのメソッドが定義されている。RTSPクライアント機器やRTSPサーバ機器は、これらのメソッドを介して情報を送受信し、音声や映像等のコンテンツ再生に必要な情報の交換を行う。
図11に示す再生準備の動作では、映像用QoSセッションの確立に必要な情報を収集する。すなわち、QoSセッション制御に必要なコンテンツの帯域情報、およびQoSセッションの両端の機器のIPアドレスおよびポートの情報を収集する。このうち、コンテンツの帯域情報はRTSP DESCRIBEレスポンス、IPアドレスおよびポートの情報はRTSP SETUPレスポンスからそれぞれ取得することができる。
まず、映像受信表示装置107は、第1の通信路を介して通信制御装置105へとRTSP DESCRIBEリクエストを送信する(1101)。RTSP DESCRIBEリクエストを受信した通信制御装置105は、接続情報管理テーブル500のタイマー504の値をタイムアウト503の値にリセットする(1102)。なお、これ以降全てのメソッドについて、第1の通信路から情報を受信した際には必ずタイマーをリセットする。
次に、通信制御装置105は、取得したRTSPメッセージの内容を第2の通信路を介して映像配信サーバ102へと送信する(1103)。次に、映像配信サーバ102は、RTSP DESCRIBEリクエストの内容を元に処理を行い、応答をRTSP DESCRIBEレスポンスとして第2の通信路を介して通信制御装置105へと送信する(1104)。
通信制御装置105は、RTSP DESCRIBEレスポンスを取得し、そこに含まれるコンテンツの情報のうちコンテンツのビットレートの情報を取得する。そして、映像データ受信情報テーブル900をワークメモリ上に作成し、帯域904の項目にその値を記憶する(1105)。その後、通信制御装置105は、取得したRTSP DESCRIBEレスポンスを、第1の通信路を介して映像受信表示装置107へと送信する(1106)。
次に、映像受信表示装置107は、RTSP SETUPリクエストを第1の通信路を介して通信制御装置105へと送信する(1107)。通信制御装置105は、第1の通信路を介してRTSP SETUPリクエストを取得し、タイマーをリセットし(1108)、RTSP SETUPリクエスト処理を行う(1109)。
すなわち、RTSP SETUPリクエストを受信した通信制御装置105は、RTSP SETUPリクエストから映像データ受信ポートであるclient_portの値を読み出し、映像データ受信情報テーブル900のクライアントポート903に記憶する。次に、利用可能ポート番号テーブル600および利用ポート番号テーブル700を参照して利用可能なポートを決定し、これを通信制御装置105での映像データ受信ポートとして、RTSP SETUPリクエストのclient_portの値をその値に書き換える。さらに、その値を映像データ受信情報テーブル900の通信制御装置ポート901に記憶する。
次に、通信制御装置105は、RTSP SETUPリクエストを第2の通信路を介して映像配信サーバ102へと送信し(1110)、その応答であるRTSP SETUPレスポンスを受信する(1111)。その後、通信制御装置105は、受信したRTSP SETUPレスポンスの内部処理を行う(1112)。
すなわち、RTSP SETUPレスポンスに含まれるRTSPセッション情報のタイムアウト値を取得し、接続情報管理テーブル500のタイムアウト503の値を、取得したタイムアウト値で上書きする。また、RTSP SETUPレスポンスに含まれる映像データ送信ポートであるserver_portの値を読み出し、映像データ受信情報テーブル900のサーバポート902に記憶する。
また、RTSP SETUPレスポンスのclient_portの値を読み出し、この値が映像データ受信情報テーブル900の通信制御装置ポート901の値と等しいかを確認する。等しくなければ、通信制御装置ポート901の値を取得したclient_portの値で上書きする。また、RTSP SETUPレスポンスのclient_portの値を、映像データ受信情報テーブル900のクライアントポート903の値に書き換える。
その後、映像データを映像受信表示装置107に伝送する為のポートフォワード設定を行う(1112)。すなわち、通信制御装置105の、映像データ受信情報テーブル900の通信制御装置ポート901に記憶したポートに到達した映像データを、映像受信表示装置107の、映像データ受信情報テーブル900のクライアントポート903に記憶したポートへとフォワードする為の設定を行う。
これは、例えば、通信制御装置105のオペレーティングシステムがLinuxの場合は、例えば、“iptables -t nat -A PREROUTING -p udp --dport [映像データ受信情報テーブル900の通信制御装置ポート901の値] -j DNAT --to-destination [接続情報管理テーブル500のクライアントアドレス501の値]:[映像データ受信情報テーブル900のクライアントポート903の値]”のコマンドで設定することができる。
次に、通信制御装置105は、映像データ受信情報テーブル900に記憶した内容を元に、帯域制御サーバ103に対して、映像配信サーバ102との間の映像用QoSセッションの確立要求を行う(1113)。すなわち、通信制御装置105のIPアドレスおよび映像データ受信情報テーブル900の通信制御装置ポート901に記憶したポートと、映像配信サーバ102のIPアドレスおよび映像データ受信情報テーブル900のサーバポート902に記憶したポートとの間に、映像データ受信情報テーブル900の帯域904に設定された分の帯域を確保するように要求する。
映像用QoSセッションが確立したら、通信制御装置105は、接続情報管理テーブル500の状態505を“Ready”に変更し(1114)、RTSP SETUPレスポンスを第1の通信路を介して映像受信表示装置107へと送信する(1115)。
図12は、映像再生の際の動作の流れを示すシーケンス図である。まず、映像受信表示装置107は、RTSP PLAYリクエストを、第1の通信路を介して通信制御装置105へと送信する(1201)。通信制御装置105は、RTSP PLAYリクエストを受信し、タイマーをリセットし(1202)、第2の通信路を介してRTSP PLAYリクエストを映像配信サーバ102へと送信する(1203)。
その後、RTSP PLAYレスポンスを受信し(1204)、接続情報管理テーブル500の状態505を“Playing”に変更して(1205)、RTSP PLAYレスポンスを、第1の通信路を介して映像受信表示装置107へと送信する(1206)。
映像配信サーバ102は、RTSP PLAYリクエストを受信すると、映像データの伝送を開始する(1207)。映像データは、映像配信サーバ102と通信制御装置105との間では、通信制御装置105がRTSP SETUPレスポンス受信時に確立した映像用QoSセッション内を伝送される。通信制御装置105が受信した映像データは、RTSP SETUPレスポンス受信時に設定したポートフォワード設定に従って、映像受信表示装置107へと送信される(1207)。
映像データの伝送中、映像受信表示装置107は、RTSPセッションがタイムアウトしない程度の間隔で、接続維持用のメッセージを通信制御装置105に送信する(1208)。これには通常、RTSPの状態に変更を与えないRTSP OPTIONSメソッドか単純なハートビートを用いる。通信制御装置105は、これらの情報を受信した際はタイマーをリセットし(1209)、受信した情報を映像配信サーバ102へと送信する(1210)。
図13は、再生停止の際の動作の流れを示すシーケンス図である。まず、映像受信表示装置107は、RTSP PAUSEリクエストを、第1の通信路を介して通信制御装置105へと送信する(1301)。通信制御装置105は、タイマーリセットを行い(1302)、RTSP PAUSEリクエストを第2の通信路を介して映像配信サーバ102へと送信する(1303)。
その後、RTSP PAUSEレスポンスを受信し(1304)、接続情報管理テーブル500の状態505を“Ready”に変更して(1305)、RTSP PAUSEレスポンスを、第1の通信路を介して映像受信表示装置107へと送信する(1306)。
次に、映像受信表示装置107は、RTSP TEARDOWNリクエストを第1の通信路を介して通信制御装置105へと送信する(1307)。通信制御装置105は、タイマーリセットを行い(1308)、RTSP TEARDOWNリクエストを第2の通信路を介して映像配信サーバ102へと送信する(1309)。RTSP TEARDOWNリクエストを受信した映像配信サーバ102は、映像データの伝送を終了し、RTSP TEARDOWNレスポンスを通信制御装置105に送信する(1310)。
次に、通信制御装置105は、帯域制御サーバ103に対し、映像配信サーバ102との間の映像用QoSセッションの終了要求を行い、映像用QoSセッションを終了する(1311)。その後、通信制御装置105は、ポートフォワード設定を解除し(1312)、映像データ受信情報テーブル900の通信制御装置ポート901に記憶されている値を利用ポート番号テーブル700から削除し、第2の通信路を切断する(1313)。
次に、通信制御装置105は、帯域制御サーバ103に対し、映像配信サーバ102との間のRTSP用QoSセッションの終了要求を行い、RTSP用QoSセッションを終了する(1314)。その際、RTSP通信利用ポート番号テーブル800のRTSP通信利用ポート番号801に記憶されている値を利用ポート番号テーブル700から削除する。
その後、接続情報管理テーブル500の状態505を“接続なし”に設定し(1315)、第1の通信路を介してRTSP TEARDOWNレスポンスを映像受信表示装置107へと送信する(1316)。その後、第1の通信路を切断し(1317)、コネクション内テーブルである接続情報管理テーブル500、RTSP通信利用ポート番号テーブル800、映像データ受信情報テーブル900を削除する(1318)。
ここで、本実施の形態での通信制御方法における、通信制御装置105が記憶するRTSPコネクションの状態遷移について説明する。図14は、本実施の形態におけるRTSPコネクションの状態遷移図である。また、図15は、本実施の形態におけるRTSPコネクションの状態遷移テーブルを示す図である。図14における遷移1〜7は、図15におけるNo.1〜7のイベントにそれぞれ対応している。
図14において、まず最初は“コネクション無し”の状態である。“コネクション無し”状態にて、通信制御装置105がRTSPクライアント機器からの接続要求を受けて、第1の通信路の確立、RTSP用QoSセッションの確立、第2の通信路の確立を行うと、RTSPコネクションは“Init”状態に遷移する。
“Init”状態にて、通信制御装置105がRTSP SETUPレスポンスを受信し、映像用QoSセッションが確立すると“Ready”状態に遷移する。“Ready”状態にて、通信制御装置105がRTSP PLAYレスポンスを受信すると“Playing”状態に遷移する。“Playing”状態にて、通信制御装置105がRTSP PAUSEレスポンスを受信すると“Ready”状態に遷移する。
また、“Playing”状態にて、接続がタイムアウトする、もしくは通信制御装置105がRTSP TEARDOWNレスポンスを受信すると、映像用QoSセッションおよびRTSP用QoSセッションを終了し、“コネクション無し”状態に遷移する。“Ready”状態にて、接続がタイムアウトする、もしくは通信制御装置105がRTSP TEARDOWNレスポンスを受信すると、映像用QoSセッションおよびRTSP用QoSセッションを終了し、“コネクション無し”状態に遷移する。“Init”状態にて、接続がタイムアウトすると、RTSP用QoSセッションを終了し、“コネクション無し”状態に遷移する。
上述のように、通信制御装置105は、RTSPコネクションについて、RTSPセッションの状況とRTSP用および映像用QoSセッションの状況とを統一的に表す“状態”を用いて管理する。この“状態”は、RTSPコネクション毎に接続情報管理テーブル500の状態505に記憶している。
次に、図16〜図24を用いて、本実施の形態の映像配信システムにおける通信制御装置105での個別の処理の流れを説明する。
図16は、通信路確立の処理の流れを示すフローチャートである。まず、ステップS1601で、映像受信表示装置107から第1の通信路確立要求を受信する。次に、ステップS1602で、当該接続に関する接続情報管理テーブル500を作成する。次に、ステップS1603で、第1の通信路の情報における接続元および接続先のIPアドレスを取得し、接続情報管理テーブル500のクライアントアドレス501、サーバアドレス502に記憶する。
次に、ステップS1604で、システムで決めるタイムアウト時間を接続情報管理テーブル500のタイムアウト503に記憶する。次に、ステップS1605で、後述する通信制御装置105の利用ポート決定の手順によりRTSP通信利用ポートを決定し、ステップS1606で、決定したRTSP通信利用ポートをRTSP通信利用ポート番号テーブル800に記憶する。その後、ステップS1607で、RTSP用QoSセッションを確立し、ステップS1608で、第2の通信路を確立する。
図17は、RTSPリクエストの処理の流れを示すフローチャートである。まず、ステップS1701で、第1の通信路を介して映像受信表示装置107からRTSPリクエストデータを受信する。次に、ステップS1702で、接続情報管理テーブル500のタイマー504をリセットする。次に、ステップS1703で、受信したRTSPリクエストがSETUPリクエストかどうかを調べる。
受信したRTSPリクエストがSETUPリクエストである場合は、ステップS1704へ進み、SETUPリクエストでない場合は、ステップS1705へ進む。ステップS1704では、後述するSETUPリクエスト処理を行い、ステップS1705へ進む。ステップS1705では、第2の通信路を介して映像配信サーバ102にRTSPリクエストデータを送信する。
図18は、SETUPリクエストのサブルーチンの処理の流れを示すフローチャートである。まず、ステップS1801で、受信したRTSPリクエストデータから映像データ受信ポートを取得し、映像データ受信情報テーブル900のクライアントポート903に記憶する。
次に、ステップS1802で、後述する通信制御装置105の利用ポート決定の手順により、通信制御装置105の映像データ受信ポートを決定し、映像データ受信情報テーブル900の通信制御装置ポート901に記憶する。次に、ステップS1803で、RTSPリクエストデータの映像データ受信ポートを、ステップS1802で決定した通信制御装置105の映像データ受信ポートの値に書き換える。
図19は、通信制御装置105の利用ポート決定のサブルーチンの処理の流れを示すフローチャートである。まず、ステップS1901で、通信制御装置105の利用可能ポート番号テーブル600から、利用可能ポート番号範囲601を取得する。次に、ステップS1902で、通信制御装置105の利用ポート番号テーブル700に記載の利用ポート番号701を全て取得する。次に、ステップS1903で、利用可能ポート番号範囲601のうち、利用ポート番号701に含まれない番号を1つ選択し、その番号を利用ポート番号テーブル700に追記する。
図20は、映像配信サーバ102からのRTSPレスポンスの処理の流れを示すフローチャートである。まず、ステップS2001で、第2の通信路を介して映像配信サーバ102からRTSPレスポンスデータを受信する。次に、ステップS2002で、受信したRTSPレスポンスがDESCRIBEレスポンスかどうかを調べる。
受信したRTSPレスポンスがDESCRIBEレスポンスである場合は、ステップS2003へ進む。DESCRIBEレスポンスでない場合は、ステップS2004へ進む。ステップS2003では、後述するDESCRIBEレスポンス処理を行い、ステップS2008へ進む。ステップS2004では、受信したRTSPレスポンスがSETUPレスポンスかどうかを調べる。
ステップS2004で、受信したRTSPレスポンスがSETUPレスポンスである場合は、ステップS2005へ進む。SETUPレスポンスでない場合は、ステップS2006へ進む。ステップS2005では、後述するSETUPレスポンス処理を行い、ステップS2008へ進む。ステップS2006では、受信したRTSPレスポンスがTEARDOWNレスポンスかどうかを調べる。
ステップS2006で、受信したRTSPレスポンスがTEARDOWNレスポンスである場合は、ステップS2007へ進む。TEARDOWNレスポンスでない場合は、ステップS2008へ進む。ステップS2007では、後述するTEARDOWNレスポンス処理を行い、ステップS2008へ進む。ステップS2008では、状態変更処理を行う。
次に、ステップS2009で、第1の通信路を介して映像受信表示装置107へとRTSPレスポンスデータを送信する。次に、ステップS2010で、送信したRTSPレスポンスがTEARDOWNレスポンスかどうかを調べる。送信したRTSPレスポンスがTEARDOWNレスポンスである場合は、ステップS2011へ進む。TEARDOWNレスポンスでない場合は、処理を終了する。ステップS2011では、第1の通信路を切断し、次に、ステップS2012で、コネクション内テーブルである接続情報管理テーブル500、RTSP通信利用ポート番号テーブル800、映像データ受信情報テーブル900を削除する。
図21は、DESCRIBEレスポンスのサブルーチンの処理の流れを示すフローチャートである。まず、ステップS2101で、受信したRTSPレスポンスデータから映像のビットレート情報を取得する。次に、ステップS2102で、映像データ受信情報テーブル900の帯域904に、取得したビットレート情報を記憶する。
図22は、SETUPレスポンスのサブルーチンの処理の流れを示すフローチャートである。まず、ステップS2201で、受信したRTSPレスポンスデータから映像データ受信ポートを取得する。次に、ステップS2202で、ステップS2201で取得した映像データ受信ポートが、映像データ受信情報テーブル900の通信制御装置ポート901に記憶している値と同一であるかを確認する。同一である場合はステップS2204に進む。同一でない場合は、ステップS2203で、映像データ受信情報テーブル900の通信制御装置ポート901を、ステップS2201で取得した映像データ受信ポートの値で上書きし、ステップS2204に進む。
ステップS2204では、受信したRTSPレスポンスデータから映像データ送信ポートを取得し、映像データ受信情報テーブル900のサーバポート902に記憶する。次に、ステップS2205で、受信したRTSPレスポンスデータからRTSPセッションのタイムアウト時間を取得し、接続情報管理テーブル500のタイムアウト503に上書きする。次に、ステップS2206で、受信したRTSPレスポンスデータの映像データ受信ポートを、映像データ受信情報テーブル900のクライアントポート903の値で書き換える。
次に、ステップS2207で、接続情報管理テーブル500のクライアントアドレス501と映像データ受信情報テーブル900の情報を用いて、ポートフォワード設定を行う。次に、ステップS2206で、映像データ受信情報テーブル900の情報を用いて、映像用QoSセッションを確立する。
図23は、TEARDOWNレスポンスのサブルーチンの処理の流れを示すフローチャートである。まず、ステップS2301で、映像用QoSセッションを終了し、ステップS2302で、ポートフォワード設定を解除する。次に、ステップS2303で、第2の通信路を切断し、ステップS2304で、RTSP用QoSセッションを終了する。
図24は、タイムアウト処理の流れを示すフローチャートである。まず、ステップS2401で、接続情報管理テーブル500のタイマー504の値が0となったことを検知する。次に、ステップS2402で、接続情報管理テーブル500の状態505が“Ready”または“Playing”かどうかを確認する。
接続情報管理テーブル500の状態505が“Ready”または“Playing”でない場合は、ステップS2405へ進む。接続情報管理テーブル500の状態505が“Ready”または“Playing”である場合は、ステップS2403へ進む。ステップS2403では、映像用QoSセッションを終了し、ステップS2404で、ポートフォワード設定を解除し、ステップS2405へ進む。
ステップS2405では、第2の通信路を切断し、ステップS2406で、RTSP用QoSセッションを終了する。次に、ステップS2407で、第1の通信路を切断し、ステップS2408で、コネクション内テーブルである接続情報管理テーブル500、RTSP通信利用ポート番号テーブル800、映像データ受信情報テーブル900を削除する。
以上に説明したような本実施の形態における通信制御装置105は、ホームネットワーク106に接続する複数のRTSPクライアント機器からの接続を別個に管理することができる。例えば、映像受信表示装置107が映像再生中に、新たに映像受信表示装置108が接続した場合、映像受信表示装置108と通信制御装置105との間には新たな第1の通信路が確立され、通信制御装置105と映像配信サーバ102の間にも新たな第2の通信路が確立される。
接続情報管理テーブル500、RTSP通信利用ポート番号テーブル800、映像データ受信情報テーブル900といったコネクション内テーブルは、接続毎にワークメモリ上に確保される為、それぞれの接続による状態遷移や接続情報は別個に管理することができる。
また同様に、本実施の形態における通信制御装置105は、ホームネットワーク106に接続する1台のRTSPクライアント機器から複数の接続が行われた場合、それぞれの接続を別個に管理することができる。例えば、映像受信表示装置107上のアプリケーションAが映像再生中に、新たに映像受信表示装置107上のアプリケーションBが接続した場合、映像受信表示装置107上のアプリケーションBと通信制御装置105との間には新たな第1の通信路が確立され、通信制御装置105と映像配信サーバ102の間にも新たな第2の通信路が確立される。
すなわち、通信制御装置105は、ホームネットワーク106に接続する複数のRTSPクライアント機器(同一機器内で動作する別アプリケーションも含む)のQoSセッション制御を一元的に管理することができ、ホームネットワーク106に接続するQoSセッション制御機能を有しない全てのRTSPクライアント機器に対して、QoS保証型のコンテンツ配信サービスを提供することができる。
なお、本実施の形態の映像配信システムにおいて、通信制御装置105は、RTSP用QoSセッションおよび映像用QoSセッションの2種類のQoSセッションを管理するが、RTSPメッセージの送受信そのものは映像データの伝送に比べるとリアルタイム性が必要とされず、また伝送データ量も小さい。そのため、RTSP用QoSセッションを確立しない構成としても良い。この場合、RTSPメッセージの送受信はBE(Best Effort)通信で行われることになる。方法としては、上述した手順のうち、RTSP用QoSセッションに関する手順を省略することによって実現できる。
また、本実施の形態における映像配信システムでは、上述した通信制御方法を、通信制御装置105、すなわちネットワーク101とホームネットワーク106とのゲートウェイとなる機器上に実装して動作させる構成としたが、このようなゲートウェイ機器以外、例えば、デジタルテレビやSTB、HDDレコーダ等に実装しても良い。
ただし、この場合は、RTSPメッセージ取得方法として、上述の第1のRTSPメッセージ取得方法を用いる必要がある。すなわち、RTSPクライアント機器にRTSPプロキシ設定が可能であり、RTSPプロキシとして、上述した通信制御方法が実装されているデジタルテレビやSTB、HDDレコーダを指定することになる。
また、この場合でも、映像データの伝送の為のポートフォワード設定はゲートウェイ機器に行う必要があり、デジタルテレビやSTB、HDDレコーダ等から、ホームネットワーク106を介して、ゲートウェイ機器に対してポートフォワード設定を行う必要がある。このようなネットワークを介したポートフォワード設定は、例えばUPnP(Universal Plug and Play)等の技術を用いて実現することが可能である。
以上に説明したように、本実施の形態における通信制御装置105によれば、通信制御装置105でQoSセッション制御を一元的に管理・実行することにより、QoS制御手段を有しない映像受信表示装置107、108を用いて、通信制御装置105と映像配信サーバ102との間のQoS制御セッションの確立が可能であり、ユーザにとって映像受信表示装置107、108をQoS制御可能なものに置き換えるコストが不要となり、管理コストも小さい帯域保証型コンテンツ配信システムを実現することができる。
また、通信制御装置105を介して送受信されるRTSPメッセージから帯域制御のための情報を取得して生成することができるため、コンテンツ配信サービス提供者にとっては、コンテンツ毎の帯域情報を別途管理する等の仕組みが不要となり、帯域制御を用いたコンテンツ配信サービスを、帯域制御およびコンテンツ配信に必要な制御のみ行う映像配信サーバ102で行うことが可能となる。
また、通信制御装置105を介して送受信されるRTSPメッセージのみから、情報を取得してポートフォワードの設定を行うことにより、NAT越えを実現することが可能となる。
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
本発明は、通信制御装置ならびに通信制御方法に利用可能であり、特に、RTSP(Real Time Streaming Protocol)を用いて映像、音楽等のコンテンツの再生制御を行うストリーミング型コンテンツ配信サービスに用いられる通信制御装置ならびに通信制御方法に利用可能である。
本発明の一実施の形態である映像配信システムの構成の一例を示す図である。 本発明の一実施の形態における通信制御装置のハードウェア構成の一例を示す図である。 本発明の一実施の形態における映像受信表示装置のハードウェア構成の一例を示す図である。 本発明の一実施の形態における通信制御装置の機能構成の概要を示す図である。 本発明の一実施の形態における接続情報管理テーブルの構成とデータの例を示す図である。 本発明の一実施の形態における利用可能ポート番号テーブルの構成とデータの例を示す図である。 本発明の一実施の形態における利用ポート番号テーブルの構成とデータの例を示す図である。 本発明の一実施の形態におけるRTSP通信利用ポート番号テーブルの構成とデータの例を示す図である。 本発明の一実施の形態における映像データ受信情報テーブルの構成とデータの例を示す図である。 本発明の一実施の形態における通信路の確立の際の動作の流れを示すシーケンス図である。 本発明の一実施の形態における再生準備の際の動作の流れを示すシーケンス図である。 本発明の一実施の形態における映像再生の際の動作の流れを示すシーケンス図である。 本発明の一実施の形態における再生停止の際の動作の流れを示すシーケンス図である。 本発明の一実施の形態におけるRTSPコネクションの状態遷移図である。 本発明の一実施の形態におけるRTSPコネクションの状態遷移テーブルを示す図である。 本発明の一実施の形態における通信路確立の処理の流れを示すフローチャートである。 本発明の一実施の形態におけるRTSPリクエストの処理の流れを示すフローチャートである。 本発明の一実施の形態におけるSETUPリクエストのサブルーチンの処理の流れを示すフローチャートである。 本発明の一実施の形態における通信制御装置の利用ポート決定のサブルーチンの処理の流れを示すフローチャートである。 本発明の一実施の形態における映像配信サーバからのRTSPレスポンスの処理の流れを示すフローチャートである。 本発明の一実施の形態におけるDESCRIBEレスポンスのサブルーチンの処理の流れを示すフローチャートである。 本発明の一実施の形態におけるSETUPレスポンスのサブルーチンの処理の流れを示すフローチャートである。 本発明の一実施の形態におけるTEARDOWNレスポンスのサブルーチンの処理の流れを示すフローチャートである。 本発明の一実施の形態におけるタイムアウト処理の流れを示すフローチャートである。
符号の説明
101…ネットワーク、102…映像配信サーバ、103…帯域制御サーバ、104…ユーザ宅、105…通信制御装置、106…ホームネットワーク、107…映像受信表示装置、108…映像受信表示装置、
201…CPU、202…メインメモリ、203…EPROM、204…第1ネットワークI/F、205…第2ネットワークI/F、206…不揮発性記憶装置、207…バス、
301…CPU、302…メインメモリ、303…EPROM、304…出力装置、305…ネットワークI/F、306…不揮発性記憶装置、307…入力装置、308…映像再生装置、309…バス、
401…ルーティング部、402…メッセージ取得部、403…QoS制御情報生成部、404…QoS制御部、405…テーブル群、406…タイムアウト監視部、
500…接続情報管理テーブル、501…クライアントアドレス、502…サーバアドレス、503…タイムアウト、504…タイマー、505…状態、
600…利用可能ポート番号テーブル、601…利用可能ポート番号範囲、
700…利用ポート番号テーブル、701…利用ポート番号、
800…RTSP通信利用ポート番号テーブル、801…RTSP通信利用ポート番号、
900…映像データ受信情報テーブル、901…通信制御装置ポート、902…サーバポート、903…クライアントポート、904…帯域。

Claims (18)

  1. RTSPを用いてコンテンツを配信するストリーミング型コンテンツ配信サービスにおいて、ホームネットワークとQoS制御可能な外部ネットワークとの間に設置される通信制御装置であって、
    前記ホームネットワークに接続するRTSPクライアント機器と、前記QoS制御可能な外部ネットワークに接続するRTSPサーバ機器との間で該通信制御装置を経由して送受信されるRTSPメッセージを取得するメッセージ取得部と、
    前記メッセージ取得部にて取得した前記RTSPメッセージから、QoS制御に必要な情報である、前記コンテンツのビットレートと、前記RTSPクライアント機器のIPアドレスと、前記RTSPクライアント機器の映像データ受信ポートと、前記RTSPサーバ機器のIPアドレスと、前記RTSPサーバ機器の映像データ送信ポートとを取得するQoS制御情報生成部と、
    前記QoS制御情報生成部にて前記RTSPメッセージから取得したQoS制御に必要な情報を元に、前記RTSPサーバ機器との間で映像伝送用のQoSセッションを確立するQoS制御部とを有することを特徴とする通信制御装置。
  2. 請求項1記載の通信制御装置において、
    前記メッセージ取得部は、該通信制御装置におけるポートのリダイレクト設定によって、前記RTSPメッセージを取得することを特徴とする通信制御装置。
  3. 請求項1記載の通信制御装置において、
    前記QoS制御情報生成部は、前記コンテンツのビットレートを、前記RTSPメッセージの内のDESCRIBEレスポンスメッセージから取得することを特徴とする通信制御装置。
  4. 請求項1記載の通信制御装置において、
    前記QoS制御情報生成部は、前記RTSPクライアント機器の映像データ受信ポートを、前記RTSPメッセージの内のSETUPリクエストメッセージから取得することを特徴とする通信制御装置。
  5. 請求項1記載の通信制御装置において、
    前記QoS制御情報生成部は、前記RTSPサーバ機器の映像データ送信ポートを、前記RTSPメッセージの内のSETUPレスポンスメッセージから取得することを特徴とする通信制御装置。
  6. 請求項1記載の通信制御装置において、
    前記RTSPサーバ機器との間の前記RTSPメッセージの送受信を、RTSPメッセージ送受信用のQoSセッションを確立して行うことを特徴とする通信制御装置。
  7. 請求項1記載の通信制御装置において、
    前記RTSPクライアント機器と該通信制御装置との間、および該通信制御装置と前記RTSPサーバ機器との間の通信に関する接続情報と、
    前記RTSPクライアント機器と該通信制御装置との間、および該通信制御装置と前記RTSPサーバ機器との間のRTSPセッションに関する情報と、
    該通信制御装置と前記RTSPサーバ機器との間の映像伝送用のQoSセッションに関する情報とを元に、
    前記RTSPクライアント機器と前記RTSPサーバ機器との間の前記コンテンツの配信に係るRTSPコネクションについての状態を一意に決定して管理することを特徴とする通信制御装置。
  8. 請求項1記載の通信制御装置において、
    該通信制御装置と前記RTSPサーバ機器との間のRTSPセッションにおけるタイムアウト値に基づいて、前記RTSPクライアント機器と該通信制御装置との間のRTSPセッションのタイムアウトを監視するタイムアウト監視部を有し、
    タイムアウトを検知した場合は、前記RTSPクライアント機器と前記RTSPサーバ機器との間の前記コンテンツの配信に係るRTSPコネクションを終了することを特徴とする通信制御装置。
  9. 請求項1記載の通信制御装置において、
    前記QoS制御情報生成部にて取得した、前記RTSPクライアント機器のIPアドレスと、前記RTSPクライアント機器の映像データ受信ポートとを元に、
    前記RTSPサーバ機器から送信された前記コンテンツを前記RTSPクライアント機器へ伝送するためのポートフォワード設定を行うことを特徴とする通信制御装置。
  10. RTSPを用いてコンテンツを配信するストリーミング型コンテンツ配信サービスにおいて、ホームネットワークとQoS制御可能な外部ネットワークとの間に設置される通信制御装置における通信制御方法であって、
    前記通信制御装置は、
    前記ホームネットワークに接続するRTSPクライアント機器と、前記QoS制御可能な外部ネットワークに接続するRTSPサーバ機器との間で前記通信制御装置を経由して送受信されるRTSPメッセージを取得し、
    前記RTSPメッセージから、QoS制御に必要な情報である、前記コンテンツのビットレートと、前記RTSPクライアント機器のIPアドレスと、前記RTSPクライアント機器の映像データ受信ポートと、前記RTSPサーバ機器のIPアドレスと、前記RTSPサーバ機器の映像データ送信ポートとを取得し、
    前記RTSPメッセージから取得したQoS制御に必要な情報を元に、前記RTSPサーバ機器との間で映像伝送用のQoSセッションを確立することを特徴とする通信制御方法。
  11. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPメッセージを取得する際に、前記通信制御装置におけるポートのリダイレクト設定によって、前記RTSPメッセージを取得することを特徴とする通信制御方法。
  12. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPメッセージからQoS制御に必要な情報を取得する際に、前記コンテンツのビットレートを、前記RTSPメッセージの内のDESCRIBEレスポンスメッセージから取得することを特徴とする通信制御方法。
  13. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPメッセージからQoS制御に必要な情報を取得する際に、前記RTSPクライアント機器の映像データ受信ポートを、前記RTSPメッセージの内のSETUPリクエストメッセージから取得することを特徴とする通信制御方法。
  14. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPメッセージからQoS制御に必要な情報を取得する際に、前記RTSPサーバ機器の映像データ送信ポートを、前記RTSPメッセージの内のSETUPレスポンスメッセージから取得することを特徴とする通信制御方法。
  15. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPサーバ機器との間の前記RTSPメッセージの送受信を、RTSPメッセージ送受信用のQoSセッションを確立して行うことを特徴とする通信制御方法。
  16. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPクライアント機器と前記通信制御装置との間、および前記通信制御装置と前記RTSPサーバ機器との間の通信に関する接続情報と、
    前記RTSPクライアント機器と前記通信制御装置との間、および前記通信制御装置と前記RTSPサーバ機器との間のRTSPセッションに関する情報と、
    前記通信制御装置と前記RTSPサーバ機器との間の映像伝送用のQoSセッションに関する情報とを元に、
    前記RTSPクライアント機器と前記RTSPサーバ機器との間の前記コンテンツの配信に係るRTSPコネクションについての状態を一意に決定して管理することを特徴とする通信制御方法。
  17. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPサーバ機器との間のRTSPセッションにおけるタイムアウト値に基づいて、前記RTSPクライアント機器との間のRTSPセッションのタイムアウトを監視するタイムアウト監視部を有し、
    タイムアウトを検知した場合は、前記RTSPクライアント機器と前記RTSPサーバ機器との間の前記コンテンツの配信に係るRTSPコネクションを終了することを特徴とする通信制御方法。
  18. 請求項10記載の通信制御方法において、
    前記通信制御装置は、
    前記RTSPメッセージから取得した、前記RTSPクライアント機器のIPアドレスと、前記RTSPクライアント機器の映像データ受信ポートとを元に、
    前記RTSPサーバ機器から送信された前記コンテンツを前記RTSPクライアント機器へ伝送するためのポートフォワード設定を行うことを特徴とする通信制御方法。
JP2007291465A 2007-11-09 2007-11-09 通信制御装置ならびに通信制御方法 Pending JP2009118361A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007291465A JP2009118361A (ja) 2007-11-09 2007-11-09 通信制御装置ならびに通信制御方法
PCT/JP2008/070279 WO2009060932A1 (ja) 2007-11-09 2008-11-07 通信制御装置ならびに通信制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007291465A JP2009118361A (ja) 2007-11-09 2007-11-09 通信制御装置ならびに通信制御方法

Publications (1)

Publication Number Publication Date
JP2009118361A true JP2009118361A (ja) 2009-05-28

Family

ID=40784958

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007291465A Pending JP2009118361A (ja) 2007-11-09 2007-11-09 通信制御装置ならびに通信制御方法

Country Status (1)

Country Link
JP (1) JP2009118361A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011254180A (ja) * 2010-05-31 2011-12-15 Nippon Telegr & Teleph Corp <Ntt> 配信サーバ及び方法
JPWO2014192415A1 (ja) * 2013-05-31 2017-02-23 ソニー株式会社 情報処理装置および情報処理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006051594A1 (ja) * 2004-11-11 2006-05-18 Mitsubishi Denki Kabushiki Kaisha 通信ネットワークにおけるipパケット中継方法およびゲートウエイ装置
WO2007001846A1 (en) * 2005-06-24 2007-01-04 Lucent Technologies Inc. Method and apparatus for utilizing network services in a manner substantially transparent to service endpoints

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006051594A1 (ja) * 2004-11-11 2006-05-18 Mitsubishi Denki Kabushiki Kaisha 通信ネットワークにおけるipパケット中継方法およびゲートウエイ装置
WO2007001846A1 (en) * 2005-06-24 2007-01-04 Lucent Technologies Inc. Method and apparatus for utilizing network services in a manner substantially transparent to service endpoints

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011254180A (ja) * 2010-05-31 2011-12-15 Nippon Telegr & Teleph Corp <Ntt> 配信サーバ及び方法
JPWO2014192415A1 (ja) * 2013-05-31 2017-02-23 ソニー株式会社 情報処理装置および情報処理方法
US10198986B2 (en) 2013-05-31 2019-02-05 Sony Corporation Information processing device and information processing method

Similar Documents

Publication Publication Date Title
JP4794440B2 (ja) デジタルストリーミングフォーマット又はソースの高速な変化に対応する装置及び方法
US10171534B2 (en) Placeshifting of adaptive media streams
EP2936742B1 (en) Low-latency streaming
US8181209B2 (en) Methods and apparatus for providing video on demand and network PVR functions using IP streaming
RU2647654C2 (ru) Система и способ доставки аудиовизуального контента в клиентское устройство
CN112738140B (zh) 一种基于WebRTC的视频流传输方法、装置、存储介质和设备
US20030126277A1 (en) Apparatus and method for providing multimedia streaming service by using point-to-point connection
JP2018507660A (ja) デジタルコンテンツのアダプティブ仮想ブロードキャスティングのための方法およびシステム
US8601115B2 (en) Providing state information and remote command execution in a managed media device
JP2003521067A (ja) 起点サーバとクライアントとの間のメディアリソースリクエストおよび/または応答を書き換えるシステムおよび方法
CN109981560B (zh) 电视接收器和装置
KR20120114016A (ko) 사용자 컨텐츠를 외부 단말기에서 네트워크 적응적으로 스트리밍하는 방법 및 장치
EP4175259A1 (en) Method and apparatus for processing multicast signal
CN101483535A (zh) 内容分发方法及接收装置
WO2017128902A1 (zh) 一种基于most的多环网流媒体多播系统和方法
CN111107445B (zh) 一种媒体协议流优化方法及系统
KR20060123559A (ko) 콘텐트 분배를 위한 시스템, 수신기, 방법 및 프로그램
JP2009118361A (ja) 通信制御装置ならびに通信制御方法
Zeng et al. A dynamic live streaming service architecture integrated sensing and control
JP2010074653A (ja) 通信制御装置ならびに通信制御方法
KR20110000593A (ko) 멀티캐스트 스트림을 이용하여 주문형 스트리밍 콘텐츠의 제공을 촉진하기 위한 방법 및 장치
US20140181261A1 (en) Method and apparatus for providing efficient transmission of streaming video through a complex ip network
JP6465324B2 (ja) コンテンツを送信する方法及びデバイス
JP2009177811A (ja) 分割後のp2pモードでの繰延回復を目的としたコンテンツのライブ送信のための方法、並びに制御装置及び関連する設備
O’Neill Peer Assisted Multicast Streaming for On-Demand Applications

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20100126

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20101102

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110308

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110506

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120105