(58)【調査した分野】(Int.Cl.,DB名)
前記コンテンツ伝送制御装置がローカルキャッシング装置から前記遅延されたストリーミングコンテンツに対するキャッシングヒット通知を受信すれば、前記遅延されたストリーミングコンテンツの代わりに、前記遅延されたストリーミングコンテンツのチャンク(Chunk)を識別するためのチャンク識別子(Signature)を前記ローカルキャッシング装置に伝送する段階をさらに含むことを特徴とする請求項6に記載のコンテンツ伝送方法。
【発明を実施するための形態】
【0018】
以下、本発明による好ましい実施形態を添付の図面を参照して詳細に説明する。添付の図面とともに以下に開示される詳細な説明は、本発明の例示的な実施形態を説明するものであり、本発明が実施され得る唯一の実施形態を示すものではない。以下の詳細な説明は、本発明の完全な理解を提供するために具体的詳細事項を含む。しかし、本発明の属する技術分野における通常の知識を有する者は、本発明がこのような具体的詳細事項なしに実施され得ることが分かる。
【0019】
いくつかの場合、本発明の概念が曖昧になることを避けるために公知の構造及び装置は、省略されるか、各構造及び装置の核心機能を中心とするブロック図の形式で図示され得る。
【0020】
明細書全体で、或る部分が任意の構成要素を「含む(comprisingまたはincluding)」と言うとき、これは、特別に反対される記載がない限り、他の構成要素を除外するものではなく、他の構成要素をさらに含むことができることを意味する。また、明細書に記載された「…部」、「…器」、「モジュール」等の用語は、少なくとも1つの機能や動作を処理する単位を意味し、これは、ハードウェアやソフトウェアまたはハードウェア及びソフトウェアの結合で具現され得る。また、「1(aまたはan)」、「1つ(one)」、「その(the)」及び類似関連語は、本発明を記述する文脈において(特に、以下の請求項の文脈において)、本明細書に他に指示されるか、文脈によって明らかに反駁されない限り、単数及び複数の両方を含む意味として使用され得る。
【0021】
以下の説明で使用される特定の用語は、本発明の理解を助けるために提供されたものであり、このような特定用語の使用は、本発明の技術的思想を脱しない範囲で他の形態に変更され得る。
【0022】
本発明の一実施形態によるコンテンツ伝送システムは、注文型ストリーミング(On−demand streaming)とは異なって、コンテンツを遅滞せずにリアルタイム(Real−time)で放送しなければならないライブストリーミング(Live streaming)−例えば、インターネットプロトコルテレビ(Internet Protocol Tele Vision、IPTV)−において、キャッシング(Caching)を許容することによって、コンテンツ重複伝送によるネットワークトラフィック負荷及びコンテンツ提供者(Contents Provider、CP)に対するトラフィック集中を減少させることができる方法を提案する。したがって、以下の説明で言及される「ストリーミングコンテンツ」は、リアルタイムで放送されなければならないライブストリーミングコンテンツを意味し、「ストリーミング」は、ライブストリーミングを意味する。
【0023】
まず、本発明の一実施形態によるコンテンツ伝送システムの全体的な構成を概略的に説明する。
【0024】
図1は、本発明の一実施形態コンテンツ伝送システム100の全体構成を例示する図である。
図1に示されたコンテンツ伝送システム100の構成は、機能的に区分される機能要素を示すものであって、いずれか1つ以上の構成が実際物理的環境では互いに統合されて具現され得る。
【0025】
図1を参照すれば、本発明の一実施形態によるコンテンツ伝送システム100は、多数の端末装置110、1つ以上のローカルキャッシング装置120、コンテンツ伝送制御装置130、コンテンツ提供サーバー140及びネットワーク150を含んで構成され得る。
【0026】
各構成要素について具体的に説明すれば、端末装置110は、ネットワーク150を介してコンテンツ提供サーバー140にストリーミングコンテンツを要請し、要請したストリーミングコンテンツを提供されて出力するための構成である。このような、端末装置110は、説明の便宜のために、第1端末装置110a〜第n端末装置110nに区分されて説明され得る。
【0027】
本発明の一実施形態による端末装置110は、ネットワーク150を介してデータを送受信でき、ストリーミングコンテンツを処理して出力することができる装置であれば、いずれでも許容され得る。例えば、端末装置110には、スマートフォン(Smart Phone)、タブレット(Tablet)、ラップトップ(Laptop)、携帯用マルチメディアプレーヤー(Portable Multimedia Player)、ファブレット(Phablet)、個人用携帯端末機(Personal Digital Assistants)、電子書籍端末機(E−Book Reader)等が含まれることができ、ひいては、これに限定されるものではない。
【0028】
次に、ローカルキャッシング装置120は、ネットワーク150に分散配置され、ネットワーク150を介して伝送されるストリーミングコンテンツをキャッシングし、キャッシングされたストリーミングコンテンツを端末装置110に伝送するための構成である。前記ローカルキャッシング装置120は、ネットワーク150を介して端末装置110とコンテンツ提供サーバー140との間に伝送されるデータをモニタリングし、前記ネットワーク150を介して前記端末装置110からコンテンツ提供サーバー140に伝送されるストリーミングコンテンツに対する要請、コンテンツ提供サーバー140から端末装置100に伝送されるストリーミングコンテンツを受信する。この際、ローカルキャッシング装置120は、端末装置100からストリーミングコンテンツに対する要請が発生すれば、コンテンツ伝送制御装置130を介して前記端末装置110に伝送されるストリーミングコンテンツを受信し、受信されたストリーミングコンテンツと同一のストリーミングコンテンツが前記格納部に格納されているか否かを判断する。そして、判断結果、同一のストリーミングコンテンツが格納されている場合、前記ローカルキャッシング装置120は、前記コンテンツ伝送制御装置130にキャッシングヒット通知を伝送した後、前記コンテンツ伝送制御装置130から提供されるチャンク識別子によって、格納されたストリーミングコンテンツを前記端末装置に伝送する。
【0029】
このための、ローカルキャッシング装置120に対する具体的な説明と構成については、
図3を参照して後述する。
【0030】
次に、コンテンツ伝送制御装置130は、ネットワーク150に連結され、他のネットワーク(図示せず)からネットワーク150に流入するデータフローを制御し、ネットワーク150に分散配置された1つ以上のローカルキャッシング装置120を介してストリーミングコンテンツをキャッシングして伝送するための構成である。
【0031】
具体的に、コンテンツ伝送制御装置130は、コンテンツ提供サーバー140から受信され、ネットワーク150を介して端末装置110に伝送されるストリーミングコンテンツに対するリスト、すなわち、ストリーミングリストを格納する。そして、前記コンテンツ伝送制御装置130は、端末装置100から前記コンテンツ提供サーバー140に伝送されたストリーミングコンテンツに対する要請を受信すれば、前記ストリーミングリストに要請されたストリーミングコンテンツが登録されているか否かを判断し、前記ストリーミングリストに前記要請されたストリーミングコンテンツが登録されている場合、前記コンテンツ提供サーバー140から受信されるストリーミングコンテンツを分岐し、あらかじめ設定された時間だけ遅延させた後、前記ネットワーク150を介して当該端末装置110に伝送させる。この際、遅延値は、ローカルキャッシング装置120でキャッシングヒット(caching hit)を判断するのに要求される時間によって設定できる。
【0032】
このための、コンテンツ伝送制御装置130に対する具体的な説明と構成については、
図2を参照して後述する。
【0033】
次に、コンテンツ提供サーバー140は、ネットワーク150を介して端末装置110にコンテンツを提供するコンテンツ提供者(CP)のサーバー装置である。特に、本発明の一実施形態によるコンテンツ提供サーバー140が提供するコンテンツは、リアルタイムで放送され得る。
【0034】
また、ネットワーク150は、コンテンツ提供サーバー140が端末装置110にストリーミングコンテンツを提供するためのインフラ(Infra structure)であって、コード分割多重接続(Code Division Multiple Access、CDMA)、ワイドバンドコード分割多重接続(Wideband CDMA、WCDMA(登録商標))、高速パケット接続(High Speed Packet Access、HSPA)、ロング・ターム・エボリューション(Long Term Evolution、LTE)等のような移動通信網、イーサネット(登録商標)(Ethernet)、デジタル加入者線(x Digital Subscriber Line、xDSL)、光同軸ハイブリッド(Hybrid Fiber Coax、HFC)、光ファイバー網(Fiber To The Home、FTTH)等のような有線通信網、ワイファイ(WiFi)、ワイブロ(Wibro)、ワイマックス(Wimax)、超光帯域通信(Ultra Wide Band、UWB)等のような無線通信網または前述した通信網の組合よりなることができるが、特定の通信網に限定されるものではない。但し、本発明の一実施形態によるネットワーク150は、多数の端末装置110と接続される1つ以上の接続網152と、1つ以上の接続網152を連結し、コンテンツ伝送制御装置130と接続されるコア網151とを含んでなることができる。
【0035】
より具体的に、コア網151は、多数の接続網152を連結し、呼処理、移動性制御、スイッチング等の機能を行うための構成であって、パケットコア装置(Evolved Packet Core、EPC)151a及び多数のスイッチング装置151bを含んで構成され得る。ここで、パケットコア装置(EPC)151aは、パケットのフローを管理制御し、他のネットワーク(図示せず)との連結を担当する構成であり、多数のスイッチング装置151bは、多数の接続網152それぞれに対してパケット伝達を担当する構成である。
【0036】
そして、接続網152は、端末装置110と有線または無線でデータを送受信できる加入者網である。特に、本発明の一実施形態による接続網152は、多数のデジタルユニット(Digital Unit、DU)と、それぞれのデジタルユニット(DU)に集中化された無線ユニット(Radio Unit、RU)とで構成され、デジタル信号と無線信号を分離して処理できる基地局152aで具現され得る。
【0037】
なお、本発明の一実施形態によるネットワーク150は、ネットワーク150のエッジ(Edge)に多数のローカルキャッシング装置120を分散配置し、それと連結されたスイッチング装置151bを介して接続網152に連結されたそれぞれの端末装置110に対してストリーミングコンテンツを提供できる。この際、端末装置110から伝送されたストリーミングコンテンツに対する要請は、いずれか1つのローカルキャッシング装置120及びコンテンツ伝送制御装置130を介してコンテンツ提供サーバー140に伝送され、逆に、コンテンツ提供サーバー140から伝送されたストリーミングコンテンツをコンテンツ伝送制御装置130及びいずれか1つのローカルキャッシング装置120を介して端末装置110に伝達される。このために、前記ローカルキャッシング装置120は、ミラリング技術またはスイッチ/ルーターの経路変更を用いて前記端末装置110とコンテンツ提供サーバー140との間に伝送されるデータを受信できる。ここで、「ミラリング技術」は、トラフィックに影響を与えることなく、ネットワーク100を介して伝達されるモバイルパケットをそのままコピーしてもたらす技術を意味する。なお、前記コンテンツ伝送制御装置130は、コア網151のパケットコア装置151aと外部網との間に連結され、コンテンツ提供サーバー140に伝送されるストリーミングコンテンツに対する要請とコンテンツ提供サーバー140から伝送されたストリーミングコンテンツを受信できる。
【0038】
以下、本発明の一実施形態によるコンテンツ伝送制御装置130の構成について具体的に説明する。
【0039】
図2は、本発明の一実施形態によるコンテンツ伝送制御装置130の構成を例示するブロック図である。
図2に示されたコンテンツ伝送制御装置130の構成は、機能的に区分される機能要素を示すものであって、いずれか1つ以上の構成が物理的に分離または統合されて具現され得る。
【0040】
図2を参照すれば、本発明の一実施形態によるコンテンツ伝送制御装置130は、通信部131、格納部132及び制御部133を含んで構成され得る。
【0041】
各構成要素について具体的に説明すれば、通信部131は、コンテンツ提供サーバー140及びローカルキャッシング装置120とデータを送受信するための構成である。より具体的に、通信部131は、ネットワーク150をモニタリングし、端末装置110とコンテンツ提供サーバー140との間に伝送されるストリーミングコンテンツ及びストリーミングコンテンツに対する要請を受信し、制御部133に伝達する。また、通信部131は、ネットワーク150を介してローカルキャッシング装置120に対してストリーミングコンテンツを伝送でき、他のネットワーク(図示せず)を介してコンテンツ提供サーバー140にストリーミングコンテンツに対する要請を伝送できる。ここで、他のネットワーク(図示せず)は、ネットワーク150と異なる別個の公衆網または専用網になり得、これに限定されるものでもない。
【0042】
格納部132は、本発明の一実施形態によるコンテンツ伝送サービスを提供するために必要な情報及びプログラム等を格納するための構成である。具体的に、格納部132は、ストリーミングリスト132a及び加入者情報132bを含んで格納できる。ここで、ストリーミングリスト132aは、コンテンツ提供サーバー140から現在受信される1つ以上のストリーミングコンテンツに対する情報であり、加入者情報132bは、各ストリーミングコンテンツを伝達される1つ以上の端末装置110に対する情報である。特に、ストリーミングリスト132a及び加入者情報132bは、コンテンツ提供サーバー140から受信されるストリーミングコンテンツとそれぞれの当該ストリーミングコンテンツを伝達される端末装置110がマッピングされて、1つのテーブル(Table)の形態で管理され得る。
【0043】
制御部133は、コンテンツ伝送制御装置130の全般的な制御を行う構成であり、通信部131及び格納部132の機能実行のための信号フローを制御するための構成である。概略的に、制御部133は、端末装置110からのストリーミングコンテンツに対する要請に対して、ストリーミングリスト132aを利用して既受信中のストリーミングコンテンツであるか否かを判断する。また、制御部133は、ローカルキャッシング装置120のプレフィックスキャッシング(Prefix caching)のために、既受信中のストリーミングコンテンツを分岐し、分岐されたストリーミングコンテンツを遅延させてローカルキャッシング装置120に伝達する。
【0044】
より具体的に、制御部133は、通信部131を介してネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送するストリーミングコンテンツに対する要請を受信するか、ローカルキャッシング装置120からストリーミングコンテンツに対する要請を受信する。制御部133は、要請されたストリーミングコンテンツが期受信中であるか否かを判断するために、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されているか否かを判断する。
【0045】
まず、以下では、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されている場合について説明する。
【0046】
もし、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されていたら、当該要請されたストリーミングコンテンツは、端末装置110から既に要請されたストリーミングコンテンツであって、コンテンツ伝送制御装置130は、既受信中のストリーミングコンテンツを他の端末装置110に伝送できる。
【0047】
したがって、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されている場合、制御部133は、コンテンツ提供サーバー140から既受信中の要請されたストリーミングコンテンツを分岐し、分岐されたストリーミングコンテンツをあらかじめ設定された時間だけ遅延させる。ここで、あらかじめ設定された時間(遅延値)は、ローカルキャッシング装置120において同一コンテンツがキャッシングされているか否かを判断するキャッシングヒット(caching hit)に要求される時間によって設定できる。なお、キャッシングヒーティングの判定は、コンテンツの分割単位(チャンク単位)よりなるので、前記時間(遅延値)は、要請されたストリーミングコンテンツに対する分割された1つのチャンク(Chunk)を端末装置110が再生するのに所要される時間によって変わることができる。例えば、本発明の一実施形態によるあらかじめ設定された時間は、ストリーミングコンテンツに対する分割された1つのチャンクの再生時間であって、5秒に設定され得る。
【0048】
そして、制御部133は、加入者情報132bにストリーミングコンテンツを要請した端末装置110を登録する。そして、制御部133は、前記通信部131を介してストリーミングが遅延されたストリーミングコンテンツを当該ストリーミングコンテンツを要請したローカルキャッシング装置120に伝達する。
【0049】
さらに、制御部133は、通信部131を介してローカルキャッシング装置120からストリーミングコンテンツに対するキャッシングヒット通知を受信したか否かを判断する。
【0050】
もし、ローカルキャッシング装置120からストリーミングコンテンツに対するキャッシングヒット通知を受信したら、ローカルキャッシング装置120のストリーミングコンテンツに対するプレフィックスキャッシングは、ヒットされた場合に該当する。この場合、制御部133は、ローカルキャッシング装置120に対する遅延されたストリーミングコンテンツに対する伝達を中断する代わりに、ローカルキャッシング装置120からストリーミングコンテンツに対する中断要請を受信するまで、遅延されたストリーミングコンテンツに対する分割されたチャンクを識別するためのチャンク識別子(Signature)を通信部131を介してローカルキャッシング装置120に伝送する。
【0051】
次に、以下では、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されていない場合について説明する。
【0052】
もし、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されていなければ、当該要請されたストリーミングコンテンツは、どんな端末装置110からも要請されないストリーミングコンテンツであって、コンテンツ伝送制御装置130は、端末装置110にストリーミングコンテンツを提供するために、コンテンツ提供サーバー140から新たにストリーミングコンテンツを受信しなければならない。
【0053】
したがって、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されていない場合、制御部133は、通信部131を介してコンテンツ提供サーバー140に対してストリーミングコンテンツに対する要請を伝達する。そして、制御部133は、通信部131を介してネットワーク150をモニタリングし、コンテンツ提供サーバー140が端末装置110に伝送するストリーミングコンテンツを受信する。
【0054】
制御部133は、ストリーミングリスト132aにコンテンツ提供サーバー140から受信されたストリーミングコンテンツを登録し、加入者情報132bにストリーミングコンテンツを要請した端末装置110を登録する。そして、制御部133は、通信部131を介して受信されるストリーミングコンテンツをローカルキャッシング装置120からストリーミングコンテンツに対する中断要請を受信するまで、ストリーミングコンテンツを要請したローカルキャッシング装置120に伝達する。
【0055】
次に、以下では、ローカルキャッシング装置120からストリーミングに対する中断要請を受信した場合について説明する。
【0056】
制御部133は、通信部131をネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送したストリーミングコンテンツに対する中断要請を受信する。制御部133は、ローカルキャッシング装置120に対して伝送中のストリーミングコンテンツまたはチャンク識別子の伝送を中断する。制御部133は、加入者情報132bに登録された中断を要請した端末装置110を削除する。そして、制御部133は、加入者情報132bに登録された中断が要請されたストリーミングコンテンツを伝達される端末装置110の数が0であるか否かを判断する。
【0057】
もし、加入者情報132bに登録された中断が要請されたストリーミングコンテンツを伝達される端末装置110の数が0である場合、制御部133は、コンテンツ提供サーバー140から受信中の中断が要請されたストリーミングコンテンツに対する受信を中断する。そして、制御部133は、ストリーミングリスト132aに登録された中断が要請されたストリーミングコンテンツを削除する。
【0058】
以下では、本発明の一実施形態によるローカルキャッシング装置120の構成について具体的に説明する。
【0059】
図3は、本発明の一実施形態によるローカルキャッシング装置120の構成を例示するブロック図である。
図3に示されたローカルキャッシング装置120の構成は、機能的に区分される機能要素を示すものであって、いずれか1つ以上の構成が物理的に分離または統合されて具現され得る。
【0060】
図3を参照すれば、本発明の一実施形態によるローカルキャッシング装置120は、通信部121、格納部122及び制御部123を含んで構成され得る。
【0061】
各構成要素について具体的に説明すれば、通信部121は、コンテンツ伝送制御装置130及び端末装置110とデータを送受信するための構成である。より具体的に、通信部121は、ネットワーク150をモニタリングし、端末装置110とコンテンツ提供サーバー140との間に伝送されるストリーミングコンテンツ及びストリーミングコンテンツに対する要請を受信し、制御部123に伝達する。また、通信部121は、ネットワーク150を介してコンテンツ伝送制御装置130に対してストリーミングコンテンツに対する要請を伝送し、端末装置110に対してストリーミングコンテンツを伝送できる。
【0062】
格納部122は、本発明の一実施形態によるコンテンツ伝送サービスを提供するために必要な情報及びプログラム等を格納するための構成である。具体的に、格納部122は、ストリーミングリスト122a、加入者情報122b、チャンク122c及びチャンク識別子122dを含んで格納できる。ここで、ストリーミングリスト122aは、コンテンツ伝送制御装置130から受信される1つ以上のストリーミングコンテンツに対する情報であり、加入者情報122bは、ストリーミングコンテンツを伝達される1つ以上の端末装置110に対する情報であり、チャンク(Chunk)122cは、コンテンツ伝送制御装置130から受信したストリーミングコンテンツに対する分割されたデータであり、チャンク識別子(Signature)122dは、チャンクを識別するための識別子である。特に、ストリーミングリスト122aと加入者情報122bは、コンテンツ伝送制御装置130から受信されるストリーミングコンテンツとそれぞれの当該ストリーミングコンテンツを伝達される端末装置110がマッピングされて1つのテーブル形態で管理され得る。さらに、チャンク122cとチャンク識別子122dは、コンテンツ伝送制御装置130から受信したストリーミングコンテンツに対する分割されたチャンク122cとそれぞれの当該チャンクを識別するためのチャンク識別子122dがマッピングされて1つのテーブル形態で管理され得る。
【0063】
制御部123は、ローカルキャッシング装置120の全般的な制御を行う構成であり、通信部121及び格納部122の機能実行のための信号フローを制御するための構成である。概略的に、制御部123は、コンテンツ提供サーバー140からストリーミングコンテンツを受信して格納する。また、制御部123は、端末装置110からストリーミングコンテンツに対する要請を受信した場合、格納されたストリーミングコンテンツを利用して端末装置110にストリーミングコンテンツを伝達する。
【0064】
より具体的に、制御部123は、通信部121を介してネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送したストリーミングコンテンツに対する要請を受信する。制御部123は、受信されたストリーミングコンテンツに対する要請を通信部121を介してコンテンツ伝送制御装置130に対して伝達する。そして、制御部123は、伝達した要請に対する応答として、通信部121を介してコンテンツ伝送制御装置130からストリーミングコンテンツを受信する。
【0065】
制御部123は、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されているか否かを判断し、ストリーミングコンテンツに対するプレフィックスキャッシングのヒット可否を判断する。ここで、チャンクは、コンテンツ伝送制御装置130から受信したストリーミングコンテンツに対する分割されたデータである。この場合、制御部123は、プレフィックスキャッシングの信頼性を確保するために、受信されたストリーミングコンテンツに対する分割されたチャンクの所定の定数個が連続的にヒットされる場合、要請されたストリーミングコンテンツが同じものと判断できる。例えば、ローカルキャッシング装置120は、ストリーミングコンテンツに対する分割された3個のチャンクが連続的にヒットされる場合に、要請されたストリーミングコンテンツが同じものと判断できる。
【0066】
まず、以下では、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されている場合について説明する。
【0067】
もし、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されていたら、当該ストリーミングコンテンツは、コンテンツ伝送制御装置130から既に受信しているストリーミングコンテンツであって、ローカルキャッシング装置120は、既受信のストリーミングコンテンツを他の端末装置110に伝送できる。したがって、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されている場合、制御部123は、要請されたストリーミングコンテンツに対するプレフィックスキャッシングがヒットされたものと判断し、通信部121を介してコンテンツ伝送制御装置130にストリーミングコンテンツに対するキャッシングヒット通知を伝送する。
【0068】
制御部123は、通信部121を介してコンテンツ伝送制御装置130からストリーミングコンテンツに対する受信を中断する代わりに、通信部121を介してコンテンツ伝送制御装置130からチャンク識別子を受信する。そして、制御部123は、受信されたチャンク識別子を利用してストリーミングコンテンツを通信部121を介して端末装置110を伝送する。ここで、制御部123は、端末装置110からストリーミングコンテンツに対する中断要請を受信するまでストリーミングコンテンツを端末装置110に伝送できる。
【0069】
次に、以下では、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されていない場合について説明する。
【0070】
もし、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されていなければ、当該ストリーミングコンテンツは、どんな端末装置110からも要請されないストリーミングコンテンツであって、ローカルキャッシング装置120は、端末装置110にストリーミングコンテンツを提供するために、コンテンツ伝送制御装置130から新たにストリーミングコンテンツを受信する。したがって、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納部122に格納されていない場合、制御部123は、要請されたストリーミングコンテンツに対するプレフィックスキャッシングがミスされたものと判断し、受信中のストリーミングコンテンツの現時点を基準としてあらかじめ設定された時間分だけのストリーミングコンテンツを格納する。ここで、あらかじめ設定された時間は、受信されたストリーミングコンテンツに対する分割されたチャンクの所定の定数個が端末装置110を介して再生するのに所要される時間になり得るが、これに限定されるものではない。また、ここで、格納維持時間は、ローカルキャッシング装置120が格納されたストリーミングコンテンツをプレフィックスキャッシングし、端末装置110に伝達する場合、端末装置110のユーザがストリーミングコンテンツをリアルタイムで受信したものと認知するできる程度に長くない時間になり得るが、これに限定されず、ローカルキャッシング装置120の物理的環境が支援する限界に近い程度に長い時間になり得る。
【0071】
そして、制御部123は、端末装置110からストリーミングコンテンツに対する中断要請を受信するまで、通信部121を介してコンテンツ伝送制御装置130から受信したストリーミングコンテンツを端末装置110に伝達する。
【0072】
以下、本発明の一実施形態によるストリーミングコンテンツの伝送フローについて具体的に説明する。
【0073】
図4a及び
図4bは、本発明の一実施形態によるストリーミングコンテンツの伝送フローを示すための流れ図である。以下の説明では、説明の便宜のために、多数の端末装置110を第1端末装置110a〜第3端末装置110cに区分し、多数のローカルキャッシング装置120を第1ローカルキャッシング装置120a及び第2ローカルキャッシング装置120bに区分して説明する。
【0074】
また、第1端末装置110a〜第3端末装置110cは、同一のストリーミングコンテンツAを要請すると仮定する。さらに、ロードバランサー(Global Server Load Balancing、GSLB)によって第1端末装置110aと第2端末装置110bは、第1ローカルキャッシング装置120aと連結され、第3端末装置110cは、第2ローカルキャッシング装置120bと連結されると仮定する。
【0075】
なお、前記第1端末装置110a及び第2端末装置110bのストリーミングコンテンツAに対する要請は、第1ローカルキャッシング装置120a及びコンテンツ伝送制御装置130を経てコンテンツ提供サーバー140に伝送され、第3端末装置110cのストリーミングコンテンツAに対する要請は、第2ローカルキャッシング装置120b及びコンテンツ伝送制御装置130を経てコンテンツ提供サーバー140に伝送される。この際、第1、第2ローカルキャッシング装置120a、120b及びコンテンツ伝送制御装置130は、ネットワーク150を介してコンテンツ提供サーバー140に伝送される要請を横取りして受信できる。
【0076】
まず、以下では、第1端末装置110aについてストリーミングコンテンツAを提供するフローを説明する。
【0077】
図4aを参照すれば、第1端末装置110aは、ネットワーク150を介してコンテンツ提供サーバー140に対してストリーミングコンテンツAに対する要請を伝送し、第1ローカルキャッシング装置120aは、ネットワーク150をモニタリングし、第1端末装置110aが伝送したストリーミングコンテンツAに対する要請を受信する(S401)。
【0078】
第1ローカルキャッシング装置120aは、S401段階を通じて受信したストリーミングコンテンツAに対する要請をコンテンツ伝送制御装置130に伝達する(S403)。コンテンツ伝送制御装置130は、ネットワーク150をモニタリングするか、S403段階を通じて伝達されたストリーミングコンテンツAが既受信中であるか否かを判断するために、ストリーミングリスト132aにS403段階を通じて要請されたストリーミングコンテンツAが登録されているか否かを判断する(S405)。S405段階の判断結果、ストリーミングリスト132aに要請されたストリーミングコンテンツAが登録されていないので、コンテンツ伝送制御装置130は、ストリーミングコンテンツAが既受信中ではないものと判断し、コンテンツ提供サーバー140に対してストリーミングコンテンツAに対する要請を伝達する(S407)。
【0079】
コンテンツ提供サーバー140は、S407段階に対する応答として第1端末装置110aにストリーミングコンテンツを伝送し、コンテンツ伝送制御装置130は、ネットワーク150をモニタリングし、コンテンツ提供サーバー140が伝送したストリーミングコンテンツを受信する(S409)。
【0080】
コンテンツ伝送制御装置130は、ストリーミングリスト132aにS409段階を通じて受信したストリーミングコンテンツAを登録し、加入者情報132bにS401段階を通じてストリーミングコンテンツAを要請した第1端末装置110aを登録する(S411)。そして、コンテンツ伝送制御装置130は、S409段階を通じて受信するストリーミングコンテンツAを第1ローカルキャッシング装置120aに伝達する(S413)。
【0081】
第1ローカルキャッシング装置120aは、S413段階を通じて受信するストリーミングコンテンツAに対する分割されたチャンクに対応するチャンクが格納されているか否かを判断し、ストリーミングコンテンツAに対するプレフィックスキャッシングのヒット可否を判断する(S415)。S415段階の判断結果、ストリーミングコンテンツAに対する分割されたチャンクに対応するチャンクが格納されていないので、第1ローカルキャッシング装置120aは、プレフィックスキャッシングが欠落(miss)したものと判断し、S413段階を通じて受信中のストリーミングコンテンツAの現時点を基準としてあらかじめ設定された時間だけのストリーミングコンテンツAを格納する(S417)。S417段階で、第1ローカルキャッシング装置120aは、受信したストリーミングコンテンツAに対する分割されたチャンク3個分のストリーミングコンテンツAを格納すると仮定する。そして、第1ローカルキャッシング装置120aは、S413段階を通じて受信中のストリーミングコンテンツAを第1端末装置110aに伝達する(S419)。
【0082】
結果的に、第1端末装置110aは、ストリーミングコンテンツAをS401段階を通じて要請し、S419段階を通じて受信することによって、ストリーミングコンテンツAに対する要請から受信まで所要される時間は、T1になる。
【0083】
次に、
図4bを参照して、以下では、第2端末装置110bについてストリーミングコンテンツAを提供するフローを説明する。
【0084】
図4bを参照すれば、第2端末装置110bは、ネットワーク150を介してコンテンツ提供サーバー140に対してストリーミングコンテンツAに対する要請を伝送し、第1ローカルキャッシング装置120aは、ネットワーク150をモニタリングし、第2端末装置110bが伝送したストリーミングコンテンツAに対する要請を受信する(S421)。
【0085】
第1ローカルキャッシング装置120aは、S421段階を通じて受信したストリーミングコンテンツAに対する要請をコンテンツ伝送制御装置130に伝達する(S423)。
【0086】
コンテンツ伝送制御装置130は、ネットワーク150をモニタリングするか、S423段階を通じて伝達されたストリーミングコンテンツAが既受信中であるか否かを判断するために、ストリーミングリスト132aにS423段階を通じて要請されたストリーミングコンテンツAが登録されているか否かを判断する(S425)。S425段階の判断結果、ストリーミングリスト132aにストリーミングコンテンツAがS411段階を通じて登録されているので、コンテンツ伝送制御装置130は、ストリーミングコンテンツAが既受信中のものと判断し、加入者情報132bにS421段階を通じてストリーミングコンテンツAを要請した第2端末装置110bを登録する(S427)。そして、コンテンツ伝送制御装置130は、S409段階を通じて受信中のストリーミングコンテンツAを分岐し、分岐されたストリーミングコンテンツAをあらかじめ設定された時間だけ遅延させ、遅延されたストリーミングコンテンツAを第1ローカルキャッシング装置120aに伝達する(S429)。S429段階で、コンテンツ伝送制御装置130は、分岐されたストリーミングコンテンツAに対する分割された1つのチャンクを第2端末装置110bが再生するのに所要される時間だけ遅延させると仮定する。
【0087】
第1ローカルキャッシング装置120aは、S429段階を通じて受信するストリーミングコンテンツAに対する分割されたチャンクに対応するチャンクが格納されているか否かを判断し、ストリーミングコンテンツAに対するプレフィックスキャッシングのヒット可否を判断する(S431)。S431段階で、第1ローカルキャッシング装置120aは、プレフィックスキャッシングの信頼性を確保するために、S429段階を通じて受信したストリーミングコンテンツAに対する分割された3個のチャンクがヒットされる場合、ストリーミングコンテンツAが同じものと判断すると仮定する。S431段階の判断結果、ストリーミングコンテンツAに対する分割された3個のチャンクに対応する3個のチャンクがS417段階を通じて格納されているので、第1ローカルキャッシング装置120aは、プレフィックスキャッシングがヒットされたものと判断し、コンテンツ伝送制御装置130に対してストリーミングコンテンツAに対するキャッシングヒット通知を伝送する(S433)。
【0088】
コンテンツ伝送制御装置130は、S433段階を通じてストリーミングコンテンツAに対するキャッシングヒット通知を受信したので、S429段階を通じて伝達中の遅延されたストリーミングコンテンツAに対する伝達を中断する代わりに、遅延されたストリーミングコンテンツAに対する分割されたチャンクを識別するためのチャンク識別子を第1ローカルキャッシング装置120aに伝送する(S435)。
【0089】
第1ローカルキャッシング装置120aは、S435段階を通じて受信したチャンク識別子を利用してS417段階を通じて格納されたストリーミングコンテンツAを第2端末装置110bに伝送する(S437)。
【0090】
結果的に、第2端末装置110bは、ストリーミングコンテンツAをS421段階を通じて要請し、S437段階を通じて受信することによって、ストリーミングコンテンツAに対する要請から受信まで所要される時間は、T2になる。特に、第1端末装置110aに伝送中のストリーミングコンテンツAを第2端末装置にも伝送するところ、コンテンツ伝送制御装置130とコンテンツ提供サーバー140との間のトラフィックが減少し、S431段階でプレフィックスキャッシングがヒットすることによって、第1ローカルキャッシング装置120aとコンテンツ伝送制御装置130との間のトラフィックが減少する。したがって、全体的に、T2は、T1よりその所要時間が短い。
【0091】
また、以下では、第3端末装置110cについてストリーミングコンテンツAを提供するフローを説明する。
【0092】
第3端末装置110cは、ネットワーク150を介してコンテンツ提供サーバー140に対してストリーミングコンテンツAに対する要請を伝送し、第2ローカルキャッシング装置120bは、ネットワーク150をモニタリングし、第3端末装置110cが伝送したストリーミングコンテンツAに対する要請を受信する(S439)。
【0093】
第2ローカルキャッシング装置120bは、S441段階を通じて受信したストリーミングコンテンツAに対する要請をコンテンツ伝送制御装置130に伝達する(S441)。
【0094】
コンテンツ伝送制御装置130は、ネットワーク150をモニタリングするか、S431段階を通じて伝達されたストリーミングコンテンツAが既受信中であるか否かを判断するために、ストリーミングリスト132aにS441段階を通じて要請されたストリーミングコンテンツAが登録されているか否かを判断する(S443)。S443段階の判断結果、ストリーミングリスト132aにストリーミングコンテンツAがS411段階を通じて登録されているので、コンテンツ伝送制御装置130は、ストリーミングコンテンツAが既受信中のものと判断し、加入者情報132bにS439段階を通じてストリーミングコンテンツAを要請した第3端末装置110cを登録する(S445)。そして、コンテンツ伝送制御装置130は、S409段階を通じて受信中のストリーミングコンテンツAを分岐し、分岐されたストリーミングコンテンツAをあらかじめ設定された時間だけ遅延させ、遅延されたストリーミングコンテンツAを第2ローカルキャッシング装置120bに伝達する(S447)。S447段階で、コンテンツ伝送制御装置130は、分岐されたストリーミングコンテンツAに対する分割された1つのチャンクを第3端末装置110cが再生するのに所要される時間だけ遅延させると仮定する。
【0095】
第2ローカルキャッシング装置120bは、S447段階を通じて受信するストリーミングコンテンツAに対する分割されたチャンクに対応するチャンクが格納されているか否かを判断し、ストリーミングコンテンツAに対するプレフィックスキャッシングのヒット可否を判断する(S449)。S449段階の判断結果、ストリーミングコンテンツAに対する分割されたチャンクに対応するチャンクが格納されていないので、第2ローカルキャッシング装置120bは、プレフィックスキャッシングが欠落(miss)したものと判断し、S4段階を通じて受信中のストリーミングコンテンツAの現時点を基準としてあらかじめ設定された時間だけのストリーミングコンテンツAを格納する(S451)。S415段階で、第2ローカルキャッシング装置120bは、受信したストリーミングコンテンツAに対する分割されたチャンク3個分のストリーミングコンテンツAを格納すると仮定する。そして、第2ローカルキャッシング装置120bは、S447段階を通じて受信中のストリーミングコンテンツAを第3端末装置110cに伝達する(S453)。
【0096】
結果的に、第3端末装置110cは、ストリーミングコンテンツAをS439段階を通じて要請し、S453段階を通じて受信することによって、ストリーミングコンテンツAに対する要請から受信まで所要される時間は、T3になる。特に、第1端末装置110aに伝送中のストリーミングコンテンツAを第3端末装置にも伝送するところ、コンテンツ伝送制御装置130とコンテンツ提供サーバー140との間のトラフィックは減少するが、S449段階でプレフィックスキャッシングがミスすることによって、第2ローカルキャッシング装置120bとコンテンツ伝送制御装置130との間のトラフィックは減少する。したがって、全体的にT3はT1よりはその所要時間が短いが、T2よりはその所要時間が長い。
【0097】
以下では、本発明の一実施形態によるコンテンツ伝送制御装置130のストリーミングコンテンツを提供する方法について具体的に説明する。
【0098】
図5は、本発明の一実施形態によるコンテンツ伝送制御装置130のストリーミングコンテンツを提供する方法を説明するための流れ図である。
【0099】
図5を参照すれば、コンテンツ伝送制御装置130は、ネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送したストリーミングコンテンツに対する要請を受信するか、ローカルキャッシング装置120からストリーミングコンテンツに対する要請を受信する(S501)。
【0100】
コンテンツ伝送制御装置130は、S501段階を通じて要請されたストリーミングコンテンツが既受信中であるか否かを判断するために、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されているのか判断する(S503)。
【0101】
S503段階で判断した結果、ストリーミングリスト132aに要請されたストリーミングコンテンツ登録されていない場合、コンテンツ伝送制御装置130は、要請されたストリーミングコンテンツが既受信中ではないものと判断し、コンテンツ提供サーバー140からストリーミングコンテンツを受信し、ローカルキャッシング装置120に伝達する(S505)。
【0102】
なお、S503段階で判断した結果、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されている場合、コンテンツ伝送制御装置130は、要請されたストリーミングコンテンツが既受信中のものと判断し、コンテンツ提供サーバー140から既受信中のストリーミングコンテンツを分岐し、分岐されたストリーミングコンテンツをあらかじめ設定された時間だけ遅延させ、ローカルキャッシング装置120に伝達する(S507)。ここで、あらかじめ設定された時間は、要請されたストリーミングコンテンツに対する分割された1つのチャンクを端末装置110が再生するのに所要される時間にあることができるが、これに限定されるものではない。
【0103】
図6は、本発明の一実施形態によるコンテンツ伝送制御装置130のストリーミングコンテンツを提供する方法を説明するための他の流れ図である。
【0104】
図6を参照すれば、コンテンツ伝送制御装置130は、ネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送したストリーミングコンテンツに対する要請を受信するか、ローカルキャッシング装置120からストリーミングコンテンツに対する要請を受信する(S601)。
【0105】
コンテンツ伝送制御装置130は、S601段階を通じて要請されたストリーミングコンテンツが既受信中であるか否かを判断するために、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されているか否かを判断する(S603)。
【0106】
S603段階で判断した結果、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されていない場合、コンテンツ伝送制御装置130は、要請されたストリーミングコンテンツが既受信中ではないものと判断し、S601段階を通じて受信したストリーミングコンテンツに対する要請をコンテンツ提供サーバー140に伝達する(S605)。
【0107】
コンテンツ伝送制御装置130は、ネットワーク150をモニタリングし、コンテンツ提供サーバー140が端末装置110に伝送するストリーミングコンテンツを受信する(S607)。そして、コンテンツ伝送制御装置130は、ストリーミングリスト132aにS607段階を通じて受信したストリーミングコンテンツを登録し、加入者情報132bにストリーミングコンテンツを要請した端末装置110を登録する(S609)。
【0108】
そして、コンテンツ伝送制御装置130は、S607段階を通じて受信するストリーミングコンテンツをローカルキャッシング装置120に伝達する(S611)。
【0109】
なお、S603段階で判断した結果、ストリーミングリスト132aに要請されたストリーミングコンテンツが登録されている場合、コンテンツ伝送制御装置130は、要請されたストリーミングコンテンツが既受信中のものと判断し、加入者情報132bにストリーミングコンテンツを要請した端末装置110を登録する(S613)。
【0110】
コンテンツ伝送制御装置130は、既受信中の要請されたストリーミングコンテンツを分岐し、分岐されたストリーミングコンテンツをあらかじめ設定された時間だけ遅延させる(S615)。そして、コンテンツ伝送制御装置130は、S615段階を通じて遅延されたストリーミングコンテンツをローカルキャッシング装置120に対して伝達する(S617)。
【0111】
さらに、コンテンツ伝送制御装置130は、ローカルキャッシング装置120からキャッシングヒット通知を受信したかを判断し、ローカルキャッシング装置120のストリーミングコンテンツに対するプレフィックスキャッシングヒット可否を判断する(S619)。
【0112】
S619段階で判断した結果、キャッシングヒット通知を受信した場合、コンテンツ伝送制御装置130は、ローカルキャッシング装置120のストリーミングコンテンツに対するプレフィックスキャッシングはヒットされたものと判断し、遅延されたストリーミングコンテンツに対する伝達を中断する代わりに、ローカルキャッシング装置120からストリーミングコンテンツに対する中断要請を受信するまで、遅延されたストリーミングコンテンツに対する分割されたチャンクを識別するためのチャンク識別子をローカルキャッシング装置120に伝送する(S621)。
【0113】
図7は、本発明の一実施形態によるコンテンツ伝送制御装置130のストリーミングコンテンツ提供を中断する方法を説明するための流れ図である。
【0114】
図7を参照すれば、コンテンツ伝送制御装置130は、ネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送したストリーミングコンテンツに対する中断要請を受信する(S701)。
【0115】
コンテンツ伝送制御装置130は、ローカルキャッシング装置120に対して伝送中のストリーミングコンテンツまたはチャンク識別子の伝送を中断する(S703)。そして、コンテンツ伝送制御装置130は、加入者情報132bに登録されたS701段階の中断を要請した端末装置110を削除する(S705)。
【0116】
コンテンツ伝送制御装置130は、S705段階の削除結果、加入者情報132bに登録されたS701段階の中断が要請されたストリーミングコンテンツを伝達される端末装置110の数が0であるか否かを判断する(S707)。
【0117】
S707段階の判断結果、中断が要請されたストリーミングコンテンツを伝達される端末装置110の数が0より大きい場合、コンテンツ伝送制御装置130は、以下の段階を行わずに待機する。
【0118】
なお、S707段階の判断結果、中断が要請されたストリーミングコンテンツを伝達される端末装置110の数が0である場合、コンテンツ伝送制御装置130は、コンテンツ提供サーバー140から受信中の中断が要請されたストリーミングコンテンツの受信を中断する(S709)。
【0119】
そして、コンテンツ伝送制御装置130は、ストリーミングリスト132aに登録された中断が要請されたストリーミングコンテンツを削除する(S711)。
【0120】
以下、本発明の一実施形態によるローカルキャッシング装置120のストリーミングコンテンツを提供する方法について具体的に説明する。
【0121】
図8は、本発明の一実施形態によるローカルキャッシング装置120のストリーミングコンテンツを提供する方法を説明するための流れ図である。
【0122】
図8を参照すれば、ローカルキャッシング装置120は、ネットワーク150をモニタリングし、端末装置110がコンテンツ提供サーバー140に伝送したストリーミングコンテンツに対する要請を受信する(S801)。ローカルキャッシング装置120は、S801段階を通じて受信したストリーミングコンテンツに対する要請をコンテンツ伝送制御装置130に伝達する(S803)。そして、ローカルキャッシング装置120は、S803段階の要請伝達に対する応答として、コンテンツ伝送制御装置130からストリーミングコンテンツを受信する(S805)。
【0123】
ローカルキャッシング装置120は、S805段階を通じて受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納されているか否かを判断し、ストリーミングコンテンツに対するプレフィックスキャッシングのヒット可否を判断する(S807)。ここで、ローカルキャッシング装置120は、プレフィックスキャッシングの信頼性を確保するために、S805段階を通じて受信したストリーミングコンテンツに対する分割されたチャンクの所定の定数個が連続的にヒットされる場合、要請されたストリーミングコンテンツが同じものと判断できる。
【0124】
S807段階の判断結果、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納されていない場合、ローカルキャッシング装置120は、要請されたストリーミングコンテンツに対するプレフィックスキャッシングがミスされたものと判断して、S805段階を通じて受信中のストリーミングコンテンツの現時点を基準としてあらかじめ設定された時間だけのストリーミングコンテンツを格納する。ここで、あらかじめ設定された時間は、S805段階を通じて受信されたストリーミングコンテンツに対する分割されたチャンクの所定の定数個が端末装置110を介して再生するのに所要される時間になり得るが、これに限定されるものではない。また、ここで、格納の維持時間は、ローカルキャッシング装置120が格納されたストリーミングコンテンツをプレフィックスキャッシングし、端末装置110に伝達する場合、端末装置110のユーザがストリーミングコンテンツをリアルタイムで受信したものと認知できる程度に長くない時間になり得るが、これに限定されず、ローカルキャッシング装置120の物理的環境が支援する限界に近い程度に長い時間になり得る。そして、ローカルキャッシング装置120は、端末装置110からストリーミングコンテンツに対する中断要請を受信するまで、S805段階を通じて受信されたストリーミングコンテンツを端末装置110に伝達する(S811)。
【0125】
なお、S807段階の判断結果、受信されたストリーミングコンテンツに対する分割されたチャンクに対応するチャンクが格納されている場合、ローカルキャッシング装置120は、要請されたストリーミングコンテンツに対するプレフィックスキャッシングがヒットされたものと判断し、コンテンツ伝送制御装置130にストリーミングコンテンツに対するキャッシングヒット通知を伝送する。ローカルキャッシング装置120は、ストリーミングコンテンツに対する受信を中断する代わりに、コンテンツ伝送制御装置130からチャンク識別子を受信する(S815)。そして、ローカルキャッシング装置120は、S815段階を通じて受信されたチャンク識別子を利用してストリーミングコンテンツを端末装置110に伝送する(S817)。ここで、ローカルキャッシング装置120は、端末装置110からストリーミングコンテンツに対する中断要請を受信するまでストリーミングコンテンツを端末装置110に伝送できる。
【0126】
前述したように、本発明の実施形態によるコンテンツ伝送システム100は、コンテンツ伝送サービスを提供するにあたって、ローカルキャッシング装置120に対してスプリッティング(Splitting)とともにキャッシング(Caching)を許容することによって、コンテンツの重複伝送によるネットワークトラフィック負荷及びコンテンツ提供者に対するトラフィック集中を減少させることができる効果がある。
【0127】
特に、本発明の実施形態によるコンテンツ伝送システム100は、コンテンツ伝送制御装置130が既受信中のストリーミングコンテンツを分岐し、分岐されたストリーミングコンテンツを遅延させ、ローカルキャッシング装置120に伝達することによって、ローカルキャッシング装置120のプレフィックスキャッシング(Prefix caching)を利用した端末装置110に対するストリーミングコンテンツの伝送を許容する。
【0128】
本発明による実施形態は、多様な手段、例えば、ハードウェア、ファームウェア(firmware)、ソフトウェアまたはそれらの結合等によって具現され得る。ハードウェアによる具現の場合、本発明の一実施形態は、1つまたはそれ以上のASICs(application specific integrated circuits)、DSPs(digital signal processors)、DSPDs(digital signal processing devices)、PLDs(programmable logic devices)、FPGAs(field programmablegate arrays)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ等によって具現され得る。
【0129】
また、ファームウェアやソフトウェアによる具現の場合、本発明の一実施形態は、以上で説明された機能または動作を行うモジュール、手続、関数等の形態で具現され、多様なコンピュータ手段を介して読み取り可能な記録媒体に記録され得る。ここで、記録媒体は、プログラム命令、データファイル、データ構造等を単独でまたは組み合わせて含むことができる。記録媒体に記録されるプログラム命令は、本発明のために特別に設計され構成されたものであるか、コンピュータソフトウェア当業者に公知されて使用可能なものであってもよい。例えば、記録媒体は、ハードディスク、プロッピィーディスク及び磁気テープのような磁気媒体(Magnetic Media)、CD−ROM(Compact Disk Read Only Memory)、DVD(Digital Video Disk)のような光記録媒体(Optical Media)、フロプチカルディスク(Floptical Disk)のような磁気−光媒体(Magneto−Optical Media)、及びロム(ROM)、ラム(RAM)、フラッシュメモリ等のようなプログラム命令を格納し実行するように特別に構成されたハードウェア装置を含む。プログラム命令の例には、コンパイラーによって作われるもののような機械語コードだけでなく、インタプリター等を使用してコンピュータによって実行され得る高級言語コードを含むことができる。このようなハードウェア装置は、本発明の動作を行うために1つ以上のソフトウェアモジュールとして作動するように構成され得、その逆も同様である。
【0130】
以上のように、本明細書と図面には、本発明の好ましい実施形態について開示したが、これに開示された実施形態以外にも、本発明の技術的思想に基づく他の変形例が実施可能であることは、本発明の属する技術分野における通常の知識を有する者に自明である。また、本明細書と図面で特定の用語が使用されたが、これは、ただ本発明の技術内容を容易に説明し、発明の理解を助けるための一般的な意味として使用されたものであって、本発明の範囲を限定しようとするものではない。したがって、前述した詳細な説明は、すべての面で制限的に解釈されてはならず、例示的なものと考慮しなければならない。本発明の範囲は、添付の請求項の合理的解釈によって選定されなければならず、本発明の等価的範囲内でのすべての変更は、本発明の範囲に含まれる。
【0131】
なお、本発明による装置や端末は、1つ以上のプロセッサにより前述した機能とプロセスを行うようにする命令によって駆動され得る。例えば、そのような命令としては、例えばJava Script(登録商標)やECMA Script命令等のスクリプト命令のような解釈される命令や実行可能なコードあるいはコンピュータで読み取り可能な媒体に格納されるその他の命令が含まれることができる。さらに、本発明による装置は、サーバーファーム(Server Farm)のように、ネットワークにわたって分散型で具現され得、あるいは単一のコンピュータ装置で具現され得る。
【0132】
また、本発明による装置に搭載され、本発明による方法を実行するコンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、スクリプトあるいはコードとして知られている)は、コンパイルされるか、解釈された言語や先験的あるいは手続的言語を含むプログラミング言語のいずれの形態でも作成され得、独立型プログラムやモジュール、コンポネント、サブルーチンあるいはコンピュータ環境で使用するに適した他のユニットを含んでいずれの形態でも展開され得る。コンピュータプログラムは、ファイルシステムのファイルに必ず対応するものではない。プログラムは、要請されたプログラムに提供される単一ファイル内に、あるいは多重の相互作用するファイル(例えば、1つ以上のモジュール、下位プログラムあるいはコードの一部を格納するファイル)内に、あるいは他のプログラムやデータを保有するファイルの一部(例えば、マークアップ言語文書内に格納される1つ以上のスクリプト)内に格納され得る。コンピュータプログラムは、1つのサイトに位置するか、または複数のサイトにわたって分散し、通信ネットワークによって相互接続された多重コンピュータや1つのコンピュータ上で実行されるように展開され得る。
【0133】
なお、本発明による実施形態を説明するにあたって、特定の手順で図面で動作を描いているが、これは、好ましい結果を得るために図示されたその特定の手順や順次な手順にそのような動作を行わなければならないか、すべての図示された動作が行わなければならないものと理解してはならない。特定の場合、マルチタスキングと並列プロセッシングが有利であることができる。また、前述した実施形態の多様なシステムコンポネントの分離は、そのような分離をすべての実施形態で要求するものと理解されてはならず、説明したプログラムコンポネントとシステムは、一般的に単一のソフトウェア製品に一緒に統合されるか、多重ソフトウェア製品にパッケージングされ得るという点を理解しなければならない。