Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5367237B2 - サーバ - Google Patents
[go: Go Back, main page]

JP5367237B2 - サーバ - Google Patents

サーバ Download PDF

Info

Publication number
JP5367237B2
JP5367237B2 JP2007160383A JP2007160383A JP5367237B2 JP 5367237 B2 JP5367237 B2 JP 5367237B2 JP 2007160383 A JP2007160383 A JP 2007160383A JP 2007160383 A JP2007160383 A JP 2007160383A JP 5367237 B2 JP5367237 B2 JP 5367237B2
Authority
JP
Japan
Prior art keywords
server
download
file
client device
time
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007160383A
Other languages
English (en)
Other versions
JP2008310750A (ja
Inventor
博文 甲田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2007160383A priority Critical patent/JP5367237B2/ja
Priority to US12/139,608 priority patent/US7853692B2/en
Priority to CN200810126934.4A priority patent/CN101330509B/zh
Publication of JP2008310750A publication Critical patent/JP2008310750A/ja
Application granted granted Critical
Publication of JP5367237B2 publication Critical patent/JP5367237B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Description

本発明は、例えば動画などファイルをネットワークを介して配信、あるいはダウンロードするためのサーバ、クライント機器、プログラム及びダウンロード方法に関する。
従来から、クライアント機器がサーバからファイルを取得する場合、何かしらのイベント(例、ユーザ操作、タイマー機能を用いたアプリケーション)をトリガーに、そのファイルが保存されたサーバへアクセスを行う。しかし、それらのトリガーとなるクライアント側のイベントは、サービス事業者側で制御できないため、クライアント機器からサーバへのアクセスが集中し、サーバやネットワークのキャパシティを超過した時点でファイル取得ができなくなるという欠点があった。特に、この問題はファイルサイズ、クライアント機器数の増加に比例して発生しやすくなる。
このような問題を回避するために、多くのサービス事業者(サーバ管理者)は、トラヒックピークを鑑みた各種リソース(サーバ、ネットワークリソース等)を確保している。しかし、トラヒックピークにあわせてリソースを常時確保しておくことは、ピーク時以外に余剰リソースを抱えることとなりシステム構築初期費用/運用費用のコスト高となる。また、ユーザ操作をトリガーとしたアクセスは、サービス事業者(サーバ管理者)からみた場合、いつ発生するとも予測不能、制御不能な為、サービス事業者(サーバ管理者)は、常にサービスが提供できるようなシステム運用を余儀なくされている。
特許文献1には、動画を提供するサーバ以外に管理サーバなどを別に設けた分散型のシステムが開示されている。
特開2006−135811号公報(請求項1参照)
しかしながら、特許文献1に開示された技術であっても結局はトラヒックピークにあわせてリソースを常時確保しておく必要があり、本質的な問題を解決することができない。
以上のような事情に鑑み、本発明の目的は、クライアント機器からダウンロードサーバへのアクセス集中を分散させトラヒックピークを平滑化することが可能なサーバ、クライント機器、プログラム及びダウンロード方法を提供することにある。
かかる課題を解決するため、本発明に係るサーバは、クライント機器との間でネットワークを介して接続可能にされたサーバであって、前記ネットワークを介して前記クライアント機器に対してダウンロードファイルを配信可能なダウンロードサーバのアドレス及び前記クライント機器から前記ダウンロードサーバへのアクセスを時間的に規制するための第1のパラメータを含むファイルを生成する手段と、前記クライント機器からの要求に応じて、前記ファイルを前記クライント機器に配信する手段とを具備する。
本発明では、サーバからのコントロールでクライント機器からダウンロードサーバへのアクセスのタイミングをクライント機器ごとに設定できるので、クライアント機器からダウンロードサーバへのアクセス集中を分散させトラヒックピークを平滑化することが可能となる。
第1のパラメータは、前記クライント機器から前記ダウンロードサーバへのアクセスするための待ち時間を規定するものであることが好ましく、また第1のパラメータは、前記クライント機器から前記ダウンロードサーバへのアクセスする期間を規定するものであることが好ましい。或いは、第1のパラメータは、前記クライント機器から前記ダウンロードサーバへのアクセスする期間及び当該期間内での待ち時間を規定するものであることが好ましい。
生成されるファイルは、前記クライント機器からの前記ファイルの配信要求を時間的に規制するための第2のパラメータを含むようにしても構わない。これにより、サーバへのアクセスの集中も回避できる。
ここで、ダウンロードサーバの負荷状況に応じて前記第1のパラメータを最適化する手段を更に具備するようにしてもよく、サーバの負荷状況に応じて前記第2のパラメータを最適化する手段を更に具備するようにしてもよい。ここで、ダウンロードサーバの負荷状況に応じて第1のパラメータを最適化する手段としては、例えばダウンロードサーバの負荷状況に第1のパラメータを可変する手段であってもよい。サーバの負荷状況に応じて第2のパラメータを最適化する手段としては、例えばサーバの負荷状況に応じて第2のパラメータを可変する手段であってもよい。
ユーザ操作あるいは、見積もりミスにより、想定外のアクセスが集中した場合、システム管理者は、そのアクセス状況を元に、サーバにおかれたファイルのパラメータを最適化しなければならず、運用負荷(運用工数)の増大が懸念される。そこで、ファイルにて指定するパラメータを例えばサーバ側のリソース使用状態から自動で判別、算出し、パラメータ値を自動で最適化する仕組みを例えばサーバへ持たせる。これにより、一層精度の高い負荷分散を低工数で実現可能とする。
本発明に係るクライアント機器は、ネットワークを介してダウンロードファイルを配信可能なダウンロードサーバのアドレス及び前記ダウンロードサーバへのアクセスを時間的に規制するための第1のパラメータを含むファイルの配信をサーバに対して要求する手段と、前記要求に応じてサーバから配信されたファイルに含まれた前記第1のパラメータに基づいた時刻に、前記ダウンロードサーバへアクセスする手段とを具備する。これにより、クライアント機器からダウンロードサーバへのアクセス集中を分散させトラヒックピークを平滑化することが可能となる。
配信要求手段は、前記ファイルに含まれた前記サーバに対して前記ファイルの配信要求を時間的に規制するための第2のパラメータに基づいた時刻に前記ファイルの配信をサーバに対して要求するようにしてもよい。これにより、サーバへのアクセスの集中も回避できる。
本発明に係るクライント機器に実行させるプログラムは、ネットワークを介してダウンロードファイルを配信可能なダウンロードサーバのアドレス及び前記ダウンロードサーバへのアクセスを時間的に規制するための第1のパラメータを含むファイルの配信をサーバに対して要求し、前記要求に応じてサーバから配信されたファイルに含まれた前記第1のパラメータに基づいた時刻に、前記ダウンロードサーバへアクセスするものである。これにより、クライアント機器からダウンロードサーバへのアクセス集中を分散させトラヒックピークを平滑化することが可能となる。
本発明に係るダウンロード方法は、クライント機器が、ネットワークを介してダウンロードファイルを配信可能なダウンロードサーバのアドレス及び前記ダウンロードサーバへのアクセスを時間的に規制するための第1のパラメータを含むファイルの配信をサーバに対して要求し、前記サーバが、前記クライント機器からの要求に応じて、前記ファイルを前記クライント機器に配信し、前記クライント機器が、前記要求に応じてサーバから配信されたファイルに含まれた前記第1のパラメータに基づいた時刻に、前記ダウンロードサーバへアクセスすることを特徴とする。これにより、クライアント機器からダウンロードサーバへのアクセス集中を分散させトラヒックピークを平滑化することが可能となる。

以上のように、本発明によれば、クライアント機器からダウンロードサーバへのアクセス集中を分散させトラヒックピークを平滑化することができる。
以下、本発明の実施の形態について図面を参照しながら説明する。
図1は、本発明の一実施形態に係るクライアント/サーバシステムを示す概念図である。
図1に示すように、クライアント/サーバシステム100では、DVRやTVなどの複数のクライアント機器1がインターネットなどのネットワーク101を介してサーバ2や複数のダウンロードサーバ3などとの間で接続できるように構成されている。クライアント機器1とサーバ2との間は、例えばポーリング通信やP2P(Peer To Peer)などにより通信が行われ、サーバ2からクライアント機器2へ、ダウンロードサーバ3へのアクセスに係る制御情報が記述されたファイル(以下、このファイルを「ファイルB」とする。)が配信される。なお、ダウンロードサーバ3からクライアント機器2へダウンロードされるファイル(映画などの動画フィアルや当該クライアント機器1に対するアップデートファイルなど)をファイルAとする。
図2はクライアント機器1、サーバ2及びダウンロードサーバ3の構成を示すブロック図である
図2に示すように、クライアント機器1は、UI(User Interface)アプリケーション部4、アップデートスクリプト部5、アップデートエージェント部6、インターフェース部7及びクライアント機器共通ライブラリ部8を有している。
UIアプリケーション部4は、図示を省略した入力部からのユーザの情報入力の操作をトリガーとしてアップデートエージェント部6に、ファイルB取得要求、ファイルA取得要求処理開始指示及びファイルA取得要求処理終了指示を行う。
アップデートスクリプト部5は、例えばクライアント機器1がダウンロードサーバ3からダウンロードしたファイルAがアップデートファイルである場合には、アップデートファイルに基づきクライアント機器1のソフトウェアを更新する。
アップデートエージェント6部は、UIアプリケーション部4、インターフェース部7、アップデートスクリプト部5から、ダウンロード、アップデートに関わる要求/処理結果応答を受け、クライアント機器1のアップデート処理を制御する。
より具体的なアップデート制御は、例えば以下の通りである。
(1)クライアント機器1の電源ON操作時に、アップデートエージェント部6とインターフェース部7を起動する。
(2)UIアプリケーション部4からの手動アップデート指示を受付け、インターフェース部7へ通知する。
(3)インターフェース部7は、サーバ2、ダウンロードサーバ3と通信を行い、アップデートファイルをダウンロードする。
(4)インターフェース部7からのアップデートファイルダウンロード処理結果を受け取り、クライアント機器1へのバージョンアップモード起動指示を行う。
(5)アップデートスクリプト部5からのアップデート処理結果を受け取り、UIアプリケーション部4、クライアント機器共通ライブラリ部8へその結果を通知する。
(6)クライアント機器1の制約条件などにより、ダウンロードを中止する必要がある場合、インターフェース部7に対してその旨を通知する。
インターフェース部7は、サーバ2やダウンロードサーバ3との間で通信を行い、必要なアップデートファイル(ファイルA)をダウンロードサーバ3からダウンロードする。
より具体的には、インターフェース部7は、サーバ2に定期的にバックグラウンド処理で通信を行い、アップデートファイルの存在確認を行う。最新のアップデートファイルが存在することが判明した場合、アップデートエージェント部6にその旨を通知する。最新のアップデートファイルが存在し、一定条件を満たした場合、アップデートファイル(ファイルA)を取得するためにダウンロードサーバ3にアクセスし、ダウンロードする。
クライアント機器共通ライブラリ部8は、クライアント機器1における共通関数を提供する。
より具体的には、クライアント機器共通ライブラリ部8は、クライアント機器1内で管理している現在時刻を応答し、クライアント機器1の現在のソフトウェアバージョンを応答し、更にネットワーク診断機能などを有している。
なお、アップデートスクリプト部5及びアップデートエージェント6部は、ファイルAがアップデートファイルである場合には上記の処理を行うが、例えばクライアント機器1がダウンロードサーバ3からダウンロードしようとするファイルAがサイズの大きな動画などのファイルである場合には、アップデートエージェント部6やアップデートスクリプト部5は、コンテンツマネージャや動画タイトル管理機能となる。
サーバ2は、クライアント機器1との間でネットワーク101を介して通信を行うためのWebサーバ9を備えている。なお、このサーバ2の外部インターフェースのURIは、例えばクライアント機器1が出荷される際に予め埋め込まれている。
ダウンロードサーバ3も、クライアント機器1との間でネットワーク101を介して通信を行うためのWebサーバ10を備えている。なお、ダウンロードサーバ3のURIは、例えばサーバ2から「ダウンロード先URL」としてクライアント機器1に与えられる。
図3及び図4は、サーバ2がクライアント機器1に送信するファイルBの一例を示す図である。なお、図3に示されるファイルはクライアント機器1がデジタルビデオレコーダ(DVR)のときであり、図4に示されるファイルはクライアント機器1がテレビ(TV)のときである。
図3及び図4に示すように、ファイルBは、「機種別IDと更新番号」、「ファイル分散パラメータ」、「ダウンロードコンテンツ(DLコンテンツ)」、「ダウンロード有効期間開始日時(DL有効期間From)」、「ダウンロード有効期間終了日時(DL有効期間To)」、ダ「ウンロード分散パラメータ(DL分散パラメータ)」及び「ダウンロード先URL(DL先URL)」の項目を有している。
「機種別ID」は、クライアント機器1に固有のIDであり、「PONY_DVR1001」などの情報である。「更新番号」は、ファイルBの更新回数を表す情報であり、例えば更新されていないときには「0001」である。更新番号は、図3のダウンロード有効期間開始日時、ダウンロード有効期間終了日時及びダウンロード分散パラメータが変更されたときに‘1’づつインクリメントされる。
「ファイル分散パラメータ」は、クライアント機器1がダウンロードサーバ3に自動的にアクセスする日時をクライアント機器1毎に分散させるためのパラメータである。例えば、「0.5day」とは、例えば0〜12時間(12h×60min×60sec)の間で発生させた乱数を元に、所定時間間隔でクライアント機器1がダウンロードサーバ3に自動的にアクセスすることを意味する。
「ダウンロードコンテンツ」は、ダウンロードされるコンテンツの名称の情報である。
「ダウンロード有効期間開始日時」は、クライアント機器1がダウンロードサーバ3からファイルAなどをダウンロードすることができる期間の始りの日時の情報である。
「ダウンロード有効期間終了日時」は、クライアント機器1がダウンロードサーバ3からファイルAなどをダウンロードすることができる期間の終わりの日時の情報である。
クライアント機器1は、ダウンロード有効期間開始日時とダウンロード有効期間終了日時との間の時間にファイルAをダウンロードすることが許可される。
「ダウンロード分散パラメータ」は、クライアント機器1がダウンロードサーバ3からファイルAなどをダウンロードすることができる期間の始りの日時の情報を変更して強制待ち時間を変更するためのパラメータである。例えば「7day」、「5day」及び「1day」である。クライアント機器1は、例えば「7day」の場合、これらの強制待ち時間である7日間を経過するまでは、ダウンロードサーバ3からファイルAをダウンロードすることができない。
「ダウンロード先URL」は、ファイルAを提供するダウンロードサーバ3のURLの情報である。
次に、クライアント機器1がダウンロードサーバ3からファイルAをダウンロードするときの自動処理の動作について説明する。
図5は、この自動処理の動作を示すフローチャートである。
クライアント機器1は、購入後、初回のセットアップ時に、サーバ2に対して機器を特定するための機器特定ID(クライアントID)を取得するための要求をする(S1)。
具体的には、クライアント機器1は、出荷時にクライアント機器1に記録されている機種毎に固有の機種別IDをサーバ2に通知する。
サーバ2は、この機種別IDに基づき、機種別IDに対応する機種がサービス対象機種か否かを判断し、サービス対象機種であるときには、クライアントIDを発行し、発行したクライアントIDをクライアント機器1に通知する(S2)。
クライアント機器1は、サーバ2から通知されたクライアントIDをクライアント機器共通ライブラリ部8に保存する。2回目以降の起動時には、S3以降の処理が実行される。
例えば、クライアント機器1がサーバ2からファイルBをダウンロードする場合ついて説明する。
まず、クライアント機器1は、ファイルBを取得するための要求をサーバ2に対して行う(S3)。
具体的には、クライアント機器1は、ファイルBを取得するために、クライアントIDをサーバ2に通知する。
次に、サーバ2は、クライアントIDに基づき、サーバ2内に蓄積されているデータのうちクライアントIDに対応する情報、例えば図3に示したファイルBに関する情報を抽出してファイルBを生成し、クライアント機器1にファイルBを配信する(S4)。
クライアント機器1は、ファイルBをクライアント機器共通ライブラリ部8に保存する。
次に、クライアント機器1は、ファイルBを解析する(S5)。クライアント機器1は、例えば図3に示したファイルBに記述された「ファイル分散パラメータ」に基づいて、次回の「自動ファイルB取得要求実行予定時刻」を算出する。例えば、クライアント機器1は、図3に例示したファイル分散パラメータの値である「0.5day」を取得し、0〜0.5(12h×60min×60sec)の間で乱数を生成し、この生成した乱数を現在時刻に加算し、次回の「自動ファイルB取得要求実行予定時刻」とする。これにより、クライアント機器1は、他のクライアント機器1とのアクセスタイミングが重複しないようになる。
また、クライアント機器1は、図3に示した「ダウンロード分散パラメータ」に基づいて、次回の「自動ダウンロード処理実行予定時刻」を算出する。例えば、図3に示した「ダウンロードコンテンツ」のうち「アップデートファイルVer1」をダウンロードするときには、クライアント機器1は、これに対応する「ダウンロード分散パラメータ」の値である「7day」に基づき0から7×24×60×60secまでの間の乱数を生成し、生成した乱数を「秒」の単位として、この値を「ダウンロード有効期間開始日時」である「2006/4/1 12:00」に加算し、次回の「自動ダウンロード処理実行予定時刻」とする。なお、次回の「自動ダウンロード処理実行予定時刻」を算出するときに、例えば「ダウンロード有効期間開始日時」と「ダウンロード有効期間終了日時」との間で、乱数を生成させ、生成した乱数に基づいて、次回の「自動ダウンロード処理実行予定時刻」を算出してもよい。
次に、クライアント機器1は、現在時刻が「自動ファイルB取得要求実行予定時刻」であるか否かを判断し(S7)、「自動ファイルB取得要求実行予定時刻」であるときには、ステップ3に戻り、既に説明したファイルBの取得要求を実行する。
「自動ファイルB取得要求実行予定時刻」でないときには、「自動ダウンロード処理実行予定時刻」であるか否かを判断し(S8)、「自動ファイルB取得要求実行予定時刻」及び「自動ダウンロード処理実行予定時刻」でないときには、待機する(S6)。
S8で「自動ダウンロード処理実行予定時刻」であるときには、クライアント機器1は、ダウンロードサーバ3からファイルAをダウンロードする(S9)。つまり、クライアント機器1は、ダウンロードサーバ3にダウンロードの実行要求を通知し、ダウンロードサーバ3はファイルAをクライアント機器1に配信する(S10)。
ここで、例えば上述した待機(S6)中にファイルBが更新された場合、ファイルBの新たな情報に基づいて、「自動ファイルB取得要求実行予定時刻」や「自動ダウンロード処理実行予定時刻」が再計算(更新)される。
図6は「自動ファイルB取得要求実行予定時刻」及び「自動ダウンロード処理実行予定時刻」の再計算(更新)のタイムチャートである。
図6に示すように、クライアント機器1は、「自動ファイルB取得要求処理」を実行する(S31)。
サーバ2は、図3に示した「更新番号」が‘1’であるファイルBをクライアント機器1に通知する(S41)。
クライアント機器1は、ファイルBに基づき、次回の「自動ファイルB取得要求実行予定時刻」を「2007/6/1 10:00」、「自動ダウンロード処理実行予定時刻」を「2007/6/5 0:00」と算出する(S51)。
この結果、クライアント機器1は、現在時刻が「2007/6/1 10:00」になるまで待機し(S61)、この時刻になったと判断したときに、「自動ファイルB取得要求処理」を実行する(S32)。「自動ダウンロード処理実行予定時刻」が「2007/6/5 0:00」であるのに対して「自動ファイルB取得要求実行予定時刻」が「2007/6/1 10:00」であるので、ダウンロード処理は実行されない。
サーバ2は、「更新番号」が変更されていない場合は、再び「更新番号」が‘1’であるファイルBをクライアント機器1に通知する(S42)。
クライアント機器1は、ファイルBに基づき、次回の「自動ファイルB取得要求実行予定時刻」を「2007/6/2 11:00」、「自動ダウンロード処理実行予定時刻」を「2007/6/5 0:00」と算出する(S52)。「更新番号」が変更されていない場合は、「自動ファイルB取得要求実行予定時刻」のみを再計算し、「自動ダウンロード処理実行予定時刻」は再計算しない。
この結果、クライアント機器1は、現在時刻が「2007/6/2 11:00」になるまで待機し(S62)、この時刻になったと判断したときに、「自動ファイルB取得要求処理」を実行する(S33)。「自動ダウンロード処理実行予定時刻」が「2007/6/5 0:00」であるのに対して「自動ファイルB取得要求実行予定時刻」が「2007/6/2 11:00」であるので、ダウンロード処理は実行されない。
サーバ2は、更新番号が変更されている場合は、更新番号が‘2’であるファイルBをクライアント機器1に通知する(S43)。
クライアント機器1は、更新番号が‘2’であるファイルBに基づき、次回の「自動ファイルB取得要求実行予定時刻」を「2007/6/3 9:00」、「自動ダウンロード処理実行予定時刻」を「2007/6/3 10:00」と算出する(S53)。更新番号が変更されている場合は、「自動ファイルB取得要求実行予定時刻」及び「自動ダウンロード処理実行予定時刻」を再計算する。
この結果、クライアント機器1は、現在時刻が「2007/6/3 9:00」になるまで待機し(S63)、この時刻になったと判断したときに、自動でファイルB取得要求を実行する(S34)。「自動ダウンロード処理実行予定時刻」が「2007/6/3 10:00」であるのに対して「自動ファイルB取得要求実行予定時刻」が「2007/6/3 9:00」であるので、ダウンロード処理は実行されない。
サーバ2は、更新番号が変更されていない場合は、更新番号が‘2’であるファイルBをクライアント機器1に通知する(S44)。
クライアント機器1は、更新番号が‘2’であるファイルBに基づき、次回の「自動ファイルB取得要求実行予定時刻」を「2007/6/4 13:00」、「自動ダウンロード処理実行予定時刻」を「2007/6/3 10:00」と算出する(S54)。更新番号が変更されていない場合は、「自動ファイルB取得要求実行予定時刻」のみを再計算し、「自動ダウンロード処理実行予定時刻」は再計算しない。
この結果、クライアント機器1は、現在時刻が「2007/6/3 10:00」になるまで待機し(S64)、この時刻になったと判断したときに、自動でファイルBのダウンロード処理を実行する(S91)。
図7はファイルをダウンロードするときの手動処理の動作を示すフローチャートである。なお、S1及びS2は上記と同様であるので省略する。
ここで、図8〜図11は、手動でファイルAをダウンロードするときにクライアント機器1に表示される画面の一例である。
まず、図8に示すように、ファイルBを取得するか否かを決定する画面を表示させる。クライアント機器1は、ユーザにより図8に示す画面の実行ボタンがクリックされたかキャンセルボタンがクリックされたかを判断し、実行ボタンがクリックされたときには、サーバ2にファイルBを取得する要求をする(S3)。例えばクライアント機器1は、サーバ2にクライアントIDを通知し、ファイルBを取得する。キャンセルボタンがクリックされたときには、図8に示す画面を閉じる。
サーバ2は、クライアントIDに基づき、サーバ2内に蓄積されているデータのうちクライアントIDに対応する情報を抽出し、例えば図3に示したファイルBを生成し、クライアント機器1にファイルBを配信する(S4)。
クライアント機器1は、ファイルBを保存する。
次に、クライアント機器1は、ファイルBを解析する(S5)。すなわち、クライアント機器1がダウンロードサーバ3にアクセスするときの制御情報を解析する。つまり、上述したように、クライアント機器1は、図3のファイル分散パラメータに基づいて、次回の自動ファイルB取得要求実行予定時刻を算出する。
次に、クライアント機器1は、ダウンロードを実行することができるか否かを判断する(S6)。つまり、クライアント機器1は、手動の場合には、図3のダウンロード分散パラメータを無視し、例えば、図3に示した「ダウンロードコンテンツ」のうち「アップデートファイルVer1」をダウンロードするときには、現在時刻(自動ファイルB取得要求実行予定時刻)がダウンロード有効期間開始日時である「2006/4/1 12:00」からダウンロード有効期間終了日時である「2007/3/31 23:59」の間であるか否かを判断する。例えばこの解析中には、クライアント機器1は、図9に示す画面を表示する。
現在時刻がこれらの間にあるときには、図10に示す画面を表示し、これらの間にないときには、例えばダウンロードするファイルが見つからない(ダウンロードが許可されない)ことを示す図示しない画面を表示する。
クライアント機器1は、図10に示す画面で、ソフトウェアのアップデートを実行するための「はい」ボタンがクリックされたか「いいえ」ボタンがクリックされたかを判断し、「はい」がクリックされたときには、ダウンロード中であることを示す図11を表示しダウンロードを実行し、「いいえ」がクリックされたときには図10に示す画面を消去する。
S6で、ダウンロードを実行することができないと判断したときには、クライアント機器1は、例えば再び上述したように「ファイルB取得要求」を行い、次回の「自動ダウンロード処理実行予定時刻」を算出(更新)する。
このように本実施形態によれば、クライアント機器1がサーバ2にファイルAを取得する要求をしたときに、ファイルAの置かれたダウンロードサーバ3へのアクセス制御に関する情報を含むファイルBをクライアント機器1に通知し、ファイルBに含まれる「ダウンロード有効期間開始日時」、「ダウンロード有効期間終了日時」及び「ダウンロード分散パラメータ」の情報に基づき、クライアント機器1がダウンロードサーバ3からファイルAをダウンロードすることができる時刻を制御(分散)することができる。従って、ダウンロードサーバ3毎にトラヒックピークを抑制することができる。
従って、極端なトラヒックピークに備えサーバなどのリソースを確保する必要がないので、システム構築初期費用及び運用費用を削減することができる。
また、ファイルBに含まれる「ダウンロード分散パラメータ」の情報を、ダウンロード先URL毎に設定することで、各サーバのパフォーマンスを最大限に活用したアクセス分散及び集約が可能となる。
更に、ファイルBに含まれる「ダウンロード有効期間開始日時」及び「ダウンロード有効期間終了日時」を、クライアント機器1に通知しておき、この期間外でクライアント機器1がダウンロードサーバ3にアクセスすることを抑止することで、ダウンロードサーバ3の保守などをサービス事業者側の都合で行うことができる。
なお、ファイルBの取得に失敗したとき、あるいは取得したファイルBに「ファイル分散パラメータ」や「ダウンロード分散パラメータ」が存在しないときには、予め出荷時にクライアント機器1に埋め込まれたデフォルト値、あるいはクライアント機器1の一部の情報(Macアドレス、基板ID、IPアドレスなど)を元にデフォルト値を算出し、次回の「自動ファイルB取得実行予定時刻」などを算出すればよい。
また、ファイルBに含まれる「ダウンロード有効期間開始日時」及び「ダウンロード有効期間終了日時」を、クライアント機器1に通知しておき、この期間内で任意の時刻になり次第、クライアント機器1が自動でサーバにアクセスしてファイルをダウンロードできるようにすることで、日夜、平日休日の境なくダウンロードを行うことができ、大局的に見れば、クライアント機器1のユーザの操作をトリガーとしたダウンロードより、より早く、より多くのクライアント機器1にダウンロードを実行することができる。
次に、本発明の他の実施形態について説明する。
図12は本発明の他の実施形態に係るクライアント/サーバシステムの動作を説明するためのタイミングチャートである。
図12に示すように、この実施形態に係るサーバ2は、クライアント機器1などによるサーバ2やダウンロードサーバ3へのアクセス状況に応じてファイルBの内容を最適化する最適化機能を備えている。なお、この最適化機能はサーバ2以外の他の機器に備えるようにしても勿論かまわない。
このサーバ2の最適化機能は、サーバ2自体に対して、サーバリソース情報を取得するための要求を通知し、サーバリソース情報を取得する。サーバリソース情報とは、例えばサーバ2のアクセスログ、サーバリソース(CPU使用率、メモリ使用率)、ネットワーク帯域使用率などの情報を含んでいる。これにより、サーバ2の最適化機能は、サーバ2のアクセスログ、サーバリソース(CPU使用率、メモリ使用率)、ネットワーク帯域使用率などの情報を取得する(S11)。
サーバ2の最適化機能は、これらの情報に基づき、「ファイル分散パラメータ値」を更新する(S12)。以下にその一例を示す。
CPU使用率80%超過時:ファイル分散パラメータ値を1.25倍に設定
CPU使用率90%超過時:ファイル分散パラメータ値を1.5倍に設定
ネットワーク帯域使用率75%超過時:ファイル分散パラメータ値を2.0倍に設定
次いで、サーバ2の最適化機能は、ダウンロードサーバ3に対して、サーバリソース情報の取得を要求し、サーバリソース情報を取得する。サーバリソース情報とは、例えばダウンロードサーバ3のアクセスログ、サーバリソース(CPU使用率、メモリ使用率)、ネットワーク帯域使用率などの情報を含んでいる。これにより、サーバ2の最適化機能は、ダウンロードサーバ3のアクセスログ、サーバリソース(CPU使用率、メモリ使用率)、ネットワーク帯域使用率などの情報を取得する(S13)。
サーバ2の最適化機能は、これらの情報に基づき、「ダウンロード分散パラメータ値」を更新する(S14)。以下にその一例を示す。
CPU使用率80%超過時:ファイル分散パラメータ値を1.25倍に設定
CPU使用率90%超過時:ファイル分散パラメータ値を1.5倍に設定
ネットワーク帯域使用率75%超過時:ファイル分散パラメータ値を2.0倍に設定
このように本実施形態によれば、ファイルBのファイル分散パラメータ値を、サーバ2やダウンロードサーバ3のリソース情報に基づいて自動で最適化する機能を備えているので、ダウンロードサーバ3などへの負荷の分散を効果的に実現することができる。
なお、本発明は以上説明した実施の形態には限定されるものではなく、本発明の技術思想の範囲内で種々の変形が可能である。
本発明の一実施形態に係るクライアント/サーバシステムにおける概念図である。 クライアント機器、サーバ及びダウンロードサーバの構成を示すブロック図である。 サーバがクライアント機器(DVR)に送信するファイルのフォーマットの一例を示す図である。 サーバがクライアント機器(TV)に送信するファイルのフォーマットの一例を示す図である。 自動ダウンロード処理の動作を示すフローチャートである。 自動ファイル取得要求実行予定時刻及び自動ダウンロード処理実行予定時刻の再計算(更新)のタイムチャートである。 ファイルをダウンロードするときの手動処理の動作を示すフローチャートである。 手動でのファイルのダウンロード時にクライアント機器に表示される画面の一例である(その1)。 手動でのファイルのダウンロード時にクライアント機器に表示される画面の一例である(その2)。 手動でのファイルのダウンロード時にクライアント機器に表示される画面の一例である(その3)。 手動でのファイルのダウンロード時にクライアント機器に表示される画面の一例である(その4)。 本発明の他の実施形態に係るクライアント/サーバシステムの動作を説明するためのタイミングチャートである。
符号の説明
1 クライアント機器
2 サーバ
3 ダウンロードサーバ
4 UIアプリケーション部
5 アップデートスクリプト部
6 アップデートエージェント部
7 インターフェース部
8 クライアント機器共通ライブラリ部
100 クライアント/サーバシステム
101 ネットワーク

Claims (4)

  1. 複数のダウンロードサーバとネットワークを介して接続可能なクライアント機器との間で前記ネットワークを介して接続可能にされたサーバであって、
    前記ネットワークを介して前記クライアント機器に対してダウンロードファイルを配信可能な前記複数のダウンロードサーバの各ダウンロードサーバ毎に異なるURL、前記クライント機器から前記ダウンロードサーバへのアクセスを時間的に規制するための前記URL毎に設定された第1のパラメータ、及び、前記クライアント機器からのファイルの配信要求を時間的に規制するための第2のパラメータを含む前記ファイルを生成する手段と、
    前記クライント機器からの要求に応じて、前記ファイルを前記クライント機器に配信する手段と、
    前記ダウンロードサーバの負荷状況に応じて前記第1のパラメータを最適化する手段と、
    前記サーバの負荷状況に応じて前記第2のパラメータを最適化する手段と
    を具備することを特徴とするサーバ。
  2. 請求項1に記載のサーバであって、
    前記第1のパラメータは、前記クライント機器から前記ダウンロードサーバへのアクセスするための待ち時間を規定するものであることを特徴とするサーバ。
  3. 請求項1に記載のサーバであって、
    前記第1のパラメータは、前記クライント機器から前記ダウンロードサーバへのアクセスする期間を規定するものであることを特徴とするサーバ。
  4. 請求項1に記載のサーバであって、
    前記第1のパラメータは、前記クライント機器から前記ダウンロードサーバへのアクセスする期間及び当該期間内での待ち時間を規定するものであることを特徴とするサーバ
JP2007160383A 2007-06-18 2007-06-18 サーバ Active JP5367237B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2007160383A JP5367237B2 (ja) 2007-06-18 2007-06-18 サーバ
US12/139,608 US7853692B2 (en) 2007-06-18 2008-06-16 Server, client apparatus, program and download method
CN200810126934.4A CN101330509B (zh) 2007-06-18 2008-06-18 服务器、客户端装置、程序和下载方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007160383A JP5367237B2 (ja) 2007-06-18 2007-06-18 サーバ

Publications (2)

Publication Number Publication Date
JP2008310750A JP2008310750A (ja) 2008-12-25
JP5367237B2 true JP5367237B2 (ja) 2013-12-11

Family

ID=40133355

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007160383A Active JP5367237B2 (ja) 2007-06-18 2007-06-18 サーバ

Country Status (3)

Country Link
US (1) US7853692B2 (ja)
JP (1) JP5367237B2 (ja)
CN (1) CN101330509B (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5124352B2 (ja) * 2008-06-06 2013-01-23 株式会社日立ソリューションズ 電子データ配布システム
KR101560185B1 (ko) 2009-03-27 2015-10-15 삼성전자주식회사 Url을 이용한 분산 컨트롤 방법 및 장치
US9770654B1 (en) 2009-09-30 2017-09-26 Amazon Technologies, Inc. Cross device operation of games
US8662997B1 (en) 2009-09-30 2014-03-04 Amazon Technologies, Inc. Systems and methods for in-game provisioning of content
US8414390B1 (en) * 2009-09-30 2013-04-09 Amazon Technologies, Inc. Systems and methods for the electronic distribution of games
US10096066B2 (en) 2009-10-20 2018-10-09 Trading Technologies International, Inc. User-defined algorithm electronic trading
JP5720095B2 (ja) * 2009-12-18 2015-05-20 ソニー株式会社 受信装置、受信方法、送信装置、送信方法、プログラム、および放送システム
CN102948158B (zh) * 2010-05-18 2015-10-14 三菱电机株式会社 广播补充时间表提供装置、广播补充系统以及广播补充方法
US8566220B2 (en) 2011-01-26 2013-10-22 Trading Technologies International, Inc. Block placing tool for building a user-defined algorithm for electronic trading
US8972065B2 (en) * 2012-04-05 2015-03-03 Google Inc. Distribution of call-home events over time to ameliorate high communications and computation peaks in intelligent control system
US9191209B2 (en) 2013-06-25 2015-11-17 Google Inc. Efficient communication for devices of a home network
JP6167736B2 (ja) * 2013-08-05 2017-07-26 ソニー株式会社 情報処理装置、サーバ装置、情報処理方法及びプログラム
KR101604303B1 (ko) * 2013-10-30 2016-03-18 삼성에스디에스 주식회사 업데이트 실행 장치 및 방법과 이를 이용한 기록 매체, 업데이트 제공 서버 및 업데이트 제공 방법
MY201069A (en) 2016-02-05 2024-02-01 Hfi Innovation Inc Method and apparatus of motion compensation based on bi-directional optical flow techniques for video coding
CN105828120A (zh) * 2016-03-02 2016-08-03 乐视云计算有限公司 一种基于用户标记的视频自动下载方法和装置
US11362748B2 (en) * 2016-06-08 2022-06-14 Saturn Licensing Llc Reception device, transmission device, and data processing method
CN106790603A (zh) * 2016-12-29 2017-05-31 东软集团股份有限公司 消息交互的方法、装置及系统
CN107888654B (zh) * 2017-09-30 2020-10-16 北京诺君安信息技术股份有限公司 一种按时区更新数据的方法及服务器
CN110830535B (zh) * 2018-08-10 2021-03-02 网宿科技股份有限公司 一种超热文件的处理方法、负载均衡设备及下载服务器
WO2022249827A1 (ja) * 2021-05-25 2022-12-01 パナソニックIpマネジメント株式会社 電子装置、システム、及び電子装置の制御方法
CN115374470A (zh) * 2022-08-15 2022-11-22 四川启睿克科技有限公司 基于时效链接的plm系统电子物料获取方法及装置
CN115665134A (zh) * 2022-10-27 2023-01-31 中国银行股份有限公司 下载文件的方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6952737B1 (en) * 2000-03-03 2005-10-04 Intel Corporation Method and apparatus for accessing remote storage in a distributed storage cluster architecture
JP2001337882A (ja) * 2000-05-25 2001-12-07 Sony Corp 情報配信方法、情報配信システム、情報配信装置および通信端末
JP2004021326A (ja) * 2002-06-12 2004-01-22 Nec Corp 自動情報配信システム、方法、サーバ及びプログラム、並びに表示端末及び操作端末
FR2847752B1 (fr) * 2002-11-27 2006-01-13 At & T Corp Methode et systeme pour gerer l'echange de fichiers joints a des courriers electroniques
US7188161B1 (en) * 2003-02-11 2007-03-06 At&T Corp. Method for configuring a network element at a customer premise via a mobile data terminal
CN1879081B (zh) * 2003-11-04 2011-07-13 汤姆森许可贸易公司 用于下载服务的热点处的高速缓存服务器
JP2005184472A (ja) * 2003-12-19 2005-07-07 Matsushita Electric Ind Co Ltd コンテンツ配信システム
JP2005339130A (ja) * 2004-05-26 2005-12-08 Toshiba Corp コンテンツダウンロードシステムとそのサーバ装置及びクライアント装置
JP4403048B2 (ja) * 2004-10-12 2010-01-20 日本放送協会 コンテンツ提供サーバ、ユーザ端末、コンテンツ提供プログラム、及びコンテンツ取得プログラム
JP4129449B2 (ja) * 2004-10-19 2008-08-06 インターナショナル・ビジネス・マシーンズ・コーポレーション ストリームデータ配信方法とそのシステム

Also Published As

Publication number Publication date
CN101330509B (zh) 2012-09-05
JP2008310750A (ja) 2008-12-25
US20080313261A1 (en) 2008-12-18
US7853692B2 (en) 2010-12-14
CN101330509A (zh) 2008-12-24

Similar Documents

Publication Publication Date Title
JP5367237B2 (ja) サーバ
JP4345844B2 (ja) 通信システム、情報処理装置および方法、並びにプログラム
US9164757B2 (en) Image forming apparatus, tracking apparatus, managing apparatus and method of updating firmware of image forming apparatus
US6983479B1 (en) Dynamic content activation by locating, coordinating and presenting content publishing resources such that content publisher can create or change content
JP5726097B2 (ja) 適応型ファイル配信システムおよび方法
US6845396B1 (en) Method and system for content deployment and activation
US9201643B2 (en) Communication system, communication method, and communication apparatus
US20160105710A1 (en) System for the Delivery and Dynamic Presentation of Large Media Assets over Bandwidth Constrained Networks
US20100011060A1 (en) Methods and apparatus for distributing content
US20110107322A1 (en) Network device, network device system and software update method of network device
JP7013165B2 (ja) 管理装置、管理装置の制御方法、及びプログラム
WO2017154406A1 (ja) 広告配信サーバ、番組配信サーバ及び再生端末、並びに映像配信システム
CN111144954A (zh) 展示资源投放方法及其设备
WO2016150387A1 (zh) 界面处理方法、装置及系统
JPWO2014155516A1 (ja) 番組情報管理装置、番組情報管理方法及び制御プログラム
JPH1195989A (ja) プログラム更新方式
JP4403048B2 (ja) コンテンツ提供サーバ、ユーザ端末、コンテンツ提供プログラム、及びコンテンツ取得プログラム
WO2016202202A1 (zh) 设备连接的方法和装置、以及智能电视系统
JP2004178353A (ja) 情報端末,コンテンツ取得プログラム
WO2014148581A1 (ja) 電子機器、およびスクリプト生成装置
JP5372567B2 (ja) 情報処理装置
JP4343196B2 (ja) クライアント装置、ソフトウェアストリーミング方法及びプログラム
JP2012195642A (ja) ホームゲートウェイ遠隔制御システム、ホームゲートウェイ遠隔制御方法、ホームゲートウェイ遠隔制御プログラム及びホームゲートウェイ
JP2004005124A (ja) ソフトウェア配布システム
JP2016206759A (ja) ソフトウェア・アップデート・システムおよび管理サーバー

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120119

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20120612

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130911

R150 Certificate of patent or registration of utility model

Ref document number: 5367237

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250