ストリームデータ配信システム及びその方法
【課題】配信装置と端末とのセッション確立までの手順を少なくする。
【解決手段】ストリームデータ配信システムは、配信装置、一時接続用サーバ、フォーマット変換サーバ、端末、及び、第三者呼制御を実行する3PCC装置を有する。3PCC装置は、端末からフォーマット情報を取得すると共に、端末と一時接続用サーバとの間のセッションを確立する。またデータ配信装置からデータのフォーマット情報を取得すると共に、配信装置と一時接続用サーバとの間のセッションを確立する。さらに、フォーマット変換サーバを選択し、配信装置と一時接続用サーバとの間のセッションを、配信装置と選択したフォーマット変換サーバとの間のセッションとして転送し、端末と一時接続用サーバとの間のセッションを、端末と選択したフォーマット変換サーバとの間のセッションとして転送する。
【解決手段】ストリームデータ配信システムは、配信装置、一時接続用サーバ、フォーマット変換サーバ、端末、及び、第三者呼制御を実行する3PCC装置を有する。3PCC装置は、端末からフォーマット情報を取得すると共に、端末と一時接続用サーバとの間のセッションを確立する。またデータ配信装置からデータのフォーマット情報を取得すると共に、配信装置と一時接続用サーバとの間のセッションを確立する。さらに、フォーマット変換サーバを選択し、配信装置と一時接続用サーバとの間のセッションを、配信装置と選択したフォーマット変換サーバとの間のセッションとして転送し、端末と一時接続用サーバとの間のセッションを、端末と選択したフォーマット変換サーバとの間のセッションとして転送する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストリームデータを配信する技術に関し、特にストリームデータをリアルタイムに処理して提供する技術に関する。
【背景技術】
【0002】
近年、IP(Internet Protocol)電話やテレビ会議システム、動画配信といった、ストリームデータを扱うサービスが普及してきている。
【0003】
ストリームデータを配信するにあたっては、配信元のデータをそのまま配信先へ提供するのではなく、データの送信途中において、通信経路上に配備された処理サーバを経由させ、処理サーバにデータをリアルタイムで処理・編集させながら配信する、ストリーム処理技術が利用されるようになってきている。
【0004】
ストリーム処理技術を利用することで、例えば、動画配信において、サーバ上に置かれた動画データを、ユーザの受信端末が利用可能なフォーマットに変換しながら提供することが可能になる。これにより、あらかじめサーバ上に、各種のフォーマットでエンコードされた同一内容の動画データを準備する必要がなくなり、そのために掛かるコストを削減することができる。
【0005】
また、ストリーム処理技術は、上述した動画や音声といったマルチメディアデータのストリーム配信だけではなく、例えば、XML(eXtensible Markup Language)などのフォーマットで記述された大量のテキストデータをリアルタイムに処理する必要がある、金融や決済などのWebサービスシステムにおいても利用されている。
【0006】
ストリーム処理技術を利用するには、意図した処理が行われるように、ストリームデータが適切なサーバを経由するようルーティングを行う必要がある。そのようなサービスレイヤでのルーティングを行う技術としては、例えば非特許文献1に記載の技術がある。非特許文献1では、標準プロトコルであるSIP(Session Initiation Protocol)を利用することで、SIPメッセージに含まれるSDP(Session Description Protocol)を解析して、両者が利用可能なメディアフォーマット情報を取得し、さらにSIPの第三者呼制御を利用して、必要なメディアフォーマット変換を施すためのルーティング処理を行う技術が開示されている。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】白田 純子, 森戸 貴, 本庄 勝, 森川 大補, 南 正輝, 「SIPの第三者呼制御を用いたサービス合成方式」, 電子情報通信学会 総合大会(2006年3月)
【発明の概要】
【発明が解決しようとする課題】
【0008】
近年のデータ配信サービスには、スタティックなデータをユーザへ配信するだけでなく、個々のユーザの趣向や課金ステータスといったユーザコンテキストに応じて、動的に情報を編集・加工することで、ユーザが享受するサービスに付加価値を与える動きが見られる。
【0009】
しかしながら、そういったユーザコンテキストに関する情報は、セッション情報を格納するSDP上には表れない。従って、非特許文献1に開示されている技術では、配信されるストリームデータのフォーマット情報と配信を受けるユーザ端末の処理可能なフォーマット情報を取得する段階を経て、配信サーバとユーザ端末とのセッションを確立する必要があり、セッション確立までの手順が多い。フォーマット変換以外の配信サービスに付加価値を与えるためのサービスルーティングを行うためにはさらに多くなる。
【課題を解決するための手段】
【0010】
上述の課題を解決するため、次のようなストリムデータ配信システムを構成する。ストリームデータ配信システムは、SIPを利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC(Third Party Call Control)装置と、3PCC装置に対して、ストリームデータ配信装置とユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有する。
【0011】
セッションの確立命令の受信した3PCC装置は、ユーザ端末からユーザ端末が利用可能な第1のフォーマット情報を取得すると共に、ユーザ端末と一時接続用サーバとの間のセッションを確立する。また3PCC装置は、ストリームデータ配信装置からストリームデータ配信装置が配信するストリームデータの第2のフォーマット情報を取得すると共に、ストリームデータ配信装置と一時接続用サーバとの間のセッションを確立する。さらに3PCC装置は、第2のフォーマットのストリームデータを第1のフォーマットへ変換するフォーマット変換サーバを複数のフォーマット変換サーバから選択し、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとして転送し、ユーザ端末と一時接続用サーバとの間のセッションを、ユーザ端末と選択したフォーマット変換サーバとの間のセッションとして転送する。
【0012】
望ましい他の態様のストリームデータ配信システムでは、サービスルーティング計算機は、ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、ストリームデータの識別子とユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、ストリームデータに対する配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有する。そしてサービスルーティング計算機は、ユーザ属性情報データベースのユーザ属性情報に基づいて配信ポリシーデータベースを参照して、ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定し、特定した処理サーバをストリームデータが経由するように、ストリームデータ配信装置と処理サーバとの間のセッション確立命令、及び、処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令を送信する。3PCC装置は、ストリームデータ配信装置と処理サーバとの間のセッション確立命令に応答して、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとしての転送に代えて、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と特定した処理サーバとの間のセッションとして転送する。また3PCC装置は、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッションを確立する。
【発明の効果】
【0013】
本発明によれば、配信サーバとユーザ端末とのセッションを確立するまでの手順を少なくできる。
【図面の簡単な説明】
【0014】
【図1】ストリームデータ配信サービスシステムの例である。
【図2】コンピュータのハードウェア構成の例示した図である。
【図3】ユーザ情報のデータ構造の例を示す図である。
【図4】ユーザ設定のデータ構造の例を示す図である。
【図5】配信データリストのデータ構造の例を示す図である。
【図6】配信ポリシーのデータ構造の例を示す図である。
【図7】処理サーバリストのデータ構造の例を示す図である。
【図8】フォーマット変換サーバリストのデータ構造の例を示す図である。
【図9】処理サーバロケーションのデータ構造の例を示す図である。
【図10A】ストリームデータ配信サービスシステムの動作を示すシーケンスの例である。
【図10B】ストリームデータ配信サービスシステムの動作を示すシーケンスの例である。
【図10C】ストリームデータ配信サービスシステムの動作を示すシーケンスの例である。
【図11】サービスルートを決定する処理フローの例を示す図である。
【発明を実施するための形態】
【0015】
本実施形態のストリムデータ配信システムは、SIPを利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC装置と、3PCC装置に対して、ストリームデータ配信装置とユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有する。
【0016】
セッションの確立命令の受信した3PCC装置は、ユーザ端末からユーザ端末が利用可能なフォーマット情報を取得すると共に、ユーザ端末と一時接続用サーバとの間のセッションを確立する。また3PCC装置は、ストリームデータ配信装置からストリームデータ配信装置が配信するストリームデータのフォーマット情報を取得すると共に、ストリームデータ配信装置と一時接続用サーバとの間のセッションを確立する。さらに3PCC装置は、ストリームデータのフォーマットをユーザ端末が利用可能なフォーマットへ変換するフォーマット変換サーバを複数のフォーマット変換サーバから選択する。さらに3PCC装置は、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとして転送し、ユーザ端末と一時接続用サーバとの間のセッションを、ユーザ端末と選択したフォーマット変換サーバとの間のセッションとして転送する。
【0017】
ストリームデータ配信において、フォーマット変換以外にユーザにサービスするために、サービスルーティング計算機は、ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、ストリームデータの識別子とユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、ストリームデータに対する配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有する。そしてサービスルーティング計算機は、ユーザ属性情報データベースのユーザ属性情報に基づいて配信ポリシーデータベースを参照して、ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定する。サービスルーティング計算機は、特定した処理サーバをストリームデータが経由するように、ストリームデータ配信装置と処理サーバとの間のセッション確立命令、及び、処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令を送信する。3PCC装置は、ストリームデータ配信装置と処理サーバとの間のセッション確立命令に応答して、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとしての転送に代えて、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と特定した処理サーバとの間のセッションとして転送する。また3PCC装置は、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッションを確立する。
【0018】
図1は、ストリームデータ配信サービスシステムの例である。図1において、ストリームデータ配信装置1030と、フォーマット変換サーバ1041と、投稿メッセージ付加サーバ1042と、広告処理サーバ1043と、ユーザSIP端末1020と、一時接続用サーバ1070と、3PCC(3rd Party Call Control)装置1060が、NGN(Next Generation Network)1090を介して接続されている。各装置の説明は後述する。
【0019】
3PCC装置1060は、さらにサービスルーティング計算機1000と接続されている。また、サービスルーティング計算機1000は、さらにポータルサーバ1110と接続されている。各装置の説明は後述する。
【0020】
ポータルサーバ1110は、さらにユーザWeb端末1021にインターネット1091を介して接続されている。各装置の説明については後述する。
【0021】
図1の各装置について説明する。サービスルーティング計算機1000は、ユーザSIP端末1020へ、ストリームデータ配信装置1030が保持するストリームデータを配信するための経路(ルート)を求め、求めたルートを3PCC装置1060へ送信する計算機である。
【0022】
サービスルーティング計算機1000は、登録ユーザの一覧および課金情報(ユーザ情報1011)と、ユーザの趣向情報(ユーザ設定1012)と、配信するストリームデータの一覧(配信データリスト1013)と、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報(配信ポリシー1014)と、処理サーバの一覧(処理サーバリスト1015)と、ストリームデータのフォーマット変換処理を行うサーバの一覧(フォーマット変換サーバリスト1016)と、ストリーム処理サーバのロケーション情報(処理サーバロケーション1017)とを格納するデータベースを備える。各データベースのデータ構造の詳細は後述する。
【0023】
サービスルーティング計算機1000は、3PCC装置1060から受信した、配信するストリームデータのフォーマット、及びユーザのSIP端末1020が利用可能なフォーマット、並びに、ユーザ情報1011、ユーザ設定1012、配信データリスト1013、処理サーバリスト1014、配信ポリシー情報1015、フォーマット変換サーバリスト1016、及び処理サーバロケーション1017の情報を用いて、配信するストリームデータを経由させるルート(サーバ列)を求める。ルートを求める処理の詳細については後述する。
【0024】
ユーザSIP端末1020、ユーザWeb端末1021は、ともにストリームデータの配信サービスを利用するユーザが利用する端末である。ユーザSIP端末1020は、SIPを利用してストリームデータを配信、または中継(経由)するサーバとセッションを確立し、ストリームデータを受信することができる。ユーザWeb端末1021は、インターネット1091を介してポータルサーバ1110に接続されており、HTTP(HyperText Transfer Protocol)を用いて、ポータルサーバ1110にストリームデータの配信要求を送信する。
【0025】
ストリームデータ配信装置1030は、ユーザへ配信するコンテンツのストリームデータをコンテンツデータベース1031に保持しており、SIPを用いたコンテンツ配信のリクエストメッセージを受信し、リクエストメッセージの内容に対応するコンテンツを配信する。リクエストメッセージの内容に対応するコンテンツは、例えば、コンテンツ(ストリームデータ)ごとの異なるSIP URI(Uniform Resource Identifier)により区別する。
【0026】
フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043は、いずれもストリーム処理を行うユーザ向けのサービスサーバ(処理サーバ)であり、ストリームデータの受信と、受信したストリームデータに対する所定の処理と、処理後のストリームデータの送信を行う。前述の概要では、フォーマット変換サーバ1041は処理サーバと異にするように説明したが、ストリーム処理を行うユーザ向けのサービスサーバとして、またストリームデータ配信装置1030からSIP端末1020へのストリームデータの経路に選択的に組み込まれる点で、同様に扱ってよい。
【0027】
受信したストリームデータに対する所定の処理とは、フォーマット変換サーバ1041については、配信するストリームデータのフォーマットを、ユーザのSIP端末1020が利用可能なデータフォーマットへ変換する処理である。
【0028】
受信したストリームデータに対する所定の処理とは、投稿メッセージ付加サーバ1042については、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報と、ユーザの趣向情報とに合わせてストリームデータを加工する処理であり、例えば、サービスを利用するユーザが投稿したコメントや関連するお勧め情報などのメッセージをストリームデータに重畳して表示するように付加する処理である。
【0029】
受信したストリームデータに対する所定の処理とは、広告処理サーバ1043については、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報と、ユーザの課金情報に合わせて、ストリームデータに対して、商業広告メッセージを重畳して表示するように付加する処理である。
【0030】
なお、上述した所定の処理の内容は一例であり、上述の内容に限るものではない。例えば、コンテンツを保護するために、時刻とユーザの識別ID(Identity)を透かし情報としてストリームデータに付加するストリーム処理などもある。また、処理の種別数についても、上述した3つに限るものではなく、配信するストリームデータのフォーマットと、ユーザのSIP端末1020が利用可能なデータフォーマットと、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報と、ユーザの趣向情報と、ユーザの課金情報とを選択的に用いて、ユーザ向けにサービスする処理であればよい。
【0031】
フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043のサービスサーバは、いずれも、SIPの第三者呼制御のメッセージシーケンスに従って、他のSIP UAS(User Agent Server)装置との間でSIP UAC(User Agent Client)としてセッションを確立し、また、同じくSIPの第三者呼制御のメッセージシーケンスに従って、他のSIP UAC装置との間でSIP UASとしてセッションを確立することができる。他のSIP UAS装置へSIP UACとしてセッションを確立し、確立したセッションを通じてストリームデータを受信する。また、他のSIP UAC装置へSIP UASとしてセッションを確立し、確立したセッションを通じて上述した所定の処理後のストリームデータを送信する。
【0032】
3PCC装置1060はSIPサーバであり、NGN1090に接続されたSIP UAの呼制御を行う。また、3PCC装置1060は、サービスルーティング計算機1000に対しては、Webのインタフェースを持つ。Webのインタフェースとしては、例えば、標準化インタフェースとして、SOAP(Simple Object Access Protocol)を用いる、Parlay Xが既に策定されている。本実施形態では、Parlay Xで規定されている、Third Party Call WebServiceを用いることで、後述するシステムの動作を実現する。
【0033】
一時接続用サーバ1070は、ユーザSIP端末1020に対してSIP UASとして機能し、ストリームデータ配信装置1030に対してはSIP UACとして機能する。一時接続用サーバ1070は、他のSIP UAからSDP(Session Description Protocol) offerを含むセッション確立要求(INVITEメッセージ)を受信した際、必ず、セッション確立可能を示すSDP answerを格納した200OKメッセージを返信する。セッション確立可能を示すSDP answerは、受信したSDP offerに含まれるメディア記述部の属性を一つも削除せず、そのままSDP answerに含めたものである。一時接続用サーバ1070の用途については、システムの動作例において後述する。
【0034】
ポータルサーバ1110は、インターネット1091を介してストリームデータ配信サービスのポータルとなるWebページを公開するサーバである。ポータルサーバ1110は、インターネット1091を介してストリームデータの配信要求を送信してくるユーザを認証し、そのユーザのID、そのユーザの課金情報、そのユーザが配信を要求したストリームデータの識別番号、及び、そのユーザがストリームデータを受信するためのSIP URIをサービスルーティング計算機1000へ送信する。
【0035】
ユーザが匿名のゲストユーザの場合は、ユーザIDとして“guest”を用いる。ユーザの課金情報は、例えば、匿名のゲストユーザであれば“0”、無料で発行されるユーザIDを保有しているユーザであれば“1”、サービスに課金することで発行されるユーザIDを保有しているユーザであれば“2”といったようなものである。
【0036】
図1に示すサービスルーティング計算機1000、ポータルサーバ1110などの各構成要素は、一般に計算機、サーバ、PCなどと呼ばれる汎用的なコンピュータである。図2は、それら各構成要素としてのコンピュータのハードウェア構成を例示した図である。これらのコンピュータ2000は、CPU2001と、メモリ2002と、インターネットやLANなどのネットワーク2010を介して他の装置と通信するための通信装置2004と、キーボードやマウス等の入力装置2005と、モニタやプリンタ等の出力装置2006と、読取装置2007と、ハードディスク等の外部記憶装置2003とが、インタフェース2008を介して接続されている。また、読取装置2007にはICカードやUSBメモリのような、可搬性を有する記憶媒体2009を接続することができる。
【0037】
サービスルーティング計算機1000や、ユーザSIP端末1020、ユーザWeb端末1021、ストリームデータ配信装置1030、フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043、3PCC装置1060、ポータルサーバ1110は、これらの機能を実現するプログラムがメモリ202上にロードされ、CPU201により実行されることにより具現化される。これらのプログラムは、あらかじめ、外部記憶装置2003に格納されていても良いし、必要なときに、読取装置2007や通信装置2004と、利用可能な媒体を介して、他の装置から外部記憶装置2003にロードされてもよい。したがって、3PCC装置1060、ストリームデータ配信装置1030、フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043などのサーバは、物理的に異なる必要はなく、少なくとも1台のコンピュータ2000上に論理的に構成されればよい。
【0038】
利用可能な媒体とは、たとえば、読取装置2007に着脱可能な記憶媒体2009、または通信装置2004に接続可能なネットワークまたはネットワークを伝搬する搬送波やディジタル信号を指す。そして、プログラムは一旦外部記憶装置2003に格納された後、そこからメモリ2002上にロードされてCPU2001に実行されてもよいし、あるいは外部記憶装置203に格納されることなく、直接メモリ2002上にロードされて、CPU2001に実行されてもよい。
【0039】
以下、図3〜図9を用いて、サービスルーティング計算機1000が備えるデータベースに格納される情報のデータ構造の例を順次説明する。
【0040】
図3は、ユーザ情報1011のデータ構造の例を示す図である。ユーザ情報1011には、ストリームデータ配信サービスを受けるために登録しているユーザのユーザID3001と、そのユーザの課金情報3002が対応付けて格納されている。ユーザID3001の1行目の、“guest”は匿名ユーザを示すユーザIDである。ユーザ課金情報3002の値は、“0”は匿名のゲストユーザであることを表し、“1”はストリームデータ配信サービスを無料で受けられる無料IDを登録しているユーザ(無料ユーザ)であることを表し、“2”はストリームデータ配信サービスを受けるために課金されるユーザ(課金ユーザ)であることを表す。
【0041】
図4は、ユーザ設定1012のデータ構造の例を示す図である。ユーザ設定1012は、ユーザIDを格納するユーザID3011、配信するストリームデータの識別情報を格納する配信データID3012、及び、ユーザID3011と配信データID3012との組合せに対応して、ユーザが投稿したメッセージをストリームデータに付加して配信するかどうか(“on”:付加する、“off”:付加しない)を格納するユーザ投稿メッセージ3013を持つ。ユーザ設定1012の変更用API(Application Program Interface)をユーザへ公開し、ユーザがAPIを介してユーザ設定1012へ情報を格納する。サービスルーティング計算機1000がユーザ設定1012を参照して、例えば、「ユーザ“usr0001”にデータ“data0001”を配信する際は、ユーザ投稿メッセージを付加して配信する」といったルートを決定することにより、サービス事業者はユーザの趣向に基づいたストリームデータ配信サービスを提供できる。
【0042】
なお、図4において、ユーザ設定1012には、付加する対象はユーザ投稿メッセージ3013の一つのみであるが、そのほかにも付加する対象情報がある場合は、その対象情報の種別数に応じてユーザ設定1012のカラムを増加させる。
【0043】
図5は、配信データリスト1013のデータ構造の例を示す図である。配信データリスト1013は、配信可能なストリームデータの一覧であり、ストリームデータのIDである配信データID3021と、そのストリームデータのロケーション3022とを対応付けて保持する。
【0044】
図6は、配信ポリシー1014のデータ構造の例を示す図である。配信ポリシー1014は、配信可能なストリームデータのIDである配信データID3031、ユーザ課金情報3032と、配信するストリームデータの品質(表示する画像品質)を制限するかどうか(“on”:制限する、“off”:制限しない)を表す品質制限3033、及び、配信するストリームデータに広告を付加して配信するかどうか(“on”:付加する、“off”:付加しない)を表す広告表示3034を対応付けて保持する。
【0045】
ユーザ課金情報3032が持つ意味は、ユーザ情報1011のユーザ課金情報3002の値が持つ意味と同じであり、すなわち、“0”は匿名のゲストユーザであることを表し、“1”は無料IDを登録しているユーザであることを表し、“2”は課金しているユーザであることを表す。サービスルーティング計算機1000が配信ポリシー1014を参照して、例えば、「データ“data0001”を、匿名のゲストユーザに配信する際は、品質制限し、かつ、広告を付加する」といったルートを決定することにより、サービス事業者が設定するポリシーに応じたストリームデータ配信サービスを提供できる。
【0046】
図7は、処理サーバリスト1015のデータ構造の例を示す図である。処理サーバリスト1015は処理サーバの一覧であり、処理内容3041と、配信データID3042と、処理内容3041の処理を実行するサーバの識別名である処理サーバ識別名3043とを対応付けて保持する。サービスルーティング計算機1000が処理サーバリスト1015を参照して、例えば、「データ“data0001”にユーザ投稿メッセージを付加するサーバは、“msg0001”である」といった、処理内容を処理サーバの識別名へマッピングする。
【0047】
図8は、フォーマット変換サーバリスト1016のデータ構造の例を示す図である。フォーマット変換サーバリスト1016は、フォーマット変換前のデータフォーマットの種類を示す変換前フォーマット3051と、フォーマット変換後のデータフォーマットの種類を示す変換後フォーマット3052と、変換前フォーマット3051のデータを変換後フォーマット3052のデータへ変換する処理を実行する処理サーバの識別名3053を対応付けて保持する。サービスルーティング計算機1000は、フォーマット変換サーバリスト1016を参照して、例えば、「mpeg4でエンコードされたストリームデータをh.263へ変換する処理サーバは、識別名“fmt0001”の処理サーバである」といった情報を取得する。
【0048】
図9は、処理サーバロケーション1017のデータ構造の例を示す図である。処理サーバロケーション1017は、処理サーバのロケーション情報(アドレス)を保持する。処理サーバの処理サーバ識別名3061とそのロケーション3062を対応付けて保持する。また、処理サーバロケーション1017は、一時接続用サーバ1070のロケーションを、処理サーバ識別名3061の値“temp”に対応付けて保持する。具体的な例として、処理サーバロケーション1017の1行目は、「一時接続用サーバ1070のロケーションは“sip:tmp@tmpexample.com”である」ことを表している。一時接続用サーバ1070については後述する。
【0049】
ストリームデータ配信サービスシステムの概略動作の一例を説明する。サービス事業者は、ストリームデータをストリームデータ配信装置1030を用いてNGN1090を介して配信する。ストリームデータの配信リクエストを受け付けるためのポータルサイトをポータルサーバ1110を用いてインターネット1091上に公開している。
【0050】
また、サービス事業者は、ストリームデータの配信時のポリシーとして、「配信データID“data0001”を、課金ユーザへ配信する際は、品質制限せず、広告も付加しない」という内容の配信ポリシーを設定している。具体的には、図6の配信ポリシー1014の3行目が、上述したポリシーの内容に対応する。
【0051】
ストリームデータ配信サービスを受けるためにユーザ登録している課金ユーザ(ユーザID“usr0001”)が、サービス事業者が管理するサービスルーティング計算機1000のユーザ設定1012へ、「配信データ“data0001”を受信する際は、ユーザ投稿メッセージを付加して受信する」という内容の、自らの趣向情報を登録している。具体的には、図4のユーザ設定1012の1行目が、上述した趣向情報の内容に対応する。
【0052】
ユーザ“usr0001”は、ユーザWeb端末1021を用いて、ポータルサーバ1110へアクセスして、自らのID“usr0001”を用いてストリームデータ配信サービスへログインし、受信したいストリームデータの識別名とストリームデータを受信するユーザSIP端末1020のSIP URIとを送信する。ユーザSIP端末1020が利用可能なストリームデータのフォーマットはh.263形式であり、ストリームデータ配信装置1030のコンテンツデータベース1031に置かれた配信データID“data0001”のストリームデータのフォーマットはmpeg4形式である。
【0053】
ユーザ“usr0001”は、サービス事業者のポリシー(図6)と、自らが設定した趣向(図4)と、ユーザSIP端末1020が利用可能なフォーマットとに応じて処理されたストリームデータを受信する。具体的には、ユーザ“usr0001”は、品質制限と広告表示がなく、ユーザ投稿メッセージが付加され、h.263形式に変換された“data0001”のストリームデータを、ユーザSIP端末1020で受信する。
【0054】
以上のような、ストリームデータ配信サービスシステムの動作を、図10A〜図10Cに示すシーケンスに従って説明する。
【0055】
シーケンス番号4001(認証):
ユーザは、ユーザWeb端末1021からポータルサーバ1110へアクセスし、ユーザID“usr0001”を送信して、ユーザ認証を受ける。ユーザ認証は、例えば、Webで標準的に用いられるHTTPダイジェスト認証などによる。
【0056】
シーケンス番号4002(リクエスト):
ユーザWeb端末1021は、ポータルサーバ1110へ、認証されたユーザID“usr0001”と、受信したいストリームデータの識別名(配信データID)としての“data0001”と、ストリームデータを受信するユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”とをHTTPのリクエストメソッドを用いて送信する。
【0057】
シーケンス番号4003(リクエスト):
ポータルサーバ1110は、サービスルーティング計算機1000へ、受信した、ユーザID“usr0001”と、配信データID“data0001”と、ユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”と、をHTTPのリクエストメソッドを用いて送信する。
【0058】
シーケンス番号4004(ロケーション解決):
サービスルーティング計算機1000は、配信データリスト1013の、配信データID3021が“data0001”である行を参照して、配信データのロケーション“sip:data1@server1example.com”を取得する。サービスルーティング計算機1000は、処理サーバロケーション1017の、処理サーバ識別名3061の値が“temp”である行を参照して、一時接続用サーバ1070のロケーション“sip:tmp@tmpexample.com”を取得する。
【0059】
シーケンス番号4005(3PCC(接続)命令):
シーケンス番号4005(3PCC(接続)命令)〜4010(SDP情報通知)は、ユーザSIP端末1020と一時接続用サーバ1070との間にセッションを確立させ、サービスルーティング計算機1000に、ユーザSIP端末1020が利用可能なフォーマットを取得させるための処理である。
【0060】
サービスルーティング計算機1000は、3PCC装置1060へ、ユーザSIP端末1020と一時接続用サーバ1070へセッション確立命令(makeCallSessionのリクエスト)を送信する。makeCallSessionのリクエストの引数は、ユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”と、一時接続用サーバ1070のSIP URI“sip:tmp@tmpexample.com”である。
【0061】
シーケンス番号4006(INVITE、200OK):
シーケンス番号4006(INVITE、200OK)〜シーケンス番号4008(セッション確立)までの処理は、RFC3725(“Best Current Practices for Third Party Call Control in the Session Initiation Protocol”、http://www.rfc-editor.org/rfc/rfc3725.txt)などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0062】
3PCC装置1060は、ユーザSIP端末1020へ、SDPが空のINVITEメッセージを送信する。ユーザSIP端末1020は、SDPのoffer/answerモデルの動作に従い、3PCC装置1060へ、SDPをボディ部に格納する200OKメッセージを返信する(SDP offer)。SDPのメディア記述部には、h.263形式が利用可能であることを示す情報が記述されている。これにより、3PCC装置1060は、ユーザSIP端末1020が利用可能なフォーマットを取得する。
【0063】
シーケンス番号4007(INVITE、200OK、ACK):
3PCC装置1060は、一時接続用サーバ1070へ、ユーザSIP端末1020から受信したSDPをSDP offerとしてボディ部に含むINVITEメッセージを送信する。一時接続用サーバ1070は、3PCC装置1060へ、200OKメッセージを返信する。200OKメッセージのボディ部には、接続の確立が可能であることを示すSDPが格納されている(SDP answer)。一時接続用サーバ1070は、3PCC装置1060へ、ACKメッセージを送信する。
【0064】
シーケンス番号4008(セッション確立):
3PCC装置1060は、ユーザSIP端末1020へ、ACKメッセージを送信する。ACKメッセージのボディ部には、一時接続用サーバ1070から受信したSDP answerを格納している。
【0065】
上述した、シーケンス番号4006(INVITE、200OK)、シーケンス番号4007(INVITE、200OK、ACK)のシーケンスにより、ユーザSIP端末1020と一時接続用サーバ1070は接続を確立する。
【0066】
シーケンス番号4009(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4005(3PCC(接続)命令)におけるmakeCallSessionのリクエストに対するレスポンス(シーケンス番号4008(セッション確立)において確立したセッションのセッション番号)を送信する。
【0067】
シーケンス番号4010(SDP情報通知):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4006(INVITE、200OK)において取得したSDPを、SOAP/HTTPのメッセージングを用いて送信する。
【0068】
以上のシーケンス番号4005(3PCC(接続)命令)から4010(SDP情報通知)までの処理により、サービスルーティング計算機1000は、ユーザSIP端末1020が利用可能なフォーマットを取得する。
【0069】
ただし、NGN1090が、SDPが空のINVITEメッセージの送信を許可しない仕様のNGNの場合、上述したシーケンス番号4005(3PCC(接続)命令)から4010(SDP情報通知)までの処理を実行できないため、ユーザSIP端末1020が利用可能なフォーマットを取得できない。この場合、例えば、シーケンス番号4002(リクエスト)において、リクエストメッセージにユーザSIP端末1020が利用可能なフォーマットを含めるか、あるいは、ユーザ設定1012にユーザSIP端末1020が利用可能なフォーマットをあらかじめユーザが登録しておき、シーケンス番号4004(ロケーション解決)時に、サービスルーティング計算機1000がユーザ設定1012を参照する等の方法を用いることで、ユーザSIP端末1020が利用可能なフォーマットを取得する。
【0070】
シーケンス番号4011(3PCC(接続)命令):
シーケンス番号4011(3PCC(接続)命令)〜4016(SDP情報通知)は、ストリームデータ配信装置1030と一時接続用サーバ1070の間にセッションを確立させ、サービスルーティング計算機1000に、ストリームデータ配信装置1030が配信するストリームデータのフォーマットを取得させるための処理である。
【0071】
サービスルーティング計算機1000は、3PCC装置1060へ、ストリームデータ配信装置1030と一時接続用サーバ1070間のセッション確立命令(Parlay Xのインタフェースを用いる場合、例えば、makeCallSessionのリクエスト)を送信する。セッション確立命令の引数は、ストリームデータ配信装置1030が配信するデータのロケーション“sip:data0001@server1example.ne.jp”と、一時接続用サーバ1070のSIP URI“sip:tmp@tmpexample.com”である。
【0072】
シーケンス番号4012(INVITE、200OK):
シーケンス番号4012(INVITE、200OK)からシーケンス番号4014(セッション確立)までの処理は、RFC3725などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0073】
3PCC装置1060は、ストリームデータ配信装置1030へ、SDPが空のINVITEメッセージを送信する。ストリームデータ配信装置1030は、SDPのoffer/answerモデルの動作に従い、3PCC装置1060へ、SDPをボディ部に格納する200OKメッセージを返信する(SDP offer)。SDPのメディア記述部には、データ“data1”のフォーマット形式であるmpeg4が利用可能であることを示す情報が記述されている。これにより、3PCC装置1060は、配信データ“data1”のフォーマットを取得する。
【0074】
シーケンス番号4013(INVITE、200OK、ACK):
3PCC装置1060は、一時接続用サーバ1070へ、シーケンス番号4012(INVITE、200OK)においてストリームデータ配信装置1030から受信したSDPをSDP offerとしてボディ部に含むINVITEメッセージを送信する。一時接続用サーバ1070は、3PCC装置1060へ、200OKメッセージを返信する。200OKメッセージのボディ部には、接続の確立が可能であることを示すSDPが格納されている(SDP answer)。一時接続用サーバ1070は、3PCC装置1060へ、ACKメッセージを送信する。
【0075】
シーケンス番号4014(セッション確立):
3PCC装置1060は、ストリームデータ配信装置1030へ、ACKメッセージを送信する。ACKメッセージのボディ部には、シーケンス番号4013(INVITE、200OK、ACK)において一時接続用サーバ1070から受信したSDPanswerを格納している。
【0076】
シーケンス番号4012(INVITE、200OK)、シーケンス番号4013(INVITE、200OK、ACK)のシーケンスにより、ストリームデータ配信装置1030と一時接続用サーバ1070は接続を確立する
シーケンス番号4015(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4011(3PCC(接続)命令)における接続命令に対するレスポンス(シーケンス番号4014(セッション確立)において確立したセッションのセッション番号)を送信する。
【0077】
シーケンス番号4016(SDP情報通知):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4012(INVITE、200OK)において取得したSDPを、SOAP/HTTPのメッセージングを用いて送信する。
【0078】
上述した、シーケンス番号4011(3PCC(接続)命令)から4016(SDP情報通知)までの処理により、サービスルーティング計算機1000は、ストリームデータ配信装置1030が配信するストリームデータのフォーマットを取得する。
【0079】
ただし、NGN1090が、SDPが空のINVITEメッセージの送信を許可しない仕様のNGNの場合、上述したシーケンス番号4011(3PCC(接続)命令)から4016(SDP情報通知)までの処理を実行できないため、ストリームデータ配信装置1030が配信するストリームデータのフォーマットを取得できない。この場合、例えば、配信データリスト1013に各ストリームデータのフォーマットをあらかじ登録しておき、シーケンス番号4004(ロケーション解決)時に、サービスルーティング計算機1000が配信データリスト1013を参照する等の方法を用いることで、配信するストリームデータのフォーマットを取得する。
【0080】
シーケンス番号4017(ルート決定処理):
ユーザへ、サービス事業者のポリシーと、ユーザ自身が設定した趣向と、ユーザのSIP端末が利用可能なフォーマットと、ユーザへ配信するストリームデータのフォーマットと、に応じてストリームデータを処理し、ユーザへ提供するために必要となるサービスルートを求める。本処理の詳細は後述する。
【0081】
本処理により、
・ストリームデータ配信装置1030と広告処理サーバ1043の間、
・広告処理サーバ1043と投稿メッセージ付加サーバ1042の間、
・投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041の間、
・フォーマット変換サーバ1041とユーザSIP端末1020の間
にセッションを確立するという結果と、
・広告処理サーバ1043のSIP URI“sip:adv0001@advexample.com”、
・投稿メッセージ付加サーバ1042のSIP URI“sip:msg0001@msgexample.com”、
・フォーマット変換サーバ1041のSIP URI“sip:fmt0001@fmt1example.com”、
とを得る。
【0082】
シーケンス番号4018(3PCC(転送)命令)からシーケンス番号4039(リクエスト応答)までは、求めたサービスルートに対応してサービスルーティング(ユーザのSIP端末1020へ配信するストリームデータを経由させるサーバ列の各サーバ間にセッションを確立)するための処理である。
【0083】
シーケンス番号4018(3PCC(転送)命令):
シーケンス番号4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)は、すでに確立しているストリームデータ配信装置1030と一時接続用サーバ1070との間のセッションを転送し、ストリームデータ配信装置1030と広告処理サーバ1043間のセッションを確立するための処理である。
【0084】
なお、後述する処理では転送命令(REFERメッセージ)を用いるが、NGN1090がREFERメッセージの送信を許可しない仕様のNGNの場合、後述するシーケンス番号4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理を実行できない。この場合、例えば、シーケンス番号4018の処理において、3PCC(転送)命令の代わりに、一時接続用サーバ1070と広告処理サーバ1043との間のセッション確立命令(PCC(接続)命令)を送信して両者にセッションを確立させ、ストリームデータ配信装置1030から一時接続用サーバ1070のセッションと、一時接続用サーバ1070から広告処理サーバ1043へのセッションの2つのセッションを繋げて利用することで、後述する、転送命令によってストリームデータ配信装置1030と広告処理サーバ1043間のセッションを確立する場合と同様の結果を得ることができる。
【0085】
シーケンス番号4018(3PCC(転送)命令)では、サービスルーティング計算機1000は、3PCC装置1060へ、ストリームデータ配信装置1030に対する転送命令(Parlay Xのインタフェースを用いる場合、例えば、transferCallParticipantのリクエスト)を送信する。転送命令の引数は、シーケンス番号4015(3PCC(接続)命令応答)で取得したセッション番号と、ストリームデータ配信装置1030が配信するデータのロケーション“sip:data1@server1example.ne.jp”と、転送先である広告処理サーバ1043のSIP URI“sip:adv0001@advexample.com”である(上述した、Parlay XのtransferCallParticipantのリクエストを用いる場合、転送先である広告処理サーバ1043のSIP URIは引数のdestinationCallSessionIdentifire部分にstring型として格納し、リクエストを受信した3PCC装置1060がそれを適切に解釈(すなわち、転送先のSIP URIとして処理)することで後述の処理を実現する)。
【0086】
シーケンス番号4019(REFER、200OK):
3PCC装置1060は、ストリームデータ配信装置1030へ、広告処理サーバ1043への転送命令(REFERメッセージ)を送信する。REFERメッセージでは、シーケンス番号4018(3PCC(転送)命令)において受信した両者のSIP URIを利用する。ストリームデータ配信装置1030は、3PCC装置1060へ、受信したREFERメッセージへの応答として、200OKメッセージを送信する。
【0087】
シーケンス番号4020(INVITE、200OK):
3PCC装置1060は、広告処理サーバ1043へ、ストリームデータ配信装置1030とのセッション確立のためのINVITEメッセージを送信する。広告処理サーバ1043は、3PCC装置1060へ、受信したINVITEメッセージへの応答として200OKメッセージを返信する。
【0088】
シーケンス番号4021(セッション確立):
3PCC装置1060は、広告処理サーバ1043へ、ACKメッセージを送信する。
【0089】
上述した、シーケンス番号4019(REFER、200OK)、シーケンス番号4020(INVITE、200OK)のシーケンスにより、ストリームデータ配信装置1030の接続先を広告処理サーバ1043へ変更(セッションを転送)する。
【0090】
シーケンス番号4022(3PCC(転送)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4018(3PCC(転送)命令)への応答を返す(Parlay XのtransferCallParticipantを用いる場合、レスポンスはvoidであるため、応答メッセージは必要ない)。
【0091】
シーケンス番号4023(3PCC(接続)命令):
シーケンス番号4023(3PCC(接続)命令)〜シーケンス番号4027(3PCC(接続)命令応答)は、広告処理サーバ1043と投稿メッセージ付加サーバ1042の間に接続を確立させる処理である。
【0092】
サービスルーティング計算機1000は、3PCC装置1060へ、広告処理サーバ1043と投稿メッセージ付加サーバ1042間のセッション確立命令を送信する。セッション確立命令の引数は、広告処理サーバ1043のSIP URI“sip:adv0001@advexample.ne.jp”と、投稿メッセージ付加サーバ1042のSIP URI“sip:msg0001@msgexample.com”である。
【0093】
シーケンス番号4024(INVITE、200OK):
シーケンス番号4024(INVITE、200OK)からシーケンス番号4026(セッション確立)までの処理は、RFC3725などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0094】
3PCC装置1060は、広告処理サーバ1043へ、INVITEメッセージを送信する。広告処理サーバ1043は、3PCC装置1060へ、200OKメッセージを返信する
シーケンス番号4025(INVITE、200OK、ACK):
3PCC装置1060は、投稿メッセージ付加サーバ1042へ、INVITEメッセージを送信する。投稿メッセージ付加サーバ1042は、3PCC装置1060へ、200OKメッセージを返信する。一時接続用サーバ1070は、3PCC装置1060へ、ACKメッセージを送信する。
【0095】
シーケンス番号4026(セッション確立):
3PCC装置1060は、広告処理サーバ1043へ、ACKメッセージを送信する。
【0096】
上述した、シーケンス番号4024(INVITE、200OK)、シーケンス番号4025(INVITE、200OK、ACK)のシーケンスにより、広告処理サーバ1043と投稿メッセージ付加サーバ1042は接続を確立する。
【0097】
シーケンス番号4027(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4022(3PCC(接続)命令)における接続命令に対するレスポンス(シーケンス番号4026(セッション確立)において確立したセッションのセッション番号)を送信する。
【0098】
シーケンス番号4028(3PCC(接続)命令):
シーケンス番号4028(3PCC(接続)命令)〜シーケンス番号40232(3PCC(接続)命令応答)は、投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041の間に接続を確立させる処理である。
【0099】
サービスルーティング計算機1000は、3PCC装置1060へ、投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041との間のセッション確立命令を送信する。セッション確立命令の引数は、投稿メッセージ付加サーバ1042のSIP URI“sip:msg0001@msgexample.com“と、フォーマット変換サーバ1041のSIP URI“sip:fmt0001@fmt1.example.com“とである。
【0100】
シーケンス番号4029(INVITE、200OK):
シーケンス番号4029(INVITE、200OK)からシーケンス番号4031(セッション確立)までの処理は、RFC3725などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0101】
3PCC装置1060は、投稿メッセージ付加サーバ1042へ、INVITEメッセージを送信する。
【0102】
次に、投稿メッセージ付加サーバ1042は、3PCC装置1060へ、200OKメッセージを返信する
シーケンス番号4030(INVITE、200OK、ACK):
3PCC装置1060は、フォーマット変換サーバ1041へ、INVITEメッセージを送信する。次に、フォーマット変換サーバ1041は、3PCC装置1060へ、200OKメッセージを返信する。次に、フォーマット変換サーバ1041は、3PCC装置1060へ、ACKメッセージを送信する。
【0103】
シーケンス番号4031(セッション確立):
3PCC装置1060は、投稿メッセージ付加サーバ1042へ、ACKメッセージを送信する。
【0104】
上述した、シーケンス番号4029(INVITE、200OK)、シーケンス番号4030(INVITE、200OK、ACK)のシーケンスにより、投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041は接続を確立する。
【0105】
シーケンス番号4032(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4022(3PCC(接続)命令)における接続命令に対するレスポンス(シーケンス番号4026(セッション確立)において確立したセッションのセッション番号)を送信する。
【0106】
シーケンス番号4033(3PCC(転送)命令):
シーケンス番号4033(3PCC(転送)命令)からシーケンス番号4037(3PCC(転送)命令応答)までは、一時接続用サーバ1070とセッションを確立しているユーザSIP端末1020を、フォーマット変換サーバ1041へ転送するための処理である。
【0107】
なお、シーケンス処理4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理と同じく、後述する処理では転送命令(REFERメッセージ)を用いるが、NGN1090がREFERメッセージの送信を許可しない仕様のNGNの場合は、後述するシーケンス番号4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理を実行できない。
【0108】
この場合も、シーケンス処理4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理の場合と同様に、例えば、シーケンス番号4033の処理において、3PCC(転送)命令の代わりに、一時接続用サーバ1070とフォーマット変換サーバ1041との間のセッション確立命令(PCC(接続)命令)を送信して両者にセッションを確立させ、フォーマット変換サーバ1041から一時接続用サーバ1070へのセッションと、一時接続用サーバ1070からユーザSIP端末1020へのセッションの2つのセッションを繋げて利用することで、後述する、転送命令によってフォーマット変換サーバ1070とユーザSIP端末1020間のセッションを確立する場合と同様の結果を得ることができる。
【0109】
シーケンス番号4033(3PCC(転送)命令)では、サービスルーティング計算機1000は、3PCC装置1060へ、ユーザSIP端末1020に対する転送命令(Parlay Xのインタフェースを用いる場合、例えば、transferCallParticipantのリクエスト)を送信する。転送命令の引数は、シーケンス番号4009(3PCC(接続)命令応答)で取得したセッション番号と、ユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”と、転送先であるフォーマット変換サーバ1041のSIP URI“sip:fmt0001@fmt1example.com”である。
【0110】
シーケンス番号4034(REFER、200OK):
3PCC装置1060は、ユーザSIP端末1020へ、フォーマット変換サーバ1041への転送命令(REFERメッセージ)を送信する。REFERメッセージでは、シーケンス番号4033(3PCC(転送)命令)において受信した両者のSIP URIを利用する。ユーザSIP端末1020は、3PCC装置1060へ、受信したREFERメッセージへの応答として、200OKメッセージを送信する。
【0111】
シーケンス番号4035(INVITE、200OK):
3PCC装置1060は、フォーマット変換サーバ1041へ、ユーザSIP端末1020とのセッション確立のためのINVITEメッセージを送信する。フォーマット変換サーバ1041は、3PCC装置1060へ、受信したINVITEメッセージへの応答として200OKメッセージを返信する。
【0112】
シーケンス番号4036(セッション確立):
3PCC装置1060は、フォーマット変換サーバ1041へ、ACKメッセージを送信する。
【0113】
上述した、シーケンス番号4034(REFER、200OK)、シーケンス番号4035(INVITE、200OK)のシーケンスにより、ユーザSIP端末1020の接続先をフォーマット変換サーバ1041へ変更(セッションを転送)する。
【0114】
シーケンス番号4037(3PCC(転送)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4033(3PCC(転送)命令)への応答を返す(Parlay XのtransferCallParticipantを用いる場合、レスポンスはvoidであるため、応答メッセージは必要ない)。
【0115】
上述した、シーケンス番号4018(3PCC(転送)命令)からシーケンス番号4037(3PCC(転送)命令応答)までの処理によって、シーケンス番号4017(ルート決定処理)によって得られたサービスルートのサービスルーティングが完了する。
【0116】
シーケンス番号4038(リクエスト応答):
サービスルーティング計算機1000は、ポータルサーバ1110へ、シーケンス番号4003(リクエスト)への応答として、正常にルーティングが終了したことを表すメッセージを送信する。
【0117】
シーケンス番号4039(リクエスト応答):
ポータルサーバ1110は、ユーザWeb端末1021へ、シーケンス番号4002(リクエスト)への応答として、正常にサービスのリクエストを受け付けたことをを表すメッセージを送信する。
【0118】
シーケンス番号4040(ストリームデータ):
シーケンス番号4040(ストリームデータ)〜シーケンス番号4046(ストリームデータ)の処理は、これまでに確立されたセッションを介してストリームデータを配信する処理である。
【0119】
シーケンス番号4040(ストリームデータ)では、ストリームデータ配信装置1030が、広告処理サーバ1043へ、シーケンス番号4021(セッション確立)によって確立されたセッションを介して、ストリームデータdata0001を送信する処理である。
【0120】
なお、本実施形態のシーケンスにおいてはシーケンス番号4040(ストリームデータ)はシーケンス番号4039(リクエスト応答)の終了後に開始しているが、実際にはシーケンス番号4039(リクエスト応答)の終了を待つ必要は無く、シーケンス番号4021(セッション確立)であればどのタイミングで開始してもよく、その場合、広告処理サーバ1043は、シーケンス番号4026(セッション確立)が終了するまでの間、シーケンス番号4040(ストリームデータ)において受信するデータを、キャッシュする。
【0121】
シーケンス番号4041(広告処理):
広告処理サーバ1043は、シーケンス番号4040(ストリームデータ)において受信したストリームデータに広告情報を付加する処理を行う。
【0122】
シーケンス番号4042(ストリームデータ):
広告処理サーバ1043は、投稿メッセージ付加サーバ1042へ、シーケンス番号4026(セッション確立)によって確立されたセッションを介して、シーケンス番号4041(広告処理)において処理したストリームデータを送信する。
【0123】
シーケンス番号4043(投稿メッセージ付加処理):
投稿メッセージ付加サーバ1042は、シーケンス番号4042(ストリームデータ)において受信したストリームデータにサービスのユーザが投稿した情報を付加する処理を行う。
【0124】
シーケンス番号4044(ストリームデータ):
投稿メッセージ付加サーバ1042は、フォーマット変換サーバ1041へ、シーケンス番号4031(セッション確立)によって確立されたセッションを介して、シーケンス番号4043(投稿メッセージ付加処理)において処理したストリームデータを送信する。
【0125】
シーケンス番号4045(フォーマット変換処理):
フォーマット変換サーバ1041は、シーケンス番号4042(ストリームデータ)において受信したストリームデータのフォーマットを、mpeg4からh.263に変換する処理を行う。
【0126】
シーケンス番号4046(ストリームデータ):
フォーマット変換サーバ1041は、ユーザSIP端末1020へ、シーケンス番号4036(セッション確立)によって確立されたセッションを介して、シーケンス番号4045(フォーマット変換処理)において処理したストリームデータを送信する。
【0127】
図11は、シーケンス番号4017(ルート決定処理)において、サービスルーティング計算機1000が行うサービスルートを決定する処理フローを示した図である。
【0128】
ステップ5001(ユーザ情報解決):
シーケンス番号4003(リクエスト)において受信したリクエストメッセージに含まれるユーザID5101を用いて、ユーザ情報1011を参照して、ユーザの課金情報3002を取得する。
【0129】
本実施形態の例示においては、ユーザID“usr0001”の課金情報は“1”、すなわち“無料ID登録ユーザ”であることが取得できる。
【0130】
ステップ5002(配信データ制約解決):
シーケンス番号4003(リクエスト)において受信したリクエストメッセージに含まれる配信データID5102と、ステップ5001(ユーザ情報解決)において取得したユーザの課金情報とを用いて、配信ポリシー1014を参照し、品質制限するか否かと広告表示するか否かに関する情報を取得する。取得した情報と配信データID5102とを用いて、処理サーバリスト1015を参照し、サービスルーティングで経由させる必要がある処理サーバの識別名を取得する。
【0131】
本実施形態の例示においては、配信データID5102は“data0001”、ユーザの課金情報は“1”、であることから、ストリームデータの配信の際に、品質制限せずに、広告表示するという配信ポリシーを取得でき、さらに、処理サーバリスト1015を参照し、経由させる必要がある処理サーバの識別名として“adv0001”を取得する。
【0132】
ステップ5003(ユーザ設定解決):
シーケンス番号4003(リクエスト)において受信したリクエストメッセージに含まれるユーザID5101と配信データID5102とを用いて、ユーザ設定1012を参照し、ユーザ投稿メッセージを付加するか否かに関する情報を取得する。取得した情報と配信データID5102とを用いて、処理サーバリスト1015を参照し、サービスルーティングで経由させる必要がある処理サーバの識別名を取得する。
【0133】
本実施形態の例示においては、ユーザID5101は“usr0001”、配信データID5102は“data0001”、であることから、ストリームデータの配信には、ユーザ投稿メッセージの付加を望んでいるというユーザの趣向情報を取得でき、さらに、処理サーバリスト1015を参照し、経由させる必要がある処理サーバの識別名として“msg0001”を取得する。
【0134】
ステップ5004(メディアフォーマット解決):
シーケンス番号4010(SDP情報通知)で取得したユーザSIP端末1020が利用可能なフォーマット5103と、シーケンス番号4016(SDP情報通知)で取得した配信するストリームデータのフォーマット5103とを用いて、フォーマット変換サーバリスト1016を参照し、配信するストリームデータのフォーマットをユーザSIP端末1020が利用可能なフォーマットへ変換するためのフォーマット変換サーバ1041の識別名を取得する。
【0135】
本実施形態の例示においては、配信するストリムデータ(配信データID5102が“data0001”)のフォーマットは“mpeg4”、ユーザSIP端末1020が利用可能なフォーマット形式は“h.263”であることから、フォーマット変換サーバ1041の識別名として“fmt0001”を取得する。
【0136】
ステップ5005(ルート情報生成):
上述した、ステップ5001(ユーザ情報解決)からステップ5004(メディアフォーマット解決)までの処理結果と、配信データリスト1013と、処理サーバロケーション1017とを用いることで、サービスルーティングの情報(ルート)を決定する。
【0137】
ただし、決定したルート上のサーバの接続順序は、本実施形態においては、スタティックに、ストリームデータ配信装置1030、広告処理サーバ1043、投稿メッセージ付加サーバ1042、品質制限処理サーバ、フォーマット変換サーバ1041、ユーザSIP端末1020の順で接続するものとする(経由させる必要がない種類のサーバは、それを飛ばして接続する)。
【0138】
したがって、本実施形態の例示においては、順に、「ストリームデータ配信装置1030と広告処理サーバ1043“adv0001”」、「広告処理サーバ1043“adv0001”と投稿メッセージ付加サーバ1042“msg0001”」、「投稿メッセージ付加サーバ1042“msg0001”とフォーマット変換サーバ1041“fmt0001“」、「フォーマット変換サーバ1041“fmt0001”とユーザSIP端末1020」を接続し、かつ、それぞれのロケーションは、「広告処理サーバ1043が“sip:adv0001@advexample.com”、投稿メッセージ付加サーバ1042が“sip:msg0001@msgexample.com”、
フォーマット変換サーバ1041が“sip:fmt0001@fmt1example.com”」であるという結果を得る。
【0139】
なお、上述した処理においては、必ずしもスタティックにルートの接続順序を決定する必要は無く、例えば、別途、処理サーバ間の依存関係、すなわち「どの処理サーバ識別名が行う処理はどの処理サーバ識別名が行う処理より先に処理を行う必要があるか」をマトリックスとしてデータベースに保持しておき、その依存関係を満足するよう接続順序を決定するといった方法を用いることも可能である。
【0140】
以上、本実施形態によれば、配信サーバとユーザ端末とのセッションを確立するまでの手順を少なくできる。
【0141】
また、データの配信ポリシーと、ユーザの趣向と、利用可能なフォーマット形式に応じて処理するためのサービスルートの決定とルーティングが実現でき、ユーザへ配信するデータに付加価値を与えることが可能となる。
【0142】
また、サービスを提供する事業者にとっては、ユーザへ提供するデータの内容に応じて効率的に商業広告をデータに付加することができるようになるなどの効果もある。
【0143】
また、例えば、さらに、ユーザIDやサービスの提供時刻をストリームデータへ透かしデータとして付加するストリームデータ処理サーバを、サービスルートに加えることにより、コンテンツ保護の効果を得ることもできる。
【0144】
また、本実施形態におけるストリームデータ配信システムサービスの構築に際しては、標準プロトコルであるSIPをそのまま利用でき、既存のSIPサーバ、SIPクライアントに手を加える必要が無いため、サービスルーティングのためのインタフェース部分の開発にかかるコストを低減できる効果もある。
【0145】
以上説明した実施形態は一例であり、本発明は上述の実施形態に限るものではない。
【符号の説明】
【0146】
1000:サービスルーティング計算機、1011:ユーザ情報のデータベース、1012:ユーザ設定のデータベース、1013:配信データリストのデータベース、1014:配信ポリシー情報のデータベース、1015:処理サーバリストのデータベース、1016:フォーマット変換サーバリストのデータベース、1017:処理サーバロケーションのデータベース、1020:ユーザSIP端末、1021:ユーザWeb端末、1030:ストリームデータ配信装置、1041:フォーマット変換サーバ、1042:投稿メッセージ付加サーバ、1043:広告処理サーバ、1060:3PCC装置、1070:一時接続用サーバ、1090:NGN、1091:インターネット、1110:ポータルサーバ。
【技術分野】
【0001】
本発明は、ストリームデータを配信する技術に関し、特にストリームデータをリアルタイムに処理して提供する技術に関する。
【背景技術】
【0002】
近年、IP(Internet Protocol)電話やテレビ会議システム、動画配信といった、ストリームデータを扱うサービスが普及してきている。
【0003】
ストリームデータを配信するにあたっては、配信元のデータをそのまま配信先へ提供するのではなく、データの送信途中において、通信経路上に配備された処理サーバを経由させ、処理サーバにデータをリアルタイムで処理・編集させながら配信する、ストリーム処理技術が利用されるようになってきている。
【0004】
ストリーム処理技術を利用することで、例えば、動画配信において、サーバ上に置かれた動画データを、ユーザの受信端末が利用可能なフォーマットに変換しながら提供することが可能になる。これにより、あらかじめサーバ上に、各種のフォーマットでエンコードされた同一内容の動画データを準備する必要がなくなり、そのために掛かるコストを削減することができる。
【0005】
また、ストリーム処理技術は、上述した動画や音声といったマルチメディアデータのストリーム配信だけではなく、例えば、XML(eXtensible Markup Language)などのフォーマットで記述された大量のテキストデータをリアルタイムに処理する必要がある、金融や決済などのWebサービスシステムにおいても利用されている。
【0006】
ストリーム処理技術を利用するには、意図した処理が行われるように、ストリームデータが適切なサーバを経由するようルーティングを行う必要がある。そのようなサービスレイヤでのルーティングを行う技術としては、例えば非特許文献1に記載の技術がある。非特許文献1では、標準プロトコルであるSIP(Session Initiation Protocol)を利用することで、SIPメッセージに含まれるSDP(Session Description Protocol)を解析して、両者が利用可能なメディアフォーマット情報を取得し、さらにSIPの第三者呼制御を利用して、必要なメディアフォーマット変換を施すためのルーティング処理を行う技術が開示されている。
【先行技術文献】
【非特許文献】
【0007】
【非特許文献1】白田 純子, 森戸 貴, 本庄 勝, 森川 大補, 南 正輝, 「SIPの第三者呼制御を用いたサービス合成方式」, 電子情報通信学会 総合大会(2006年3月)
【発明の概要】
【発明が解決しようとする課題】
【0008】
近年のデータ配信サービスには、スタティックなデータをユーザへ配信するだけでなく、個々のユーザの趣向や課金ステータスといったユーザコンテキストに応じて、動的に情報を編集・加工することで、ユーザが享受するサービスに付加価値を与える動きが見られる。
【0009】
しかしながら、そういったユーザコンテキストに関する情報は、セッション情報を格納するSDP上には表れない。従って、非特許文献1に開示されている技術では、配信されるストリームデータのフォーマット情報と配信を受けるユーザ端末の処理可能なフォーマット情報を取得する段階を経て、配信サーバとユーザ端末とのセッションを確立する必要があり、セッション確立までの手順が多い。フォーマット変換以外の配信サービスに付加価値を与えるためのサービスルーティングを行うためにはさらに多くなる。
【課題を解決するための手段】
【0010】
上述の課題を解決するため、次のようなストリムデータ配信システムを構成する。ストリームデータ配信システムは、SIPを利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC(Third Party Call Control)装置と、3PCC装置に対して、ストリームデータ配信装置とユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有する。
【0011】
セッションの確立命令の受信した3PCC装置は、ユーザ端末からユーザ端末が利用可能な第1のフォーマット情報を取得すると共に、ユーザ端末と一時接続用サーバとの間のセッションを確立する。また3PCC装置は、ストリームデータ配信装置からストリームデータ配信装置が配信するストリームデータの第2のフォーマット情報を取得すると共に、ストリームデータ配信装置と一時接続用サーバとの間のセッションを確立する。さらに3PCC装置は、第2のフォーマットのストリームデータを第1のフォーマットへ変換するフォーマット変換サーバを複数のフォーマット変換サーバから選択し、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとして転送し、ユーザ端末と一時接続用サーバとの間のセッションを、ユーザ端末と選択したフォーマット変換サーバとの間のセッションとして転送する。
【0012】
望ましい他の態様のストリームデータ配信システムでは、サービスルーティング計算機は、ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、ストリームデータの識別子とユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、ストリームデータに対する配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有する。そしてサービスルーティング計算機は、ユーザ属性情報データベースのユーザ属性情報に基づいて配信ポリシーデータベースを参照して、ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定し、特定した処理サーバをストリームデータが経由するように、ストリームデータ配信装置と処理サーバとの間のセッション確立命令、及び、処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令を送信する。3PCC装置は、ストリームデータ配信装置と処理サーバとの間のセッション確立命令に応答して、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとしての転送に代えて、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と特定した処理サーバとの間のセッションとして転送する。また3PCC装置は、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッションを確立する。
【発明の効果】
【0013】
本発明によれば、配信サーバとユーザ端末とのセッションを確立するまでの手順を少なくできる。
【図面の簡単な説明】
【0014】
【図1】ストリームデータ配信サービスシステムの例である。
【図2】コンピュータのハードウェア構成の例示した図である。
【図3】ユーザ情報のデータ構造の例を示す図である。
【図4】ユーザ設定のデータ構造の例を示す図である。
【図5】配信データリストのデータ構造の例を示す図である。
【図6】配信ポリシーのデータ構造の例を示す図である。
【図7】処理サーバリストのデータ構造の例を示す図である。
【図8】フォーマット変換サーバリストのデータ構造の例を示す図である。
【図9】処理サーバロケーションのデータ構造の例を示す図である。
【図10A】ストリームデータ配信サービスシステムの動作を示すシーケンスの例である。
【図10B】ストリームデータ配信サービスシステムの動作を示すシーケンスの例である。
【図10C】ストリームデータ配信サービスシステムの動作を示すシーケンスの例である。
【図11】サービスルートを決定する処理フローの例を示す図である。
【発明を実施するための形態】
【0015】
本実施形態のストリムデータ配信システムは、SIPを利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC装置と、3PCC装置に対して、ストリームデータ配信装置とユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有する。
【0016】
セッションの確立命令の受信した3PCC装置は、ユーザ端末からユーザ端末が利用可能なフォーマット情報を取得すると共に、ユーザ端末と一時接続用サーバとの間のセッションを確立する。また3PCC装置は、ストリームデータ配信装置からストリームデータ配信装置が配信するストリームデータのフォーマット情報を取得すると共に、ストリームデータ配信装置と一時接続用サーバとの間のセッションを確立する。さらに3PCC装置は、ストリームデータのフォーマットをユーザ端末が利用可能なフォーマットへ変換するフォーマット変換サーバを複数のフォーマット変換サーバから選択する。さらに3PCC装置は、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとして転送し、ユーザ端末と一時接続用サーバとの間のセッションを、ユーザ端末と選択したフォーマット変換サーバとの間のセッションとして転送する。
【0017】
ストリームデータ配信において、フォーマット変換以外にユーザにサービスするために、サービスルーティング計算機は、ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、ストリームデータの識別子とユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、ストリームデータに対する配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有する。そしてサービスルーティング計算機は、ユーザ属性情報データベースのユーザ属性情報に基づいて配信ポリシーデータベースを参照して、ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定する。サービスルーティング計算機は、特定した処理サーバをストリームデータが経由するように、ストリームデータ配信装置と処理サーバとの間のセッション確立命令、及び、処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令を送信する。3PCC装置は、ストリームデータ配信装置と処理サーバとの間のセッション確立命令に応答して、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と選択したフォーマット変換サーバとの間のセッションとしての転送に代えて、ストリームデータ配信装置と一時接続用サーバとの間のセッションを、ストリームデータ配信装置と特定した処理サーバとの間のセッションとして転送する。また3PCC装置は、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した処理サーバと選択したフォーマット変換サーバとの間のセッションセッションを確立する。
【0018】
図1は、ストリームデータ配信サービスシステムの例である。図1において、ストリームデータ配信装置1030と、フォーマット変換サーバ1041と、投稿メッセージ付加サーバ1042と、広告処理サーバ1043と、ユーザSIP端末1020と、一時接続用サーバ1070と、3PCC(3rd Party Call Control)装置1060が、NGN(Next Generation Network)1090を介して接続されている。各装置の説明は後述する。
【0019】
3PCC装置1060は、さらにサービスルーティング計算機1000と接続されている。また、サービスルーティング計算機1000は、さらにポータルサーバ1110と接続されている。各装置の説明は後述する。
【0020】
ポータルサーバ1110は、さらにユーザWeb端末1021にインターネット1091を介して接続されている。各装置の説明については後述する。
【0021】
図1の各装置について説明する。サービスルーティング計算機1000は、ユーザSIP端末1020へ、ストリームデータ配信装置1030が保持するストリームデータを配信するための経路(ルート)を求め、求めたルートを3PCC装置1060へ送信する計算機である。
【0022】
サービスルーティング計算機1000は、登録ユーザの一覧および課金情報(ユーザ情報1011)と、ユーザの趣向情報(ユーザ設定1012)と、配信するストリームデータの一覧(配信データリスト1013)と、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報(配信ポリシー1014)と、処理サーバの一覧(処理サーバリスト1015)と、ストリームデータのフォーマット変換処理を行うサーバの一覧(フォーマット変換サーバリスト1016)と、ストリーム処理サーバのロケーション情報(処理サーバロケーション1017)とを格納するデータベースを備える。各データベースのデータ構造の詳細は後述する。
【0023】
サービスルーティング計算機1000は、3PCC装置1060から受信した、配信するストリームデータのフォーマット、及びユーザのSIP端末1020が利用可能なフォーマット、並びに、ユーザ情報1011、ユーザ設定1012、配信データリスト1013、処理サーバリスト1014、配信ポリシー情報1015、フォーマット変換サーバリスト1016、及び処理サーバロケーション1017の情報を用いて、配信するストリームデータを経由させるルート(サーバ列)を求める。ルートを求める処理の詳細については後述する。
【0024】
ユーザSIP端末1020、ユーザWeb端末1021は、ともにストリームデータの配信サービスを利用するユーザが利用する端末である。ユーザSIP端末1020は、SIPを利用してストリームデータを配信、または中継(経由)するサーバとセッションを確立し、ストリームデータを受信することができる。ユーザWeb端末1021は、インターネット1091を介してポータルサーバ1110に接続されており、HTTP(HyperText Transfer Protocol)を用いて、ポータルサーバ1110にストリームデータの配信要求を送信する。
【0025】
ストリームデータ配信装置1030は、ユーザへ配信するコンテンツのストリームデータをコンテンツデータベース1031に保持しており、SIPを用いたコンテンツ配信のリクエストメッセージを受信し、リクエストメッセージの内容に対応するコンテンツを配信する。リクエストメッセージの内容に対応するコンテンツは、例えば、コンテンツ(ストリームデータ)ごとの異なるSIP URI(Uniform Resource Identifier)により区別する。
【0026】
フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043は、いずれもストリーム処理を行うユーザ向けのサービスサーバ(処理サーバ)であり、ストリームデータの受信と、受信したストリームデータに対する所定の処理と、処理後のストリームデータの送信を行う。前述の概要では、フォーマット変換サーバ1041は処理サーバと異にするように説明したが、ストリーム処理を行うユーザ向けのサービスサーバとして、またストリームデータ配信装置1030からSIP端末1020へのストリームデータの経路に選択的に組み込まれる点で、同様に扱ってよい。
【0027】
受信したストリームデータに対する所定の処理とは、フォーマット変換サーバ1041については、配信するストリームデータのフォーマットを、ユーザのSIP端末1020が利用可能なデータフォーマットへ変換する処理である。
【0028】
受信したストリームデータに対する所定の処理とは、投稿メッセージ付加サーバ1042については、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報と、ユーザの趣向情報とに合わせてストリームデータを加工する処理であり、例えば、サービスを利用するユーザが投稿したコメントや関連するお勧め情報などのメッセージをストリームデータに重畳して表示するように付加する処理である。
【0029】
受信したストリームデータに対する所定の処理とは、広告処理サーバ1043については、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報と、ユーザの課金情報に合わせて、ストリームデータに対して、商業広告メッセージを重畳して表示するように付加する処理である。
【0030】
なお、上述した所定の処理の内容は一例であり、上述の内容に限るものではない。例えば、コンテンツを保護するために、時刻とユーザの識別ID(Identity)を透かし情報としてストリームデータに付加するストリーム処理などもある。また、処理の種別数についても、上述した3つに限るものではなく、配信するストリームデータのフォーマットと、ユーザのSIP端末1020が利用可能なデータフォーマットと、配信するストリームデータごとにサービス管理者によって設定されたポリシー情報と、ユーザの趣向情報と、ユーザの課金情報とを選択的に用いて、ユーザ向けにサービスする処理であればよい。
【0031】
フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043のサービスサーバは、いずれも、SIPの第三者呼制御のメッセージシーケンスに従って、他のSIP UAS(User Agent Server)装置との間でSIP UAC(User Agent Client)としてセッションを確立し、また、同じくSIPの第三者呼制御のメッセージシーケンスに従って、他のSIP UAC装置との間でSIP UASとしてセッションを確立することができる。他のSIP UAS装置へSIP UACとしてセッションを確立し、確立したセッションを通じてストリームデータを受信する。また、他のSIP UAC装置へSIP UASとしてセッションを確立し、確立したセッションを通じて上述した所定の処理後のストリームデータを送信する。
【0032】
3PCC装置1060はSIPサーバであり、NGN1090に接続されたSIP UAの呼制御を行う。また、3PCC装置1060は、サービスルーティング計算機1000に対しては、Webのインタフェースを持つ。Webのインタフェースとしては、例えば、標準化インタフェースとして、SOAP(Simple Object Access Protocol)を用いる、Parlay Xが既に策定されている。本実施形態では、Parlay Xで規定されている、Third Party Call WebServiceを用いることで、後述するシステムの動作を実現する。
【0033】
一時接続用サーバ1070は、ユーザSIP端末1020に対してSIP UASとして機能し、ストリームデータ配信装置1030に対してはSIP UACとして機能する。一時接続用サーバ1070は、他のSIP UAからSDP(Session Description Protocol) offerを含むセッション確立要求(INVITEメッセージ)を受信した際、必ず、セッション確立可能を示すSDP answerを格納した200OKメッセージを返信する。セッション確立可能を示すSDP answerは、受信したSDP offerに含まれるメディア記述部の属性を一つも削除せず、そのままSDP answerに含めたものである。一時接続用サーバ1070の用途については、システムの動作例において後述する。
【0034】
ポータルサーバ1110は、インターネット1091を介してストリームデータ配信サービスのポータルとなるWebページを公開するサーバである。ポータルサーバ1110は、インターネット1091を介してストリームデータの配信要求を送信してくるユーザを認証し、そのユーザのID、そのユーザの課金情報、そのユーザが配信を要求したストリームデータの識別番号、及び、そのユーザがストリームデータを受信するためのSIP URIをサービスルーティング計算機1000へ送信する。
【0035】
ユーザが匿名のゲストユーザの場合は、ユーザIDとして“guest”を用いる。ユーザの課金情報は、例えば、匿名のゲストユーザであれば“0”、無料で発行されるユーザIDを保有しているユーザであれば“1”、サービスに課金することで発行されるユーザIDを保有しているユーザであれば“2”といったようなものである。
【0036】
図1に示すサービスルーティング計算機1000、ポータルサーバ1110などの各構成要素は、一般に計算機、サーバ、PCなどと呼ばれる汎用的なコンピュータである。図2は、それら各構成要素としてのコンピュータのハードウェア構成を例示した図である。これらのコンピュータ2000は、CPU2001と、メモリ2002と、インターネットやLANなどのネットワーク2010を介して他の装置と通信するための通信装置2004と、キーボードやマウス等の入力装置2005と、モニタやプリンタ等の出力装置2006と、読取装置2007と、ハードディスク等の外部記憶装置2003とが、インタフェース2008を介して接続されている。また、読取装置2007にはICカードやUSBメモリのような、可搬性を有する記憶媒体2009を接続することができる。
【0037】
サービスルーティング計算機1000や、ユーザSIP端末1020、ユーザWeb端末1021、ストリームデータ配信装置1030、フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043、3PCC装置1060、ポータルサーバ1110は、これらの機能を実現するプログラムがメモリ202上にロードされ、CPU201により実行されることにより具現化される。これらのプログラムは、あらかじめ、外部記憶装置2003に格納されていても良いし、必要なときに、読取装置2007や通信装置2004と、利用可能な媒体を介して、他の装置から外部記憶装置2003にロードされてもよい。したがって、3PCC装置1060、ストリームデータ配信装置1030、フォーマット変換サーバ1041、投稿メッセージ付加サーバ1042、広告処理サーバ1043などのサーバは、物理的に異なる必要はなく、少なくとも1台のコンピュータ2000上に論理的に構成されればよい。
【0038】
利用可能な媒体とは、たとえば、読取装置2007に着脱可能な記憶媒体2009、または通信装置2004に接続可能なネットワークまたはネットワークを伝搬する搬送波やディジタル信号を指す。そして、プログラムは一旦外部記憶装置2003に格納された後、そこからメモリ2002上にロードされてCPU2001に実行されてもよいし、あるいは外部記憶装置203に格納されることなく、直接メモリ2002上にロードされて、CPU2001に実行されてもよい。
【0039】
以下、図3〜図9を用いて、サービスルーティング計算機1000が備えるデータベースに格納される情報のデータ構造の例を順次説明する。
【0040】
図3は、ユーザ情報1011のデータ構造の例を示す図である。ユーザ情報1011には、ストリームデータ配信サービスを受けるために登録しているユーザのユーザID3001と、そのユーザの課金情報3002が対応付けて格納されている。ユーザID3001の1行目の、“guest”は匿名ユーザを示すユーザIDである。ユーザ課金情報3002の値は、“0”は匿名のゲストユーザであることを表し、“1”はストリームデータ配信サービスを無料で受けられる無料IDを登録しているユーザ(無料ユーザ)であることを表し、“2”はストリームデータ配信サービスを受けるために課金されるユーザ(課金ユーザ)であることを表す。
【0041】
図4は、ユーザ設定1012のデータ構造の例を示す図である。ユーザ設定1012は、ユーザIDを格納するユーザID3011、配信するストリームデータの識別情報を格納する配信データID3012、及び、ユーザID3011と配信データID3012との組合せに対応して、ユーザが投稿したメッセージをストリームデータに付加して配信するかどうか(“on”:付加する、“off”:付加しない)を格納するユーザ投稿メッセージ3013を持つ。ユーザ設定1012の変更用API(Application Program Interface)をユーザへ公開し、ユーザがAPIを介してユーザ設定1012へ情報を格納する。サービスルーティング計算機1000がユーザ設定1012を参照して、例えば、「ユーザ“usr0001”にデータ“data0001”を配信する際は、ユーザ投稿メッセージを付加して配信する」といったルートを決定することにより、サービス事業者はユーザの趣向に基づいたストリームデータ配信サービスを提供できる。
【0042】
なお、図4において、ユーザ設定1012には、付加する対象はユーザ投稿メッセージ3013の一つのみであるが、そのほかにも付加する対象情報がある場合は、その対象情報の種別数に応じてユーザ設定1012のカラムを増加させる。
【0043】
図5は、配信データリスト1013のデータ構造の例を示す図である。配信データリスト1013は、配信可能なストリームデータの一覧であり、ストリームデータのIDである配信データID3021と、そのストリームデータのロケーション3022とを対応付けて保持する。
【0044】
図6は、配信ポリシー1014のデータ構造の例を示す図である。配信ポリシー1014は、配信可能なストリームデータのIDである配信データID3031、ユーザ課金情報3032と、配信するストリームデータの品質(表示する画像品質)を制限するかどうか(“on”:制限する、“off”:制限しない)を表す品質制限3033、及び、配信するストリームデータに広告を付加して配信するかどうか(“on”:付加する、“off”:付加しない)を表す広告表示3034を対応付けて保持する。
【0045】
ユーザ課金情報3032が持つ意味は、ユーザ情報1011のユーザ課金情報3002の値が持つ意味と同じであり、すなわち、“0”は匿名のゲストユーザであることを表し、“1”は無料IDを登録しているユーザであることを表し、“2”は課金しているユーザであることを表す。サービスルーティング計算機1000が配信ポリシー1014を参照して、例えば、「データ“data0001”を、匿名のゲストユーザに配信する際は、品質制限し、かつ、広告を付加する」といったルートを決定することにより、サービス事業者が設定するポリシーに応じたストリームデータ配信サービスを提供できる。
【0046】
図7は、処理サーバリスト1015のデータ構造の例を示す図である。処理サーバリスト1015は処理サーバの一覧であり、処理内容3041と、配信データID3042と、処理内容3041の処理を実行するサーバの識別名である処理サーバ識別名3043とを対応付けて保持する。サービスルーティング計算機1000が処理サーバリスト1015を参照して、例えば、「データ“data0001”にユーザ投稿メッセージを付加するサーバは、“msg0001”である」といった、処理内容を処理サーバの識別名へマッピングする。
【0047】
図8は、フォーマット変換サーバリスト1016のデータ構造の例を示す図である。フォーマット変換サーバリスト1016は、フォーマット変換前のデータフォーマットの種類を示す変換前フォーマット3051と、フォーマット変換後のデータフォーマットの種類を示す変換後フォーマット3052と、変換前フォーマット3051のデータを変換後フォーマット3052のデータへ変換する処理を実行する処理サーバの識別名3053を対応付けて保持する。サービスルーティング計算機1000は、フォーマット変換サーバリスト1016を参照して、例えば、「mpeg4でエンコードされたストリームデータをh.263へ変換する処理サーバは、識別名“fmt0001”の処理サーバである」といった情報を取得する。
【0048】
図9は、処理サーバロケーション1017のデータ構造の例を示す図である。処理サーバロケーション1017は、処理サーバのロケーション情報(アドレス)を保持する。処理サーバの処理サーバ識別名3061とそのロケーション3062を対応付けて保持する。また、処理サーバロケーション1017は、一時接続用サーバ1070のロケーションを、処理サーバ識別名3061の値“temp”に対応付けて保持する。具体的な例として、処理サーバロケーション1017の1行目は、「一時接続用サーバ1070のロケーションは“sip:tmp@tmpexample.com”である」ことを表している。一時接続用サーバ1070については後述する。
【0049】
ストリームデータ配信サービスシステムの概略動作の一例を説明する。サービス事業者は、ストリームデータをストリームデータ配信装置1030を用いてNGN1090を介して配信する。ストリームデータの配信リクエストを受け付けるためのポータルサイトをポータルサーバ1110を用いてインターネット1091上に公開している。
【0050】
また、サービス事業者は、ストリームデータの配信時のポリシーとして、「配信データID“data0001”を、課金ユーザへ配信する際は、品質制限せず、広告も付加しない」という内容の配信ポリシーを設定している。具体的には、図6の配信ポリシー1014の3行目が、上述したポリシーの内容に対応する。
【0051】
ストリームデータ配信サービスを受けるためにユーザ登録している課金ユーザ(ユーザID“usr0001”)が、サービス事業者が管理するサービスルーティング計算機1000のユーザ設定1012へ、「配信データ“data0001”を受信する際は、ユーザ投稿メッセージを付加して受信する」という内容の、自らの趣向情報を登録している。具体的には、図4のユーザ設定1012の1行目が、上述した趣向情報の内容に対応する。
【0052】
ユーザ“usr0001”は、ユーザWeb端末1021を用いて、ポータルサーバ1110へアクセスして、自らのID“usr0001”を用いてストリームデータ配信サービスへログインし、受信したいストリームデータの識別名とストリームデータを受信するユーザSIP端末1020のSIP URIとを送信する。ユーザSIP端末1020が利用可能なストリームデータのフォーマットはh.263形式であり、ストリームデータ配信装置1030のコンテンツデータベース1031に置かれた配信データID“data0001”のストリームデータのフォーマットはmpeg4形式である。
【0053】
ユーザ“usr0001”は、サービス事業者のポリシー(図6)と、自らが設定した趣向(図4)と、ユーザSIP端末1020が利用可能なフォーマットとに応じて処理されたストリームデータを受信する。具体的には、ユーザ“usr0001”は、品質制限と広告表示がなく、ユーザ投稿メッセージが付加され、h.263形式に変換された“data0001”のストリームデータを、ユーザSIP端末1020で受信する。
【0054】
以上のような、ストリームデータ配信サービスシステムの動作を、図10A〜図10Cに示すシーケンスに従って説明する。
【0055】
シーケンス番号4001(認証):
ユーザは、ユーザWeb端末1021からポータルサーバ1110へアクセスし、ユーザID“usr0001”を送信して、ユーザ認証を受ける。ユーザ認証は、例えば、Webで標準的に用いられるHTTPダイジェスト認証などによる。
【0056】
シーケンス番号4002(リクエスト):
ユーザWeb端末1021は、ポータルサーバ1110へ、認証されたユーザID“usr0001”と、受信したいストリームデータの識別名(配信データID)としての“data0001”と、ストリームデータを受信するユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”とをHTTPのリクエストメソッドを用いて送信する。
【0057】
シーケンス番号4003(リクエスト):
ポータルサーバ1110は、サービスルーティング計算機1000へ、受信した、ユーザID“usr0001”と、配信データID“data0001”と、ユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”と、をHTTPのリクエストメソッドを用いて送信する。
【0058】
シーケンス番号4004(ロケーション解決):
サービスルーティング計算機1000は、配信データリスト1013の、配信データID3021が“data0001”である行を参照して、配信データのロケーション“sip:data1@server1example.com”を取得する。サービスルーティング計算機1000は、処理サーバロケーション1017の、処理サーバ識別名3061の値が“temp”である行を参照して、一時接続用サーバ1070のロケーション“sip:tmp@tmpexample.com”を取得する。
【0059】
シーケンス番号4005(3PCC(接続)命令):
シーケンス番号4005(3PCC(接続)命令)〜4010(SDP情報通知)は、ユーザSIP端末1020と一時接続用サーバ1070との間にセッションを確立させ、サービスルーティング計算機1000に、ユーザSIP端末1020が利用可能なフォーマットを取得させるための処理である。
【0060】
サービスルーティング計算機1000は、3PCC装置1060へ、ユーザSIP端末1020と一時接続用サーバ1070へセッション確立命令(makeCallSessionのリクエスト)を送信する。makeCallSessionのリクエストの引数は、ユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”と、一時接続用サーバ1070のSIP URI“sip:tmp@tmpexample.com”である。
【0061】
シーケンス番号4006(INVITE、200OK):
シーケンス番号4006(INVITE、200OK)〜シーケンス番号4008(セッション確立)までの処理は、RFC3725(“Best Current Practices for Third Party Call Control in the Session Initiation Protocol”、http://www.rfc-editor.org/rfc/rfc3725.txt)などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0062】
3PCC装置1060は、ユーザSIP端末1020へ、SDPが空のINVITEメッセージを送信する。ユーザSIP端末1020は、SDPのoffer/answerモデルの動作に従い、3PCC装置1060へ、SDPをボディ部に格納する200OKメッセージを返信する(SDP offer)。SDPのメディア記述部には、h.263形式が利用可能であることを示す情報が記述されている。これにより、3PCC装置1060は、ユーザSIP端末1020が利用可能なフォーマットを取得する。
【0063】
シーケンス番号4007(INVITE、200OK、ACK):
3PCC装置1060は、一時接続用サーバ1070へ、ユーザSIP端末1020から受信したSDPをSDP offerとしてボディ部に含むINVITEメッセージを送信する。一時接続用サーバ1070は、3PCC装置1060へ、200OKメッセージを返信する。200OKメッセージのボディ部には、接続の確立が可能であることを示すSDPが格納されている(SDP answer)。一時接続用サーバ1070は、3PCC装置1060へ、ACKメッセージを送信する。
【0064】
シーケンス番号4008(セッション確立):
3PCC装置1060は、ユーザSIP端末1020へ、ACKメッセージを送信する。ACKメッセージのボディ部には、一時接続用サーバ1070から受信したSDP answerを格納している。
【0065】
上述した、シーケンス番号4006(INVITE、200OK)、シーケンス番号4007(INVITE、200OK、ACK)のシーケンスにより、ユーザSIP端末1020と一時接続用サーバ1070は接続を確立する。
【0066】
シーケンス番号4009(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4005(3PCC(接続)命令)におけるmakeCallSessionのリクエストに対するレスポンス(シーケンス番号4008(セッション確立)において確立したセッションのセッション番号)を送信する。
【0067】
シーケンス番号4010(SDP情報通知):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4006(INVITE、200OK)において取得したSDPを、SOAP/HTTPのメッセージングを用いて送信する。
【0068】
以上のシーケンス番号4005(3PCC(接続)命令)から4010(SDP情報通知)までの処理により、サービスルーティング計算機1000は、ユーザSIP端末1020が利用可能なフォーマットを取得する。
【0069】
ただし、NGN1090が、SDPが空のINVITEメッセージの送信を許可しない仕様のNGNの場合、上述したシーケンス番号4005(3PCC(接続)命令)から4010(SDP情報通知)までの処理を実行できないため、ユーザSIP端末1020が利用可能なフォーマットを取得できない。この場合、例えば、シーケンス番号4002(リクエスト)において、リクエストメッセージにユーザSIP端末1020が利用可能なフォーマットを含めるか、あるいは、ユーザ設定1012にユーザSIP端末1020が利用可能なフォーマットをあらかじめユーザが登録しておき、シーケンス番号4004(ロケーション解決)時に、サービスルーティング計算機1000がユーザ設定1012を参照する等の方法を用いることで、ユーザSIP端末1020が利用可能なフォーマットを取得する。
【0070】
シーケンス番号4011(3PCC(接続)命令):
シーケンス番号4011(3PCC(接続)命令)〜4016(SDP情報通知)は、ストリームデータ配信装置1030と一時接続用サーバ1070の間にセッションを確立させ、サービスルーティング計算機1000に、ストリームデータ配信装置1030が配信するストリームデータのフォーマットを取得させるための処理である。
【0071】
サービスルーティング計算機1000は、3PCC装置1060へ、ストリームデータ配信装置1030と一時接続用サーバ1070間のセッション確立命令(Parlay Xのインタフェースを用いる場合、例えば、makeCallSessionのリクエスト)を送信する。セッション確立命令の引数は、ストリームデータ配信装置1030が配信するデータのロケーション“sip:data0001@server1example.ne.jp”と、一時接続用サーバ1070のSIP URI“sip:tmp@tmpexample.com”である。
【0072】
シーケンス番号4012(INVITE、200OK):
シーケンス番号4012(INVITE、200OK)からシーケンス番号4014(セッション確立)までの処理は、RFC3725などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0073】
3PCC装置1060は、ストリームデータ配信装置1030へ、SDPが空のINVITEメッセージを送信する。ストリームデータ配信装置1030は、SDPのoffer/answerモデルの動作に従い、3PCC装置1060へ、SDPをボディ部に格納する200OKメッセージを返信する(SDP offer)。SDPのメディア記述部には、データ“data1”のフォーマット形式であるmpeg4が利用可能であることを示す情報が記述されている。これにより、3PCC装置1060は、配信データ“data1”のフォーマットを取得する。
【0074】
シーケンス番号4013(INVITE、200OK、ACK):
3PCC装置1060は、一時接続用サーバ1070へ、シーケンス番号4012(INVITE、200OK)においてストリームデータ配信装置1030から受信したSDPをSDP offerとしてボディ部に含むINVITEメッセージを送信する。一時接続用サーバ1070は、3PCC装置1060へ、200OKメッセージを返信する。200OKメッセージのボディ部には、接続の確立が可能であることを示すSDPが格納されている(SDP answer)。一時接続用サーバ1070は、3PCC装置1060へ、ACKメッセージを送信する。
【0075】
シーケンス番号4014(セッション確立):
3PCC装置1060は、ストリームデータ配信装置1030へ、ACKメッセージを送信する。ACKメッセージのボディ部には、シーケンス番号4013(INVITE、200OK、ACK)において一時接続用サーバ1070から受信したSDPanswerを格納している。
【0076】
シーケンス番号4012(INVITE、200OK)、シーケンス番号4013(INVITE、200OK、ACK)のシーケンスにより、ストリームデータ配信装置1030と一時接続用サーバ1070は接続を確立する
シーケンス番号4015(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4011(3PCC(接続)命令)における接続命令に対するレスポンス(シーケンス番号4014(セッション確立)において確立したセッションのセッション番号)を送信する。
【0077】
シーケンス番号4016(SDP情報通知):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4012(INVITE、200OK)において取得したSDPを、SOAP/HTTPのメッセージングを用いて送信する。
【0078】
上述した、シーケンス番号4011(3PCC(接続)命令)から4016(SDP情報通知)までの処理により、サービスルーティング計算機1000は、ストリームデータ配信装置1030が配信するストリームデータのフォーマットを取得する。
【0079】
ただし、NGN1090が、SDPが空のINVITEメッセージの送信を許可しない仕様のNGNの場合、上述したシーケンス番号4011(3PCC(接続)命令)から4016(SDP情報通知)までの処理を実行できないため、ストリームデータ配信装置1030が配信するストリームデータのフォーマットを取得できない。この場合、例えば、配信データリスト1013に各ストリームデータのフォーマットをあらかじ登録しておき、シーケンス番号4004(ロケーション解決)時に、サービスルーティング計算機1000が配信データリスト1013を参照する等の方法を用いることで、配信するストリームデータのフォーマットを取得する。
【0080】
シーケンス番号4017(ルート決定処理):
ユーザへ、サービス事業者のポリシーと、ユーザ自身が設定した趣向と、ユーザのSIP端末が利用可能なフォーマットと、ユーザへ配信するストリームデータのフォーマットと、に応じてストリームデータを処理し、ユーザへ提供するために必要となるサービスルートを求める。本処理の詳細は後述する。
【0081】
本処理により、
・ストリームデータ配信装置1030と広告処理サーバ1043の間、
・広告処理サーバ1043と投稿メッセージ付加サーバ1042の間、
・投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041の間、
・フォーマット変換サーバ1041とユーザSIP端末1020の間
にセッションを確立するという結果と、
・広告処理サーバ1043のSIP URI“sip:adv0001@advexample.com”、
・投稿メッセージ付加サーバ1042のSIP URI“sip:msg0001@msgexample.com”、
・フォーマット変換サーバ1041のSIP URI“sip:fmt0001@fmt1example.com”、
とを得る。
【0082】
シーケンス番号4018(3PCC(転送)命令)からシーケンス番号4039(リクエスト応答)までは、求めたサービスルートに対応してサービスルーティング(ユーザのSIP端末1020へ配信するストリームデータを経由させるサーバ列の各サーバ間にセッションを確立)するための処理である。
【0083】
シーケンス番号4018(3PCC(転送)命令):
シーケンス番号4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)は、すでに確立しているストリームデータ配信装置1030と一時接続用サーバ1070との間のセッションを転送し、ストリームデータ配信装置1030と広告処理サーバ1043間のセッションを確立するための処理である。
【0084】
なお、後述する処理では転送命令(REFERメッセージ)を用いるが、NGN1090がREFERメッセージの送信を許可しない仕様のNGNの場合、後述するシーケンス番号4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理を実行できない。この場合、例えば、シーケンス番号4018の処理において、3PCC(転送)命令の代わりに、一時接続用サーバ1070と広告処理サーバ1043との間のセッション確立命令(PCC(接続)命令)を送信して両者にセッションを確立させ、ストリームデータ配信装置1030から一時接続用サーバ1070のセッションと、一時接続用サーバ1070から広告処理サーバ1043へのセッションの2つのセッションを繋げて利用することで、後述する、転送命令によってストリームデータ配信装置1030と広告処理サーバ1043間のセッションを確立する場合と同様の結果を得ることができる。
【0085】
シーケンス番号4018(3PCC(転送)命令)では、サービスルーティング計算機1000は、3PCC装置1060へ、ストリームデータ配信装置1030に対する転送命令(Parlay Xのインタフェースを用いる場合、例えば、transferCallParticipantのリクエスト)を送信する。転送命令の引数は、シーケンス番号4015(3PCC(接続)命令応答)で取得したセッション番号と、ストリームデータ配信装置1030が配信するデータのロケーション“sip:data1@server1example.ne.jp”と、転送先である広告処理サーバ1043のSIP URI“sip:adv0001@advexample.com”である(上述した、Parlay XのtransferCallParticipantのリクエストを用いる場合、転送先である広告処理サーバ1043のSIP URIは引数のdestinationCallSessionIdentifire部分にstring型として格納し、リクエストを受信した3PCC装置1060がそれを適切に解釈(すなわち、転送先のSIP URIとして処理)することで後述の処理を実現する)。
【0086】
シーケンス番号4019(REFER、200OK):
3PCC装置1060は、ストリームデータ配信装置1030へ、広告処理サーバ1043への転送命令(REFERメッセージ)を送信する。REFERメッセージでは、シーケンス番号4018(3PCC(転送)命令)において受信した両者のSIP URIを利用する。ストリームデータ配信装置1030は、3PCC装置1060へ、受信したREFERメッセージへの応答として、200OKメッセージを送信する。
【0087】
シーケンス番号4020(INVITE、200OK):
3PCC装置1060は、広告処理サーバ1043へ、ストリームデータ配信装置1030とのセッション確立のためのINVITEメッセージを送信する。広告処理サーバ1043は、3PCC装置1060へ、受信したINVITEメッセージへの応答として200OKメッセージを返信する。
【0088】
シーケンス番号4021(セッション確立):
3PCC装置1060は、広告処理サーバ1043へ、ACKメッセージを送信する。
【0089】
上述した、シーケンス番号4019(REFER、200OK)、シーケンス番号4020(INVITE、200OK)のシーケンスにより、ストリームデータ配信装置1030の接続先を広告処理サーバ1043へ変更(セッションを転送)する。
【0090】
シーケンス番号4022(3PCC(転送)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4018(3PCC(転送)命令)への応答を返す(Parlay XのtransferCallParticipantを用いる場合、レスポンスはvoidであるため、応答メッセージは必要ない)。
【0091】
シーケンス番号4023(3PCC(接続)命令):
シーケンス番号4023(3PCC(接続)命令)〜シーケンス番号4027(3PCC(接続)命令応答)は、広告処理サーバ1043と投稿メッセージ付加サーバ1042の間に接続を確立させる処理である。
【0092】
サービスルーティング計算機1000は、3PCC装置1060へ、広告処理サーバ1043と投稿メッセージ付加サーバ1042間のセッション確立命令を送信する。セッション確立命令の引数は、広告処理サーバ1043のSIP URI“sip:adv0001@advexample.ne.jp”と、投稿メッセージ付加サーバ1042のSIP URI“sip:msg0001@msgexample.com”である。
【0093】
シーケンス番号4024(INVITE、200OK):
シーケンス番号4024(INVITE、200OK)からシーケンス番号4026(セッション確立)までの処理は、RFC3725などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0094】
3PCC装置1060は、広告処理サーバ1043へ、INVITEメッセージを送信する。広告処理サーバ1043は、3PCC装置1060へ、200OKメッセージを返信する
シーケンス番号4025(INVITE、200OK、ACK):
3PCC装置1060は、投稿メッセージ付加サーバ1042へ、INVITEメッセージを送信する。投稿メッセージ付加サーバ1042は、3PCC装置1060へ、200OKメッセージを返信する。一時接続用サーバ1070は、3PCC装置1060へ、ACKメッセージを送信する。
【0095】
シーケンス番号4026(セッション確立):
3PCC装置1060は、広告処理サーバ1043へ、ACKメッセージを送信する。
【0096】
上述した、シーケンス番号4024(INVITE、200OK)、シーケンス番号4025(INVITE、200OK、ACK)のシーケンスにより、広告処理サーバ1043と投稿メッセージ付加サーバ1042は接続を確立する。
【0097】
シーケンス番号4027(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4022(3PCC(接続)命令)における接続命令に対するレスポンス(シーケンス番号4026(セッション確立)において確立したセッションのセッション番号)を送信する。
【0098】
シーケンス番号4028(3PCC(接続)命令):
シーケンス番号4028(3PCC(接続)命令)〜シーケンス番号40232(3PCC(接続)命令応答)は、投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041の間に接続を確立させる処理である。
【0099】
サービスルーティング計算機1000は、3PCC装置1060へ、投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041との間のセッション確立命令を送信する。セッション確立命令の引数は、投稿メッセージ付加サーバ1042のSIP URI“sip:msg0001@msgexample.com“と、フォーマット変換サーバ1041のSIP URI“sip:fmt0001@fmt1.example.com“とである。
【0100】
シーケンス番号4029(INVITE、200OK):
シーケンス番号4029(INVITE、200OK)からシーケンス番号4031(セッション確立)までの処理は、RFC3725などでも述べられている典型的な3PCCのメッセージシーケンスに従う処理である。
【0101】
3PCC装置1060は、投稿メッセージ付加サーバ1042へ、INVITEメッセージを送信する。
【0102】
次に、投稿メッセージ付加サーバ1042は、3PCC装置1060へ、200OKメッセージを返信する
シーケンス番号4030(INVITE、200OK、ACK):
3PCC装置1060は、フォーマット変換サーバ1041へ、INVITEメッセージを送信する。次に、フォーマット変換サーバ1041は、3PCC装置1060へ、200OKメッセージを返信する。次に、フォーマット変換サーバ1041は、3PCC装置1060へ、ACKメッセージを送信する。
【0103】
シーケンス番号4031(セッション確立):
3PCC装置1060は、投稿メッセージ付加サーバ1042へ、ACKメッセージを送信する。
【0104】
上述した、シーケンス番号4029(INVITE、200OK)、シーケンス番号4030(INVITE、200OK、ACK)のシーケンスにより、投稿メッセージ付加サーバ1042とフォーマット変換サーバ1041は接続を確立する。
【0105】
シーケンス番号4032(3PCC(接続)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4022(3PCC(接続)命令)における接続命令に対するレスポンス(シーケンス番号4026(セッション確立)において確立したセッションのセッション番号)を送信する。
【0106】
シーケンス番号4033(3PCC(転送)命令):
シーケンス番号4033(3PCC(転送)命令)からシーケンス番号4037(3PCC(転送)命令応答)までは、一時接続用サーバ1070とセッションを確立しているユーザSIP端末1020を、フォーマット変換サーバ1041へ転送するための処理である。
【0107】
なお、シーケンス処理4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理と同じく、後述する処理では転送命令(REFERメッセージ)を用いるが、NGN1090がREFERメッセージの送信を許可しない仕様のNGNの場合は、後述するシーケンス番号4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理を実行できない。
【0108】
この場合も、シーケンス処理4018(3PCC(転送)命令)からシーケンス番号4022(3PCC(転送)命令応答)までの処理の場合と同様に、例えば、シーケンス番号4033の処理において、3PCC(転送)命令の代わりに、一時接続用サーバ1070とフォーマット変換サーバ1041との間のセッション確立命令(PCC(接続)命令)を送信して両者にセッションを確立させ、フォーマット変換サーバ1041から一時接続用サーバ1070へのセッションと、一時接続用サーバ1070からユーザSIP端末1020へのセッションの2つのセッションを繋げて利用することで、後述する、転送命令によってフォーマット変換サーバ1070とユーザSIP端末1020間のセッションを確立する場合と同様の結果を得ることができる。
【0109】
シーケンス番号4033(3PCC(転送)命令)では、サービスルーティング計算機1000は、3PCC装置1060へ、ユーザSIP端末1020に対する転送命令(Parlay Xのインタフェースを用いる場合、例えば、transferCallParticipantのリクエスト)を送信する。転送命令の引数は、シーケンス番号4009(3PCC(接続)命令応答)で取得したセッション番号と、ユーザSIP端末1020のSIP URI“sip:usr@usr-example.ne.jp”と、転送先であるフォーマット変換サーバ1041のSIP URI“sip:fmt0001@fmt1example.com”である。
【0110】
シーケンス番号4034(REFER、200OK):
3PCC装置1060は、ユーザSIP端末1020へ、フォーマット変換サーバ1041への転送命令(REFERメッセージ)を送信する。REFERメッセージでは、シーケンス番号4033(3PCC(転送)命令)において受信した両者のSIP URIを利用する。ユーザSIP端末1020は、3PCC装置1060へ、受信したREFERメッセージへの応答として、200OKメッセージを送信する。
【0111】
シーケンス番号4035(INVITE、200OK):
3PCC装置1060は、フォーマット変換サーバ1041へ、ユーザSIP端末1020とのセッション確立のためのINVITEメッセージを送信する。フォーマット変換サーバ1041は、3PCC装置1060へ、受信したINVITEメッセージへの応答として200OKメッセージを返信する。
【0112】
シーケンス番号4036(セッション確立):
3PCC装置1060は、フォーマット変換サーバ1041へ、ACKメッセージを送信する。
【0113】
上述した、シーケンス番号4034(REFER、200OK)、シーケンス番号4035(INVITE、200OK)のシーケンスにより、ユーザSIP端末1020の接続先をフォーマット変換サーバ1041へ変更(セッションを転送)する。
【0114】
シーケンス番号4037(3PCC(転送)命令応答):
3PCC装置1060は、サービスルーティング計算機1000へ、シーケンス番号4033(3PCC(転送)命令)への応答を返す(Parlay XのtransferCallParticipantを用いる場合、レスポンスはvoidであるため、応答メッセージは必要ない)。
【0115】
上述した、シーケンス番号4018(3PCC(転送)命令)からシーケンス番号4037(3PCC(転送)命令応答)までの処理によって、シーケンス番号4017(ルート決定処理)によって得られたサービスルートのサービスルーティングが完了する。
【0116】
シーケンス番号4038(リクエスト応答):
サービスルーティング計算機1000は、ポータルサーバ1110へ、シーケンス番号4003(リクエスト)への応答として、正常にルーティングが終了したことを表すメッセージを送信する。
【0117】
シーケンス番号4039(リクエスト応答):
ポータルサーバ1110は、ユーザWeb端末1021へ、シーケンス番号4002(リクエスト)への応答として、正常にサービスのリクエストを受け付けたことをを表すメッセージを送信する。
【0118】
シーケンス番号4040(ストリームデータ):
シーケンス番号4040(ストリームデータ)〜シーケンス番号4046(ストリームデータ)の処理は、これまでに確立されたセッションを介してストリームデータを配信する処理である。
【0119】
シーケンス番号4040(ストリームデータ)では、ストリームデータ配信装置1030が、広告処理サーバ1043へ、シーケンス番号4021(セッション確立)によって確立されたセッションを介して、ストリームデータdata0001を送信する処理である。
【0120】
なお、本実施形態のシーケンスにおいてはシーケンス番号4040(ストリームデータ)はシーケンス番号4039(リクエスト応答)の終了後に開始しているが、実際にはシーケンス番号4039(リクエスト応答)の終了を待つ必要は無く、シーケンス番号4021(セッション確立)であればどのタイミングで開始してもよく、その場合、広告処理サーバ1043は、シーケンス番号4026(セッション確立)が終了するまでの間、シーケンス番号4040(ストリームデータ)において受信するデータを、キャッシュする。
【0121】
シーケンス番号4041(広告処理):
広告処理サーバ1043は、シーケンス番号4040(ストリームデータ)において受信したストリームデータに広告情報を付加する処理を行う。
【0122】
シーケンス番号4042(ストリームデータ):
広告処理サーバ1043は、投稿メッセージ付加サーバ1042へ、シーケンス番号4026(セッション確立)によって確立されたセッションを介して、シーケンス番号4041(広告処理)において処理したストリームデータを送信する。
【0123】
シーケンス番号4043(投稿メッセージ付加処理):
投稿メッセージ付加サーバ1042は、シーケンス番号4042(ストリームデータ)において受信したストリームデータにサービスのユーザが投稿した情報を付加する処理を行う。
【0124】
シーケンス番号4044(ストリームデータ):
投稿メッセージ付加サーバ1042は、フォーマット変換サーバ1041へ、シーケンス番号4031(セッション確立)によって確立されたセッションを介して、シーケンス番号4043(投稿メッセージ付加処理)において処理したストリームデータを送信する。
【0125】
シーケンス番号4045(フォーマット変換処理):
フォーマット変換サーバ1041は、シーケンス番号4042(ストリームデータ)において受信したストリームデータのフォーマットを、mpeg4からh.263に変換する処理を行う。
【0126】
シーケンス番号4046(ストリームデータ):
フォーマット変換サーバ1041は、ユーザSIP端末1020へ、シーケンス番号4036(セッション確立)によって確立されたセッションを介して、シーケンス番号4045(フォーマット変換処理)において処理したストリームデータを送信する。
【0127】
図11は、シーケンス番号4017(ルート決定処理)において、サービスルーティング計算機1000が行うサービスルートを決定する処理フローを示した図である。
【0128】
ステップ5001(ユーザ情報解決):
シーケンス番号4003(リクエスト)において受信したリクエストメッセージに含まれるユーザID5101を用いて、ユーザ情報1011を参照して、ユーザの課金情報3002を取得する。
【0129】
本実施形態の例示においては、ユーザID“usr0001”の課金情報は“1”、すなわち“無料ID登録ユーザ”であることが取得できる。
【0130】
ステップ5002(配信データ制約解決):
シーケンス番号4003(リクエスト)において受信したリクエストメッセージに含まれる配信データID5102と、ステップ5001(ユーザ情報解決)において取得したユーザの課金情報とを用いて、配信ポリシー1014を参照し、品質制限するか否かと広告表示するか否かに関する情報を取得する。取得した情報と配信データID5102とを用いて、処理サーバリスト1015を参照し、サービスルーティングで経由させる必要がある処理サーバの識別名を取得する。
【0131】
本実施形態の例示においては、配信データID5102は“data0001”、ユーザの課金情報は“1”、であることから、ストリームデータの配信の際に、品質制限せずに、広告表示するという配信ポリシーを取得でき、さらに、処理サーバリスト1015を参照し、経由させる必要がある処理サーバの識別名として“adv0001”を取得する。
【0132】
ステップ5003(ユーザ設定解決):
シーケンス番号4003(リクエスト)において受信したリクエストメッセージに含まれるユーザID5101と配信データID5102とを用いて、ユーザ設定1012を参照し、ユーザ投稿メッセージを付加するか否かに関する情報を取得する。取得した情報と配信データID5102とを用いて、処理サーバリスト1015を参照し、サービスルーティングで経由させる必要がある処理サーバの識別名を取得する。
【0133】
本実施形態の例示においては、ユーザID5101は“usr0001”、配信データID5102は“data0001”、であることから、ストリームデータの配信には、ユーザ投稿メッセージの付加を望んでいるというユーザの趣向情報を取得でき、さらに、処理サーバリスト1015を参照し、経由させる必要がある処理サーバの識別名として“msg0001”を取得する。
【0134】
ステップ5004(メディアフォーマット解決):
シーケンス番号4010(SDP情報通知)で取得したユーザSIP端末1020が利用可能なフォーマット5103と、シーケンス番号4016(SDP情報通知)で取得した配信するストリームデータのフォーマット5103とを用いて、フォーマット変換サーバリスト1016を参照し、配信するストリームデータのフォーマットをユーザSIP端末1020が利用可能なフォーマットへ変換するためのフォーマット変換サーバ1041の識別名を取得する。
【0135】
本実施形態の例示においては、配信するストリムデータ(配信データID5102が“data0001”)のフォーマットは“mpeg4”、ユーザSIP端末1020が利用可能なフォーマット形式は“h.263”であることから、フォーマット変換サーバ1041の識別名として“fmt0001”を取得する。
【0136】
ステップ5005(ルート情報生成):
上述した、ステップ5001(ユーザ情報解決)からステップ5004(メディアフォーマット解決)までの処理結果と、配信データリスト1013と、処理サーバロケーション1017とを用いることで、サービスルーティングの情報(ルート)を決定する。
【0137】
ただし、決定したルート上のサーバの接続順序は、本実施形態においては、スタティックに、ストリームデータ配信装置1030、広告処理サーバ1043、投稿メッセージ付加サーバ1042、品質制限処理サーバ、フォーマット変換サーバ1041、ユーザSIP端末1020の順で接続するものとする(経由させる必要がない種類のサーバは、それを飛ばして接続する)。
【0138】
したがって、本実施形態の例示においては、順に、「ストリームデータ配信装置1030と広告処理サーバ1043“adv0001”」、「広告処理サーバ1043“adv0001”と投稿メッセージ付加サーバ1042“msg0001”」、「投稿メッセージ付加サーバ1042“msg0001”とフォーマット変換サーバ1041“fmt0001“」、「フォーマット変換サーバ1041“fmt0001”とユーザSIP端末1020」を接続し、かつ、それぞれのロケーションは、「広告処理サーバ1043が“sip:adv0001@advexample.com”、投稿メッセージ付加サーバ1042が“sip:msg0001@msgexample.com”、
フォーマット変換サーバ1041が“sip:fmt0001@fmt1example.com”」であるという結果を得る。
【0139】
なお、上述した処理においては、必ずしもスタティックにルートの接続順序を決定する必要は無く、例えば、別途、処理サーバ間の依存関係、すなわち「どの処理サーバ識別名が行う処理はどの処理サーバ識別名が行う処理より先に処理を行う必要があるか」をマトリックスとしてデータベースに保持しておき、その依存関係を満足するよう接続順序を決定するといった方法を用いることも可能である。
【0140】
以上、本実施形態によれば、配信サーバとユーザ端末とのセッションを確立するまでの手順を少なくできる。
【0141】
また、データの配信ポリシーと、ユーザの趣向と、利用可能なフォーマット形式に応じて処理するためのサービスルートの決定とルーティングが実現でき、ユーザへ配信するデータに付加価値を与えることが可能となる。
【0142】
また、サービスを提供する事業者にとっては、ユーザへ提供するデータの内容に応じて効率的に商業広告をデータに付加することができるようになるなどの効果もある。
【0143】
また、例えば、さらに、ユーザIDやサービスの提供時刻をストリームデータへ透かしデータとして付加するストリームデータ処理サーバを、サービスルートに加えることにより、コンテンツ保護の効果を得ることもできる。
【0144】
また、本実施形態におけるストリームデータ配信システムサービスの構築に際しては、標準プロトコルであるSIPをそのまま利用でき、既存のSIPサーバ、SIPクライアントに手を加える必要が無いため、サービスルーティングのためのインタフェース部分の開発にかかるコストを低減できる効果もある。
【0145】
以上説明した実施形態は一例であり、本発明は上述の実施形態に限るものではない。
【符号の説明】
【0146】
1000:サービスルーティング計算機、1011:ユーザ情報のデータベース、1012:ユーザ設定のデータベース、1013:配信データリストのデータベース、1014:配信ポリシー情報のデータベース、1015:処理サーバリストのデータベース、1016:フォーマット変換サーバリストのデータベース、1017:処理サーバロケーションのデータベース、1020:ユーザSIP端末、1021:ユーザWeb端末、1030:ストリームデータ配信装置、1041:フォーマット変換サーバ、1042:投稿メッセージ付加サーバ、1043:広告処理サーバ、1060:3PCC装置、1070:一時接続用サーバ、1090:NGN、1091:インターネット、1110:ポータルサーバ。
【特許請求の範囲】
【請求項1】
SIP(Session Initiation Protocol)を利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC(Third Party Call Control)装置と、前記3PCC装置に対して、前記ストリームデータ配信装置と前記ユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有するストリームデータ配信システムであって、前記セッションの確立命令の受信した前記3PCC装置は、
前記ユーザ端末から前記ユーザ端末が利用可能な第1のフォーマット情報を取得すると共に、前記ユーザ端末と前記一時接続用サーバとの間のセッションを確立する手段、
前記ストリームデータ配信装置から前記ストリームデータ配信装置が配信するストリームデータの第2のフォーマット情報を取得すると共に、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを確立する手段、
前記第2のフォーマットの前記ストリームデータを前記第1のフォーマットへ変換するフォーマット変換サーバを前記複数のフォーマット変換サーバから選択する手段、
前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとして転送する手段、および、
前記ユーザ端末と前記一時接続用サーバとの間のセッションを、前記ユーザ端末と選択した前記フォーマット変換サーバとの間のセッションとして転送する手段を設けることを特徴とするストリームデータ配信システム。
【請求項2】
前記サービスルーティング計算機は、前記ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、前記ストリームデータの識別子と前記ユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、前記ストリームデータに対する前記配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有し、前記ユーザ属性情報データベースの前記ユーザ属性情報に基づいて前記配信ポリシーデータベースを参照して、前記ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定する手段、並びに、特定した前記処理サーバを前記ストリームデータが経由するように、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令、及び、前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令を送信する手段を設け、
前記3PCC装置は、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令に応答して、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとしての転送に代えて、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と特定した前記処理サーバとの間のセッションとして転送する手段、および、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッションを確立する手段を設けることを特徴とする請求項1記載のストリームデータ配信システム。
【請求項3】
前記サービスルーティング計算機は、前記ストリームデータに対して実行すべき処理内容の種別に応じて複数台の前記処理サーバが特定し、特定した複数台の前記処理サーバへの前記ストリームデータの経路を決定することを特徴とする請求項2記載のストリームデータ配信システム。
【請求項4】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザの課金情報であり、前記ユーザの課金情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータの品質制限と前記ストリームデータへの広告表示の少なくとも一方であることを特徴とする請求項2記載のストリームデータ配信システム。
【請求項5】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザからの設定情報であり、前記ユーザからの設定情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータへのユーザ投稿メッセージの付加であることを特徴とする請求項2記載のストリームデータ配信システム。
【請求項6】
SIP(Session Initiation Protocol)を利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC(Third Party Call Control)装置と、前記3PCC装置に対して、前記ストリームデータ配信装置と前記ユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有するストリームデータ配信システムにおけるストリームデータ配信方法であって、前記セッションの確立命令の受信した前記3PCC装置は、
前記ユーザ端末から前記ユーザ端末が利用可能な第1のフォーマット情報を取得すると共に、前記ユーザ端末と前記一時接続用サーバとの間のセッションを確立し、
前記ストリームデータ配信装置から前記ストリームデータ配信装置が配信するストリームデータの第2のフォーマット情報を取得すると共に、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを確立し、
前記第2のフォーマットの前記ストリームデータを前記第1のフォーマットへ変換するフォーマット変換サーバを前記複数のフォーマット変換サーバから選択し、
前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとして転送し、
前記ユーザ端末と前記一時接続用サーバとの間のセッションを、前記ユーザ端末と選択した前記フォーマット変換サーバとの間のセッションとして転送することを特徴とするストリームデータ配信方法。
【請求項7】
前記サービスルーティング計算機は、前記ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、前記ストリームデータの識別子と前記ユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、前記ストリームデータに対する前記配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有し、前記ユーザ属性情報データベースの前記ユーザ属性情報に基づいて前記配信ポリシーデータベースを参照して、前記ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定し、特定した前記処理サーバを前記ストリームデータが経由するように、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令、及び、前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令を送信し、
前記3PCC装置は、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令に応答して、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとしての転送に代えて、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と特定した前記処理サーバとの間のセッションとして転送し、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッションを確立することを特徴とする請求項6記載のストリームデータ配信方法。
【請求項8】
前記サービスルーティング計算機は、前記ストリームデータに対して実行すべき処理内容の種別に応じて複数台の前記処理サーバが特定し、特定した複数台の前記処理サーバへの前記ストリームデータの経路を決定することを特徴とする請求項7記載のストリームデータ配信方法。
【請求項9】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザの課金情報であり、前記ユーザの課金情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータの品質制限と前記ストリームデータへの広告表示の少なくとも一方であることを特徴とする請求項7記載のストリームデータ配信方法。
【請求項10】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザからの設定情報であり、前記ユーザからの設定情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータへのユーザ投稿メッセージの付加であることを特徴とする請求項7記載のストリームデータ配信方法。
【請求項1】
SIP(Session Initiation Protocol)を利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC(Third Party Call Control)装置と、前記3PCC装置に対して、前記ストリームデータ配信装置と前記ユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有するストリームデータ配信システムであって、前記セッションの確立命令の受信した前記3PCC装置は、
前記ユーザ端末から前記ユーザ端末が利用可能な第1のフォーマット情報を取得すると共に、前記ユーザ端末と前記一時接続用サーバとの間のセッションを確立する手段、
前記ストリームデータ配信装置から前記ストリームデータ配信装置が配信するストリームデータの第2のフォーマット情報を取得すると共に、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを確立する手段、
前記第2のフォーマットの前記ストリームデータを前記第1のフォーマットへ変換するフォーマット変換サーバを前記複数のフォーマット変換サーバから選択する手段、
前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとして転送する手段、および、
前記ユーザ端末と前記一時接続用サーバとの間のセッションを、前記ユーザ端末と選択した前記フォーマット変換サーバとの間のセッションとして転送する手段を設けることを特徴とするストリームデータ配信システム。
【請求項2】
前記サービスルーティング計算機は、前記ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、前記ストリームデータの識別子と前記ユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、前記ストリームデータに対する前記配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有し、前記ユーザ属性情報データベースの前記ユーザ属性情報に基づいて前記配信ポリシーデータベースを参照して、前記ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定する手段、並びに、特定した前記処理サーバを前記ストリームデータが経由するように、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令、及び、前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令を送信する手段を設け、
前記3PCC装置は、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令に応答して、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとしての転送に代えて、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と特定した前記処理サーバとの間のセッションとして転送する手段、および、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッションを確立する手段を設けることを特徴とする請求項1記載のストリームデータ配信システム。
【請求項3】
前記サービスルーティング計算機は、前記ストリームデータに対して実行すべき処理内容の種別に応じて複数台の前記処理サーバが特定し、特定した複数台の前記処理サーバへの前記ストリームデータの経路を決定することを特徴とする請求項2記載のストリームデータ配信システム。
【請求項4】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザの課金情報であり、前記ユーザの課金情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータの品質制限と前記ストリームデータへの広告表示の少なくとも一方であることを特徴とする請求項2記載のストリームデータ配信システム。
【請求項5】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザからの設定情報であり、前記ユーザからの設定情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータへのユーザ投稿メッセージの付加であることを特徴とする請求項2記載のストリームデータ配信システム。
【請求項6】
SIP(Session Initiation Protocol)を利用するストリームデータ配信装置と、SIPを利用する一時接続用サーバと、SIPを利用する、ストリームデータのフォーマット変換を行う複数のフォーマット変換サーバと、SIPを利用するユーザ端末と、SIPの第三者呼制御を実行する3PCC(Third Party Call Control)装置と、前記3PCC装置に対して、前記ストリームデータ配信装置と前記ユーザ端末との間のセッションの確立命令を送信するサービスルーティング計算機とを有するストリームデータ配信システムにおけるストリームデータ配信方法であって、前記セッションの確立命令の受信した前記3PCC装置は、
前記ユーザ端末から前記ユーザ端末が利用可能な第1のフォーマット情報を取得すると共に、前記ユーザ端末と前記一時接続用サーバとの間のセッションを確立し、
前記ストリームデータ配信装置から前記ストリームデータ配信装置が配信するストリームデータの第2のフォーマット情報を取得すると共に、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを確立し、
前記第2のフォーマットの前記ストリームデータを前記第1のフォーマットへ変換するフォーマット変換サーバを前記複数のフォーマット変換サーバから選択し、
前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとして転送し、
前記ユーザ端末と前記一時接続用サーバとの間のセッションを、前記ユーザ端末と選択した前記フォーマット変換サーバとの間のセッションとして転送することを特徴とするストリームデータ配信方法。
【請求項7】
前記サービスルーティング計算機は、前記ユーザ端末を利用するユーザのユーザ属性情報を格納するユーザ属性情報データベース、及び、前記ストリームデータの識別子と前記ユーザ属性情報との対応関係を配信ポリシーとして格納する配信ポリシーデータベース、及び、前記ストリームデータに対する前記配信ポリシーに従った処理内容と該処理内容を実行する処理サーバの識別子を対応付けて格納する処理サーバリストを有し、前記ユーザ属性情報データベースの前記ユーザ属性情報に基づいて前記配信ポリシーデータベースを参照して、前記ストリームデータに対して実行すべき処理内容を実行する処理サーバを特定し、特定した前記処理サーバを前記ストリームデータが経由するように、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令、及び、前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令を送信し、
前記3PCC装置は、前記ストリームデータ配信装置と前記処理サーバとの間のセッション確立命令に応答して、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と選択した前記フォーマット変換サーバとの間のセッションとしての転送に代えて、前記ストリームデータ配信装置と前記一時接続用サーバとの間のセッションを、前記ストリームデータ配信装置と特定した前記処理サーバとの間のセッションとして転送し、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッション確立命令に応答して、特定した前記処理サーバと選択した前記フォーマット変換サーバとの間のセッションセッションを確立することを特徴とする請求項6記載のストリームデータ配信方法。
【請求項8】
前記サービスルーティング計算機は、前記ストリームデータに対して実行すべき処理内容の種別に応じて複数台の前記処理サーバが特定し、特定した複数台の前記処理サーバへの前記ストリームデータの経路を決定することを特徴とする請求項7記載のストリームデータ配信方法。
【請求項9】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザの課金情報であり、前記ユーザの課金情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータの品質制限と前記ストリームデータへの広告表示の少なくとも一方であることを特徴とする請求項7記載のストリームデータ配信方法。
【請求項10】
前記ユーザ属性は、前記ストリームデータ配信装置からの前記ストリームデータの配信に係る前記ユーザからの設定情報であり、前記ユーザからの設定情報に基づいて前記配信ポリシーデータベースを参照した、前記ストリームデータに対して実行すべき処理内容は、前記ストリームデータへのユーザ投稿メッセージの付加であることを特徴とする請求項7記載のストリームデータ配信方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10A】
【図10B】
【図10C】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10A】
【図10B】
【図10C】
【図11】
【公開番号】特開2012−15720(P2012−15720A)
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願番号】特願2010−149245(P2010−149245)
【出願日】平成22年6月30日(2010.6.30)
【国等の委託研究の成果に係る記載事項】(出願人による申告)国等の委託研究の成果に係る特許出願(平成21年度 独立行政法人情報通信研究機構「次世代ネットワーク(NGN)基盤技術の研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成24年1月19日(2012.1.19)
【国際特許分類】
【出願日】平成22年6月30日(2010.6.30)
【国等の委託研究の成果に係る記載事項】(出願人による申告)国等の委託研究の成果に係る特許出願(平成21年度 独立行政法人情報通信研究機構「次世代ネットワーク(NGN)基盤技術の研究開発」委託研究、産業技術力強化法第19条の適用を受ける特許出願)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]