(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
(第1の実施形態)
以下、図面を参照しながら本発明の第1の実施形態について説明する。
図1は、本実施形態に係る放送通信連携システムB1の構成を示す概略ブロック図である。放送通信連携システムB1は、中継装置10と、端末装置20と、DNSサーバ30と、上位DNSサーバ40と、放送設備50と、を含んで構成される。中継装置10、端末装置20、DNSサーバ30及び上位DNSサーバ40は、ネットワークNWを介して接続される。ネットワークNWは、無線または有線で相互に各種のデータを双方向に伝送できる通信伝送路である。ネットワークNWは、例えば、インターネット、公衆無線通信網などの高域通信網、構内通信網(LAN:Local Area Network)、専用回線のいずれか、またはこれらを任意に組み合わせてなる。以下の説明では、ネットワークNWを介して各種のデータを伝送(または、送信、受信、搬送)することを、通信で伝送(または、送信、受信、搬送)すると呼ぶ。なお、
図1に示す例では。中継装置10、端末装置20、DNSサーバ30、上位DNSサーバ40、および放送設備50の個数は、各1個であるが、一般には複数個である。
【0020】
放送設備50は、配信データと、配信データの受信サービスの制御に用いる制御情報を取得する。放送設備50は、配信データと制御情報を多重化してなる多重化データを所定の変調方式を用いて変調する。放送設備50は、変調して得られた放送信号を放送伝送路BTに送信する。放送伝送路BTは、主に無線で各種のデータを一方向で同時に多数の受信装置に伝送できる伝送路である。放送伝送路BTは、例えば、所定の周波数帯域の成分を有する放送波である。放送伝送路BTの一部には、専用回線、LANなどの有線もしくは無線のネットワークが含まれてもよい。以下の説明では、放送伝送路BTを介して各種のデータを伝送(または、送信、受信、搬送)することを、放送で伝送(または、送信、受信、搬送)すると呼ぶ。
【0021】
配信データには、放送サービスの構成要素である各種のコンテンツのデータの一部または全部が含まれる。配信データの構成要素として、例えば、番組本編の映像データならびに音声データとは別個の配信データを格納したデータファイルが含まれる。別個の配信データは、番組と付随した配信データであってもよいし、番組と独立に提供される配信データであってもよい。番組と独立に提供される配信データとして、例えば、災害情報、交通情報、気象情報、行政情報など、あらゆるユーザが必要とする情報もしくは関心を有する情報が用いられる。以下、このデータファイルを配信ファイルと呼ぶ。配信ファイルには、例えば、アプリケーションが格納される。
【0022】
制御情報は、コンテンツの受信に係る配信データの構成要素を表す情報である。制御情報には、配信データの取得先を示す取得先情報が含まれる。制御情報は、例えば、配信データの構成を示すMMT−SI(MMT−Signaling Information)で表され、アプリケーションが提供される場合には、アプリケーション情報テーブル(AIT:Application Information Table)、データディレクトリ管理テーブル(DDMT:Data Directory Management Table)、データアセット管理テーブル(DAMT:Data Asset Management Table)が含まれる。AITは、アプリケーションの取得、そのアプリケーションに記述された処理の実行を制御するための情報を表すデータである。AITには、取得先情報として、アプリケーションの所在を示すロケーション情報が含まれる。ロケーション情報として、そのアプリケーションを通信で送信するサーバ装置上のアプリケーションエントリポイントとなるファイルのURLが指定される。URLは、完全修飾ドメイン名(FQDN:Fully Qualified Domain Name)およびパス名を含む。FQDNは、そのアプリケーションを格納する配信ファイルを保管する機器の名称を表すホスト情報である。FQDNは、ホスト名とドメイン名とから構成される。パス名は、その機器において、そのアプリケーションを格納するデータファイルのファイル名と、格納先のディレクトリを表す情報である。DDMTにはアプリケーションを構成する個別ファイルのパス名をリスト化した情報が含まれ、DAMTにはそれらのファイルをMMTP(MPEG Media Transport Protocol)パケットから分離するための処理に必要な情報が含まれる。MMTPパケットとは、メディアトランスポート方式の一つであるMMTPで規定されたデータパケットである。
【0023】
中継装置10は、放送伝送路BTを介して搬送される放送信号を受信信号として受信する。中継装置10は、受信信号を復調して得られる多重化データから配信ファイルと制御情報に分離する。中継装置10は、分離した制御情報を解析して配信ファイルを通信で送信する機器のホスト情報を取得する。中継装置10は、取得したホスト情報と、分離した配信ファイルを送信する機器のIPアドレスとを対応付けてなるDNS(Domain Name System)情報をDNSサーバ30に送信する。
図1に示す例では、そのIPアドレスは、ネットワークNWにおいて中継装置10のWebSocketサーバ部107を識別するための情報である。
【0024】
端末装置20は、各種のアプリケーションに記述された命令に係る処理を実行するウェブ標準のブラウザの機能を有する機器である。ウェブ標準のブラウザの機能には、名前解決と所定のプロトコル(例えば、HTTP(Hyper Text Transfer Protocol、ハイパーテキスト転送プロトコル)を用いたデータの送受信が含まれる。
図1に示す例では、名前解決として、端末装置20は、配信ファイルの取得先を示すホスト情報に対応するアドレスについて、アドレス要求を所定のDNSサーバ30に送信する。端末装置20は、その応答として当該ホスト情報に対応するIPアドレスを受信する。データ受信として、端末装置20は、受信したIPアドレスで特定される取得先として中継装置10のWebSocketサーバ部107に接続し、WebSocketサーバ部107から配信ファイルを受信する。
なお、端末装置20は、パーソナルコンピュータ、多機能携帯電話機、タブレット端末装置などの情報機器に限られず、空調機器、調理機器などの事業用機器、家庭電化機器であってもよいし、温度、圧力など各種のセンサ機器などであってもよい。
【0025】
DNSサーバ30は、中継装置10から受信するDNS情報を蓄積してDNSレコード301を形成する。DNSサーバ30は、DNSレコード301を参照して、アドレス要求で指定されたホスト情報に対応するIPアドレスを特定する。DNSサーバ30は、特定したIPアドレスをアドレス要求の送信元の端末装置20に送信する。
【0026】
上位DNSサーバ40は、DNSサーバ30が位置するネットワークよりも上位のネットワークに位置するDNSサーバである。例えば、DNSサーバ30が企業内のローカルネットワーク内に位置する場合には、上位DNSサーバ40は、その企業が契約するインターネットサービスプロバイダのネットワーク内に位置する。DNSサーバ30は、端末装置20から受信したアドレス要求のホスト情報が自身のDNSレコード301に含まれない場合、上位DNSサーバ40に対してアドレス要求を送信し、その結果としてホスト情報に対応するIPアドレスを示すアドレスを取得し、自身のDNSレコード301に蓄積するとともに端末装置20にそのアドレス情報を回答する。
【0027】
(中継装置の構成)
次に、本実施形態に係る中継装置10の構成について説明する。
中継装置10は、放送受信部101と、復調部102と、多重分離部103と、ファイルキャッシュ部104と、制御情報解析部105と、DNSインタフェース部106と、WebSocketサーバ部107と、通信部108と、を含んで構成される。
【0028】
放送受信部101は、放送伝送路BTとして所定の周波数帯域の放送波で搬送される放送信号を受信する。放送波の周波数帯域は予めチャネル番号ごとに対応付けられ、ユーザの操作に応じた操作信号に基づいて特定(選局)されうる。放送受信部101は、受信した放送信号を受信信号として復調部102に出力する。放送受信部101は、例えば、チューナである。
【0029】
復調部102は、放送受信部101から入力された受信信号について復調処理を行い、復調処理によって得られた符号化信号について復号処理を行う。復調部102は、復号処理によって得られた多重化信号を多重分離部103に出力する。
【0030】
多重分離部103は、復調部102から入力された多重化信号から制御情報と配信データを分離する。多重分離部103は、分離した制御信号を制御情報解析部105に出力し、配信データのうち所定の配信ファイルをファイルキャッシュ部104に出力する。
ファイルキャッシュ部104は、多重分離部103から入力された配信ファイルを一時的に記憶する。ファイルキャッシュ部104は、記憶領域が階層化されたファイルシステムを備える。配信ファイルは、URLに含まれるパス名で指定されるディレクトリで示される記憶領域に格納される。ファイルキャッシュ部104には、既に記憶された配信ファイルと同一のファイル名を有する配信ファイルが新たに入力される場合がある。その場合には、ファイルキャッシュ部104は、既に記憶された配信ファイルを、新たに入力される配信ファイルに置き換える。配信ファイルに有効期限が設定されている場合には、ファイルキャッシュ部104は、有効期限が到来したとき、その配信ファイルを消去する。
【0031】
制御情報解析部105は、多重分離部103から入力される制御情報を解析し、配信ファイルの送信元のURLを取得し、URLで表されるFQDNをホスト情報として抽出する。制御情報解析部105は、抽出したホスト情報をDNSインタフェース部106に出力する。
DNSインタフェース部106は、制御情報解析部105から入力されたホスト情報と配信ファイルの送信元であるWebSocketサーバ部107のIPアドレスとを対応付けてDNS情報を生成する。
図1に示す例では、DNSインタフェース部106は、生成したDNS情報をDNSサーバ30に通信部108を介して送信する。DNSインタフェース部106とDNSサーバ30との間の通信方式としていかなる方式も利用可能である。但し、著しい仕様変更を伴わずにDNSサーバ30として既存のDNSサーバが利用可能であって、セキュリティが確保されることが望ましい。例えば、DNSサーバ30との間の通信において、所定のプロトコル(例えば、SSH(Secure Shell)プロトコル)が用いられてもよい。また、DNSインタフェース部106は、通信部108を介さずDNSサーバ30とシリアルポートなどを介して一対一で直接接続されてもよい。
【0032】
WebSocketサーバ部107は、端末装置20からの送信要求に含まれるパス名で指定される配信ファイルをファイルキャッシュ部104から取得し、取得した配信ファイルを端末装置20にWebSocketプロトコルを用いて送信する。より具体的には、WebSocketサーバ部107は、端末装置20から通信部108を介して接続要求を受信するとき、端末装置20に確認応答(ACK)を送信する。その後、端末装置20から確認応答を受信すると、端末装置20との間で接続が確立する。
WebSocketサーバ部107は、端末装置20から通信部108を介して送信要求を受信するとき、送信要求に含まれるパス名で指定される配信ファイルをファイルキャッシュ部104から読み取る。WebSocketサーバ部107は、接続した端末装置20に、読み取った配信ファイルを送信する。そこで、WebSocketサーバ部107は、ファイルキャッシュ部104に記憶された配信ファイルの一部または全部が更新されているか否かを所定周期(例えば、1〜15分毎)、あるいは更新後直ちに検出する。更新とは、新たに配信ファイルが記憶されることと、既存の配信ファイルとファイル名が同一であるが新たに入力される配信ファイルに置き換えられることとを含む。WebSocketサーバ部107は、その都度更新された配信ファイルをファイルキャッシュ部104から読み取り、端末装置20に読み取った配信ファイルを送信する(プッシュ配信)。
【0033】
通信部108は、ネットワークNWに接続された他の機器との間で各種のデータを送受信する。通信部108は、例えば、IP通信インタフェースである。
【0034】
(端末装置の構成)
次に、端末装置20の構成について説明する。
端末装置20は、アプリケーション実行部201と、通信部203と、を含んで構成される。アプリケーション実行部201は、各種のアプリケーションを取得し、取得したアプリケーションに記述された命令で指示される処理の実行を制御する。アプリケーション実行部201は、例えば、端末装置20の記憶部(図示せず)に予め記憶された記録媒体ウェブブラウザのプログラムを読み込み、そのプログラムで指示される処理を行う制御デバイスを含んで構成される。制御デバイスは、例えば、中央演算装置(CPU:Central Processing Unit)である。ウェブブラウザのプログラムは、アプリケーションを解析する機能と、国際標準において規定された機能を実現するAPI関数を含む。それらの機能には、所定のモデリング言語(例えば、HTML)で記述されたアプリケーションを解析して指示された命令を特定する解析機能、その命令に係る処理の制御機能、ネットワークNWに接続された機器との間で所定のプロトコルを用いた各種のデータの送受信機能、取得したデータの提示機能およびユーザの操作に応じた操作信号の受付機能などが含まれる。送受信機能には、WebSocketクライアント部202の機能(後述)が含まれる。WebSocketクライアント部202が取得した配信ファイルには、アプリケーションを構成するファイルやそのアプリケーションで処理対象となるデータを格納したデータファイルが含まれることがある。アプリケーション実行部201は、そのアプリケーションを解析して指示された命令に係る処理を制御する。但し、放送で受信した受信信号から分離された配信ファイルや制御情報の取得機能、制御情報の解析機能は含まれない。
【0035】
WebSocketクライアント部202は、所定のホスト情報に対応するIPアドレスの要求を示すアドレス要求をDNSサーバ30に通信部203を介して送信する(名前解決)。ホスト情報は、配信ファイルの取得先情報を示すURLを構成するFQDNで表わされる。WebSocketクライアント部202には、アドレス要求に対する応答として、DNSサーバ30からIPアドレスを受信する。DNSサーバ30のIPアドレスとして、ネットワークNWに接続時に受信したDHCP(Dynamic Host Configuration Protocol)通知やユーザの手動設定により取得したIPアドレスを、予め端末装置20の記憶部に記憶させておく。WebSocketクライアント部202は、そのIPアドレスを端末装置20に予めインストールしておいたOSの設定情報から抽出してもよい。
【0036】
WebSocketクライアント部202は、受信したIPアドレスで特定される中継装置10からWebSocketプロトコルを用い、URLを構成するパス名で指定される配信ファイルを受信する。より具体的には、WebSocketクライアント部202は、受信したIPアドレスで特定される中継装置10のWebSocketサーバ部107に、通信部203を介してTCP(Transmission Control Protocol)の接続要求を送信する。WebSocketクライアント部202は、WebSocketサーバ部107から接続要求に対する確認応答を受信するとき、さらに、その確認応答に対する確認応答をWebSocketサーバ部107に送信する。 その後、WebSocketクライアント部202は、HTTPのGETメソッドを用いて上述の配信ファイルの送信要求を、中継装置10のWebSocketサーバ部107に通信部203を介して送信する。この時、WebSocketサーバ部107がGETメソッドの要求メッセージ内にUpgrade:websocketの一行を記述して送信し、かつ、WebSocketサーバ部107からの応答メッセージにもUpgrade:websocketが含まれる場合に、WebSocketクライアント部202とWebSocketサーバ部107によるWebSocketセッションが確立する。WebSocketセッションが確立した後、WebSocketクライアント部202は、WebSocketサーバ部107から送信要求のURLに含めたパス名で特定される配信ファイルを受信する。
これら一連の手続きは、アプリケーションに記述されたAPI関数の呼び出し、例えば、new WebSocket(“ws://www.example.com/dir1/file1.json”);により実現される。
【0037】
通信部203は、ネットワークNWに接続された他の機器との間で各種のデータを送受信する。通信部203は、例えば、通信インタフェースである。
【0038】
(WebSocketクライアント部の動作)
次に、WebSocketクライアント部202の動作について、配信ファイルのURLがws://www.example.com/dir1/file1.jsonである場合を例にして説明する。
図2は、従来の通信システムB2の一構成例を示すブロック図である。通信システムB2は、端末装置20、DNSサーバ30およびWebサーバ60がネットワークNWを介して相互に接続されて通信システムB2が形成されている。Webサーバ60は、配信ファイルを送信するWebSocketサーバ部(図示せず)を備える。DNSサーバ30には、Webサーバ60のFQDNとIPアドレスを対応付けて予め登録されている。
図2に示す例では、Webサーバ60のFQDN、IPアドレスは、それぞれwww.example.com、アドレスAである。このWebSocketサーバ部は、中継装置10のWebSocketサーバ部107と同様に配信ファイルを送信する構成を備える。Webサーバ60は、サービス事業者、コンテンツ提供者等が管理するサーバ装置である。但し、通信システムB2には、本実施形態に係る中継装置10がネットワークNWならびにそれより上位の階層のネットワーク(図示せず)にも接続されていないことを前提とする。以下、簡単のためDNSサーバ30にwww.example.comのホスト情報が既にキャッシュされており、上位DNSサーバ40へのアドレス要求が発生しないことを仮定する。
【0039】
WebSocketクライアント部202は、名前解決において、ホスト情報としてwww.example.comに対応するアドレス要求をDNSサーバ30に送信し、その応答としてDNSサーバ30からアドレスAを受信する。WebSocketクライアント部202は、受信したアドレスAで指定されるWebサーバ60に接続要求を送信する。WebSocketクライアント部202は、Webサーバ60との間でTCP接続が確立した後、パス名dir1/file1.jsonで指定される配信ファイルfile1.jsonの送信要求をWebサーバ60に送信する。WebSocketクライアント部202は、Webサーバ60から配信ファイルfile1.jsonのデータを受信する。WebSocketクライアント部202は、ウェブ標準の機能のみを具備し、放送受信に必要な機能を具備しないため、放送で受信した受信信号に基づく各種のデータの取得することができない。
【0040】
放送伝送路BTを介して伝送される配信ファイルを取得するためには、WebSocketクライアント部202は、本実施形態に係る中継装置10にアクセスする。WebSocketクライアント部202の動作について、
図3に示すように、端末装置20がネットワークNWを介して本実施形態に係る中継装置10を介して接続される場合を例にして説明する。この接続により、放送通信連携システムB1が形成される。
図3に示す例では、WebSocketサーバ部107のIPアドレスがアドレスBである。
【0041】
中継装置10の制御情報解析部105は、放送伝送路BTで搬送される多重化信号から分離された制御情報を解析し、配信ファイルの送信元のURLとしてws://www.example.com/dir1/file1.jsonを取得する。制御情報解析部105は、URLからホスト情報としてwww.example.comを抽出する。DNSインタフェース部106は、ホスト情報www.example.comと配信ファイルの自身のWebSocketサーバ部107のIPアドレスであるアドレスBとを対応付けてなるDNS情報をDNSサーバ30に登録する。また、ファイルキャッシュ部104には、多重化信号から分離された配信ファイルfile1.jsonが公開ディレクトリ/dir1に記憶される。
【0042】
WebSocketクライアント部202は、名前解決において、ホスト情報としてwww.example.comに対応するアドレス要求をDNSサーバ30に送信し、その応答としてDNSサーバ30からアドレスBを受信する。WebSocketクライアント部202は、受信したアドレスBで指定される中継装置10のWebSocketサーバ部107に接続要求を送信する。WebSocketクライアント部202は、WebSocketサーバ部107との間で接続が確立した後、パス名/dir1/file1.jsonで指定される配信ファイルfile1.jsonの送信要求をWebSocketサーバ部107に送信する。WebSocketクライアント部202は、WebSocketサーバ部107から配信ファイルfile1.jsonに格納されたデータを受信する。その後、配信ファイルfile1.jsonが更新される都度、WebSocketクライアント部202は、更新された配信ファイルfile1.jsonを受信する。従って、ウェブ標準の機能を有するWebSocketクライアント部202であっても、放送で伝送される配信ファイルfile1.jsonを取得することができる。
【0043】
(ネットワーク上の配置例)
本実施形態に係る中継装置10は、様々な形態のネットワークに配置されてもよい。中継装置10は、配置されたネットワーク、またはそのネットワークよりも下位の階層のネットワークに接続された端末装置20に放送で受信した配信ファイルを提供することができる。
図4は、本実施形態に係る中継装置10の種々のネットワーク上の配置例を示す図である。
図4に示す例では、5個の中継装置10−1〜10−4、10−6が、それぞれネットワークNW1〜4、NW6に接続されている。ネットワークNW1は、ネットワークNW2〜4、NW5を相互に接続するインターネットである。これらの接続により放送連携通信システムBXが形成される。
【0044】
また、端末装置20−2a、20−2bはネットワークNW2に、端末装置20−3a、20−3bはネットワークNW3に、端末装置20−4a、20−4b、20−4cはネットワークNW4に、端末装置20−5はネットワークNW5に、端末装置20−6はネットワークNW6に、それぞれ接続されている。中継装置10−1〜10−4、10−6の構成は、それぞれ中継装置10と同様であり、それらのFQDNであるwww.example.comとIPアドレスは、それぞれのネットワークからアクセス可能なDNSサーバ30(図示せず)に登録される。そのため、端末装置20−2a、20−2b、20−3a、20−3b、20−4a、20−4b、20−4c、20−5、20−6は、URLがwww.example.com/dir1/file1.jsonである配信ファイルを各端末装置の最寄りの中継装置から取得することができる。
【0045】
例えば、ネットワークNW2に接続されている端末装置20−2a、20−2bは、それぞれFQDNwww.example.comについて名前解決を行う。そして、端末装置20−2a、20−2bは、名前解決によってネットワークNW2に接続された中継装置10−2のIPアドレスが指定され、中継装置10−2からパス名が/dir1/file1.jsonである配信ファイルfile1.jsonを取得することができる。また、接続されているネットワークと同一ではなくとも、そのネットワークよりも上位のネットワークに中継装置が接続されていれば、端末装置は、その中継装置からURLで指定される配信ファイルを取得することができる。例えば、ネットワークNW5に接続された端末装置20−5は、ネットワークNW5よりも上位の階層のネットワークNW1に接続された中継装置10−1から配信ファイルfile1.jsonを取得することができる。ネットワークNW6はインターネットに接続されていないプライベートネットワークであるが、端末装置20−6は、中継装置10−6から配信ファイルfile1.jsonを取得することができる。
【0046】
なお、
図4に示すように相互に接続されたネットワークNW間において複数の中継装置10が設置される場合には、DNSレコードには、1つのURLについて複数のIPアドレスが設定されることがある。そのような場合には、DNSサーバ30は、複数のIPアドレスを端末装置20に送信してもよい。端末装置20のWebSocketクライアント部202は、公知の経路探索処理を行って、DNSサーバ30からの複数のIPアドレスのうち、いずれか1つのIPアドレスを特定すればよい。WebSocketクライアント部202は、例えば、各IPアドレスで特定されるWebSocketサーバ部107との間で所定の距離指標を取得し、取得した距離指標が最も小さいWebSocketサーバ部107を選択する。距離指標として、通過したルータの数を示すホップ数、応答時間など、またはそれらの組が利用可能である。
【0047】
(変形例)
上述した実施形態に係る中継装置10は、単体の中継装置として構成されていることを例にした。中継装置10は、DNSサーバ30の構成を備えるDNSサーバとして構成されてもよい。このDNSサーバは、自装置が備えるDNSインタフェース部106からのDNS情報によりDNSレコードを形成し、端末装置20からのアドレス要求で指定されたホスト情報に対応するIPアドレスとしてWebSocketサーバ部107のIPアドレスを応答する。そのため、DNS情報の管理に係る負荷が軽減される。
【0048】
また、中継装置10は、互いに異なる複数のネットワーク間で送受信されるデータを中継するネットワーク間中継部をさらに備えるルータ装置として構成されてもよい。このルータ装置は、DNSサーバ30と同様に、DNSサーバ機能、DNSキャッシュ機能およびDNS中継機能を備えてもよい。このルータ装置は、自装置が備えるDNSインタフェース部106からのDNS情報によりDNSレコードを形成する。そして、このルータ装置は、自装置が接続されているネットワーク上の端末装置20からのアドレス要求で指定されたホスト情報に対応するIPアドレスを応答する。従って、DNS情報の管理に係る負荷が軽減されるほか、名前解決において複数のネットワークを跨ぐ要求と応答を抑制することができる。そのため、ネットワークの負荷が低減されるので、ネットワークの輻輳を回避することができる。
【0049】
以上に説明したように、本実施形態に係る中継装置10は、放送で受信した受信信号からデータファイルとデータファイルの受信に係る制御情報とを分離する多重分離部103を備える。中継装置10は、受信したデータファイルを通信で送信する送信部(例えば、WebSocketサーバ部107)のホスト情報を、分離した制御情報を解析して取得する制御情報解析部105を備える。また、中継装置10は、ホスト情報とアドレスとを対応付けて記憶し、アドレス要求に応じて当該アドレス要求が示すホスト情報に対応するアドレスを出力するDNSサーバ30に、送信部のホスト情報とアドレスとを対応付けて通知するホスト情報通知部(例えば、DNSインタフェース部106)を備える。
この構成により、端末装置20は、所定のホスト情報に対応するアドレスを取得し、取得したアドレスで識別される送信部から放送で伝送されるデータファイルを受信することができる。従って、端末装置20は、専用の拡張機能を有しない、ウェブ標準ブラウザやアプリケーションプログラムを用いて、そのデータファイルを受信することができる。
【0050】
本実施形態に係る中継装置10は、放送で受信したデータファイルを送信する送信部をさらに備え、送信部は、端末装置20からの送信要求に応じてデータファイルを端末装置20に送信する。
この構成では、受信したデータファイルを送信する送信部と、そのホスト情報とアドレスとを対応付けてDNSサーバ30に通知するホスト情報通知部とが一体化されている。従って、送信部のホスト情報とアドレスの管理が、送信部が別体である場合よりも容易になる。
【0051】
また、本実施形態に係る中継装置10の送信部は、放送で受信したデータファイルの更新を検出するとき、そのデータファイルを端末装置20に送信する。
この構成によれば、更新に応じてデータファイルが送信部から送信される。そのため、端末装置20は、その時点において最新のデータファイルを取得することができる。また、端末装置からの更新の照会を行うためのネットワークの負荷の増加を回避することができる。
【0052】
また、本実施形態に係る中継装置10は、自装置に接続される複数のネットワーク間で伝送される信号を中継するネットワーク間中継部をさらに備えてルータ装置として構成される。
この構成により、ネットワークを跨ぐ名前解決に係る通信量を軽減することができるため、ネットワークの負荷が軽減される。
【0053】
また、本実施形態に係る中継装置10は、端末装置20から受信したホスト情報に対応するアドレスをその端末装置20に送信する名前解決部(例えば、DNSサーバ30)をさらに備えてサーバ装置として構成される。
この構成により、自装置が備えるホスト情報通知部からのホスト情報とIPアドレスとが対応付けて記憶され、端末装置20からのホスト情報に対応する送信部のアドレスがその端末装置20に送信される。そのため、ホスト情報とIPアドレスの放送事業者またはコンテンツ提供者による管理が、中継装置10と名前解決部が別体である場合よりも軽減される。
【0054】
(第2の実施形態)
次に、本発明の第2の実施形態について説明する。第1の実施形態と同一の構成については同一の符号を付してその説明を援用する。
図5は、本実施形態に係る端末装置21の構成を示すブロック図である。端末装置21は、
図1に示す端末装置20と同様に、アプリケーション実行部201、通信部203、DNSキャッシュ部204を備える他、放送受信部211、復調部212、多重分離部213、ファイルキャッシュ部214、制御情報解析部215、DNSインタフェース部216およびWebSocketサーバ部217を含んで構成される。
放送受信部211、復調部212、多重分離部213、ファイルキャッシュ部214、制御情報解析部215、DNSインタフェース部216およびWebSocketサーバ部217の構成は、それぞれ上述した放送受信部101、復調部102、多重分離部103、ファイルキャッシュ部104、制御情報解析部105、DNSインタフェース部106およびWebSocketサーバ部107と同様である。
【0055】
但し、DNSインタフェース部216は、WebSocketサーバ部217のIPアドレスとしてlocalhostとホスト情報とを対応付けてDNS情報を生成し、そのDNS情報をDNSキャッシュ部204に出力する。localhostとは、データの送受信先として自装置を示す情報である。localhostは、例えば、IPv4では、127.0.0.1、IPv6では、::1である。
【0056】
DNSキャッシュ部204は、DNSサーバ30と同様の処理を行う。DNSキャッシュ部204は、DNSインタフェース部216から入力されたDNS情報を記憶してDNSレコード205を形成する。本変形例では、WebSocketクライアント部202は、名前解決において、アドレス要求をDNSキャッシュ部204に出力する。
DNSキャッシュ部204は、DNSレコード205を参照して、WebSocketクライアント部202から入力されたアドレス要求で指定されたホスト情報に対応するIPアドレス(localhost)を特定する。DNSキャッシュ部204は、特定したIPアドレスを要求元のWebSocketクライアント部202に出力する。
【0057】
WebSocketクライアント部202は、DNSキャッシュ部204から入力されたIPアドレス(localhost)で特定される自装置のWebSocketサーバ部217に接続する。その後、WebSocketクライアント部202は、配信ファイルの送信要求をWebSocketサーバ部217に送信する。WebSocketクライアント部202は、WebSocketサーバ部217から配信ファイルが入力される。
【0058】
なお、端末装置21の一変形例として、そのWebSocketサーバ部217は、さらに他の端末装置20と接続し、端末装置20のアプリケーション実行部201からの送信要求に応じて配信ファイルを送信してもよい。
図6に示す例では、端末装置21のDNSインタフェース部216は、WebSocketサーバ部217のIPアドレスとしてアドレスCとホスト情報とを対応付けてDNS情報を生成し、そのDNS情報をDNSキャッシュ部204に出力する。また、端末装置21のDNSインタフェース部216は、自身のDNSキャッシュ部204の他、ネットワークNWを介して接続されたDNSサーバ30に対してアドレスCとホスト情報とを対応付けたDNS情報を登録してもよい。
【0059】
端末装置21のDNSキャッシュ部204は、DNSインタフェース部216から入力されたDNS情報を記憶してDNSレコード205を形成する。
図6に示す例では、端末装置20のWebSocketクライアント部202は、名前解決において、アドレス要求を端末装置21のDNSキャッシュ部204に出力する。
端末装置21のDNSキャッシュ部204は、DNSレコード205を参照して、端末装置20のWebSocketクライアント部202から受信したアドレス要求で指定されたホスト情報に対応するIPアドレス(アドレスC)を特定する。端末装置21のDNSキャッシュ部204は、特定したIPアドレスを端末装置20のWebSocketクライアント部202に送信する。
【0060】
端末装置20のWebSocketクライアント部202は、端末装置21のDNSキャッシュ部204から受信したIPアドレス(アドレスC)で特定される端末装置21のWebSocketサーバ部217と接続する。その後、端末装置21のWebSocketサーバ部217は、端末装置20のWebSocketクライアント部202から配信ファイルの送信要求を受信し、配信ファイルを端末装置20のWebSocketクライアント部202に送信する。従って、本変形例に係る端末装置21は、放送設備50から伝送される配信ファイルを他の端末装置20に中継する機能を奏する。
【0061】
また、他の変形例に係る端末装置22は、
図7に示すように端末装置21からファイルキャッシュ部214とWebSocketサーバ部217を省略して構成されてもよい。但し、端末装置22は、ネットワークNWを介してWebサーバ61と接続する。Webサーバ61は、ファイルキャッシュ部611、WebSocketサーバ部612及び通信部613を含んで構成されるサーバ装置である。ファイルキャッシュ部611とWebSocketサーバ部612の構成は、それぞれファイルキャッシュ部214とWebSocketサーバ部217と同様である。
【0062】
そこで、端末装置22のDNSインタフェース部216は、WebSocketサーバ部217のIPアドレスとしてアドレスDとホスト情報とを対応付けてDNS情報を生成し、そのDNS情報をDNSキャッシュ部204に出力する。
端末装置22のDNSキャッシュ部204は、DNSインタフェース部216から入力されたDNS情報を記憶してDNSレコード205を形成する。
図7に示す例では、端末装置22のWebSocketクライアント部202は、名前解決において、アドレス要求をDNSキャッシュ部204に出力する。
DNSキャッシュ部204は、DNSレコード205を参照して、WebSocketクライアント部202から入力されたアドレス要求で指定されたホスト情報に対応するIPアドレス(アドレスD)を特定する。DNSキャッシュ部204は、特定したIPアドレスをWebSocketクライアント部202に出力する。また、端末装置22のDNSインタフェース部216は、自身のDNSキャッシュ部204の他、ネットワークNWを介して接続されたDNSサーバ30に対してアドレスDとホスト情報とを対応付けたDNS情報を登録してもよい。
【0063】
多重分離部213は、所定のプロトコル(例えば、FTP:File Transfer Protocol)を用いて配信ファイルをWebサーバ61のファイルキャッシュ部611に送信する。
WebSocketクライアント部202は、DNSキャッシュ部204から受信したIPアドレス(アドレスD)で特定されるWebサーバ61のWebSocketサーバ部612と接続する。その後、Webサーバ61のWebSocketサーバ部612は、端末装置22のWebSocketクライアント部202から配信ファイルの送信要求を受信し、送信要求に含まれるパス名で指定されるディレクトリから指定されたファイル名を有する配信ファイルを読み取る。WebSocketサーバ部612は、読み取った配信ファイルを端末装置22のWebSocketクライアント部202に送信する。従って、ネットワークNWに複数の端末装置20(図示せず)が接続される場合に、各端末装置のWebSocketクライアント部202に放送で受信された配信ファイルを送信する処理をWebサーバ61に委託させることができる。また、端末装置22は、さらにアプリケーション実行部201およびWebSocketクライアント部202が省略されることで、専ら放送波から受信した配信ファイルをWebサーバ61に送信する中継装置として用いられてもよい。
【0064】
以上に説明したように、本実施形態に係る端末装置21、22は、名前解決部(例えば、DNSキャッシュ部204)と、ホスト情報に対応するアドレスを名前解決部から取得し、そのアドレスを有する送信部からデータファイルを受信する受信部(例えば、WebSocketクライアント部202)を備える中継装置として構成される。
この構成により、受信部は、自装置が備える名前解決部から取得されるアドレスを有する送信部を特定し、その送信部から放送で伝送されるデータファイルを受信することができる。
【0065】
以上、図面を参照してこの発明の実施形態および種々の変形例について説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【0066】
例えば、上述した実施形態ならびに変形例では、配信ファイルの送受信において主にWebSocketプロトコルを用いる場合を例にしたが、他の通信プロトコル、例えば、HTTPプロトコルが用いられてもよい。WebSocketクライアント部202に代わる受信部として受信部202’(図示せず)は、パス名で指定される配信ファイルの送信要求を送信部107’(図示せず)に送信する。送信部107’は、WebSocketサーバ部107、217、612に代わる送信部である。送信部107’は、その応答として、送信要求に係る配信ファイルを受信部202’に送信する(プル配信)。送信部107’は、配信ファイルを送信する前に、必ずしも受信部202’との間で接続を確立しなくてもよい。
また、受信部202’は、所定時間(例えば、1〜10分)ごとにその配信ファイルの更新確認を送信部107’に送信してもよい。送信部107’は、受信部202’から受信した更新確認に係る配信ファイルについて更新の有無を検出し、更新が検出された配信ファイルについて、更新前に送信された配信ファイルとの差分を検出する。そして、送信部107’は、検出した差分を示す差分ファイルを受信部202’に送信する。
【0067】
また、送信部107’と受信部202’は、さらにWebSocketプロトコルを併用可能であってもよい。そこで、送信部107’は、所定時間ごとに配信ファイルの更新の有無を検出し、その更新があることを示す更新情報を受信部202’にWebSocketプロトコルを用いて送信する。受信部202’は、送信部107’から更新情報を受信するとき、配信ファイルの送信要求を送信部107’にHTTPプロトコルを用いて送信し、その応答として更新された配信ファイルを送信部107’から受信する。
【0068】
また、上述した実施形態および変形例では、WebSocketクライアント部202ならびに受信部202’に配信ファイルの所在を示すURLが予め設定されている場合を例にしたが、これには限られない。WebSocketクライアント部202ならびに受信部202’は、例えば、ネットワークNWに接続された他の機器から受信したデータからURLを抽出してもよいし、ユーザの操作に応じて入力される操作信号が示すURLを取得してもよい。
【0069】
さらに、上述の例では、WebSocketクライアント部202は、WebSocketサーバ部107への接続要求時に、ホスト名と配信ファイルのパス名の両方を含むURLを用いたが、ホスト名のみを含むURLを用いて接続要求を行ってもよい。この場合のWebSocket接続要求は、アプリケーションに記述されたAPI関数の呼び出し、例えば、new WebSocket(“ws://www.example.com/”);により実現される。
この際、WebSocket接続が確立した後に、WebSocketクライアント部202は、WebSocket通信のメッセージを用いてWebSocketクライアント部202が所望する配信ファイルのパス名をWebSocketサーバ部107に送信し、その応答として配信ファイルを受信するようにしてもよい。
【0070】
なお、上述した実施形態における中継装置10、端末装置20、21、22またはWebサーバ61の少なくとも一部の機能をコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、中継装置10、端末装置20、21、22またはWebサーバ61に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0071】
また、上述した実施形態における中継装置10、端末装置20、21、22またはWebサーバ61の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。また、中継装置10、端末装置20、21、22またはWebサーバ61の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。