JP2008250370A - 情報処理装置及び情報処理用プログラム - Google Patents

情報処理装置及び情報処理用プログラム Download PDF

Info

Publication number
JP2008250370A
JP2008250370A JP2007087151A JP2007087151A JP2008250370A JP 2008250370 A JP2008250370 A JP 2008250370A JP 2007087151 A JP2007087151 A JP 2007087151A JP 2007087151 A JP2007087151 A JP 2007087151A JP 2008250370 A JP2008250370 A JP 2008250370A
Authority
JP
Japan
Prior art keywords
distribution
information
processing apparatus
information processing
content
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.)
Granted
Application number
JP2007087151A
Other languages
English (en)
Other versions
JP4930148B2 (ja
Inventor
Hideki Matsuo
英輝 松尾
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.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2007087151A priority Critical patent/JP4930148B2/ja
Priority to US12/007,020 priority patent/US20080244673A1/en
Publication of JP2008250370A publication Critical patent/JP2008250370A/ja
Application granted granted Critical
Publication of JP4930148B2 publication Critical patent/JP4930148B2/ja
Expired - Fee Related 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/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • 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/104Peer-to-peer [P2P] networks
    • 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/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

【課題】配信完了期限が予め設定されているコンテンツであっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たるリクエストノードに配信することが可能な情報処理装置を提供する。
【解決手段】ネットワークを介して接続されたコンテンツノードから、配信完了期限が設定されているコンテンツの配信を受けるリクエストノードにおいて、当該配信完了期限までの残り時間を検出し、検出された残り時間全体に渡ってそのコンテンツが配信され且つ当該残り時間内に配信完了するために必要なダウンロード速度を、その残り時間に基づいて決定し、その決定されたダウンロード速度を示す情報を含むコンテンツ要求情報をリクエストノードに送信する。
【選択図】図1

Description

本発明は、情報処理装置及び当該情報処理装置用の情報処理プログラムの技術分野に属し、より詳細には、インターネット等のネットワークを介して複数の情報処理装置が接続されなるネットワークシステムを構成する当該情報処理装置及び当該情報処理装置用の情報処理プログラムの技術分野に属する。
近年、インターネット等のネットワーク技術は著しく進歩しつつあり、その中で、例えば下記特許文献1に開示されている如きコンテンツ配信システムに関する研究が行われている。
ここで、当該コンテンツ配信システムにおいて、例えば映画等のコンテンツを配信する場合には、当該コンテンツに相当する動画情報等を蓄積/記憶しているコンテンツノードから、当該コンテンツの視聴を希望する者により操作されるリクエストノードに対して当該動画情報等が配信(伝送)される。なお、当該「コンテンツノード」の定義付けについては、例えば下記特許文献1の明細書段落番号[0071]を参照することができ、また当該「リクエストノード」の定義付けについては、例えば下記特許文献1の明細書段落番号[0064]及び[0065]を参照することができる。
そして、当該配信時の配信速度については、例えば上記リクエストノードにおけるコンテンツの配信が途切れない程度の配信速度で当該配信が実行されれば、実用上の問題はなかった。
一方、上記コンテンツ配信システムにより配信されるコンテンツの中には、当該配信先たるリクエストノードへの配信完了期限が定められているものがある。具体的には、例えばある映画の公開前にその予告編に相当する動画情報を配信する場合、その予告編たる動画情報は、対応する映画の公開までに当該映画の視聴を希望する者により操作されるリクエストノードにその配信を完了する必要がある。
そして、上述した配信完了期限が定められているコンテンツの配信は、実際にそのコンテンツが視聴されているか否かに拘わらず実行される場合が多いが、下記特許文献1等の従来技術においては、当該配信完了期限が定められているコンテンツの配信速度をどのように設定するかについては考慮されていなかった。
特開2006−197400
そこで、上記配信完了期限が定められているコンテンツの配信において、その配信速度を必要以上に速く設定すると、その配信を担うネットワークとしての負荷の増大や、当該配信元たるコンテンツノードにおける負荷の増大を招くと言う問題点があった。
一方、当該コンテンツの配信について配信速度が遅くなってしまうと、その配信完了期限に間に合わなくなる場合があると言う問題点もある。
そこで、本発明は上記の各問題点に鑑みて為されたもので、その目的の一例は、配信完了期限が予め設定されているコンテンツであっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たるリクエストノードに配信することが可能な情報処理装置及び当該情報処理装置用の情報処理プログラムを提供することにある。
上記の課題を解決するために、請求項1に記載の発明は、ネットワークを介して接続されたコンテンツホルダ等の配信元情報処理装置から、配信完了期限が予め設定されている配信情報の配信を受ける情報処理装置において、前記配信完了期限までの残り時間を検出する制御部等の検出手段と、配信対象となっている前記配信情報が、前記検出された残り時間全体に渡って当該情報処理装置に対して配信され且つ当該残り時間内に配信完了するために必要な当該配信情報の配信態様を、前記検出された残り時間に基づいて決定する制御部等の決定手段と、前記決定された配信態様を示す態様情報を含み且つ前記配信を要求する要求情報を、前記配信元情報処理装置に送信する通信部等の要求手段と、を備える。
よって、配信完了期限までの残り時間全体に渡って配信情報が配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示す態様情報を含ませて配信要求をするので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要な配信情報の配信を当該配信完了期限までに確実に完了させることができる。
上記の課題を解決するために、請求項2に記載の発明は、請求項1に記載の情報処理装置において、前記配信態様は前記ネットワーク内における前記配信情報の配信速度であり、配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する制御部等の未配信情報量検出手段を備え、前記決定手段は、前記検出された未配信情報量を前記残り時間で除した速度を前記配信速度として決定し、更に前記要求手段は、前記決定された配信速度を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に送信するように構成される。
よって、未配信の配信情報の情報量を残り時間で除することによりその後の配信速度を決定して要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
上記の課題を解決するために、請求項3に記載の発明は、請求項1に記載の情報処理装置において、前記配信情報は、複数の部分配信情報により構成され、前記配信態様は、前記ネットワーク内における前記配信情報の配信所要時間であり、配信されるべき前記配信情報のうち未配信の前記部分配信情報の数を未配信数として検出する制御部等の未配信数検出手段を備え、前記決定手段は、前記検出された未配信数を前記残り時間で除した時間を未配信の前記部分配信情報毎の前記配信所要時間として決定し、前記要求手段は、前記決定された配信所要時間内に未配信の前記部分配信情報の配信が完了するための前記要求情報を、前記配信元情報処理装置に送信するように構成される。
よって、未配信の部分配信情報の数で残り時間を除することによりその後の部分配信情報毎の配信所要時間を決定し、当該配信所要時間内に対応する部分配信情報の配信が完了するように要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
上記の課題を解決するために、請求項4に記載の発明は、請求項1に記載の情報処理装置において、前記配信情報は複数の前記配信元情報処理装置から配信され、前記配信態様は実際に前記配信情報の配信元となる前記配信元情報処理装置を示すものであり、実際に前記配信情報の配信に供されていない前記配信元情報処理装置を検出する制御部等の情報処理装置検出手段を備え、前記決定手段は、前記検出された情報処理装置を新たな配信元として決定し、前記要求手段は、前記決定された新たな配信元情報処理装置を加えた複数の前記配信元情報処理装置から前記配信情報が夫々配信されるように、前記要求情報を実際に配信元となる各前記配信元情報処理装置に送信するように構成される。
よって、未使用の配信元情報処理装置があるとき、それを加えた複数の配信元情報処理装置から配信情報が配信されるように要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
上記の課題を解決するために、請求項5に記載の発明は、請求項1に記載の情報処理装置において、前記配信態様は、前記配信情報を分割して得られる配信情報ブロック一つ分の情報量であり、配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する制御部等の未配信情報量検出手段と、前記配信完了期限までに前記配信情報ブロックの配信を要求することが可能な回数である要求可能回数を検出する制御部等の回数検出手段と、を備え、前記決定手段は、前記検出された未配信情報量を前記検出された要求可能回数で除した値を前記一つ分の情報量として決定し、前記要求手段は、前記決定された一つ分の情報量を前記態様情報として含み且つ当該一つ分の情報量を有する前記配信情報ブロックの配信を要求する旨の前記要求情報を、前記配信元情報処理装置に送信するように構成される。
よって、未配信の配信情報の情報量を配信情報ブロックの配信要求可能回数で除して得られる情報量を、その後の配信情報ブロック一つ分の情報量と決定して要求するので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
上記の課題を解決するために、請求項6に記載の発明は、請求項1に記載の情報処理装置において、前記配信態様は、前記配信情報を分割して得られる配信情報ブロックの配信を要求する旨の前記要求情報を複数回前記配信元情報処理装置に対して送信する際の送信間隔であり、配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する制御部等の未配信情報量検出手段を備え、前記決定手段は、前記検出された未配信情報量を前記配信情報ブロック一つ分として予め設定されている情報量で除した値の逆数を前記送信間隔として決定し、前記要求手段は、前記配信情報ブロック一つ分の前記配信情報の配信を要求する旨の前記要求情報を、前記決定された送信間隔で前記配信元情報処理装置に送信するように構成される。
よって、未配信の配信情報の情報量を配信情報ブロック一つ分の情報量で除した後に逆数化して得られる送信間隔をその後の配信情報ブロックの送信間隔と決定し、当該決定された送信間隔をもって配信情報ブロックの配信を要求することを繰り返すので、ネットワーク上の負荷を最小限にしつつ且つ必要な配信情報を配信完了期限までに配信完了させることができる。
上記の課題を解決するために、請求項7に記載の発明は、請求項1から6のいずれか一項に記載の情報処理装置において、前記決定手段は、前記配信完了期限までに前記配信が完了するように、現在の前記検出された残り時間に基づいて新たな前記配信態様を再決定し、前記要求手段は、前記再決定された新たな配信態様を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に再度送信するように構成される。
よって、新たな配信態様を再決定し、それを示す態様情報を含む要求情報を再度送信するので、ネットワーク等の状況の変化により配信完了期限までに配信完了させるための配信態様が変化しても、それに追随して確実に配信を配信完了期限までに完了させることができる。
上記の課題を解決するために、請求項8に記載の発明は、請求項7に記載の情報処理装置において、前記決定手段は、予め設定された期間毎に前記配信態様の再決定を行うことを繰り返すように構成される。
よって、予め設定された期間毎に新たな配信態様を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
上記の課題を解決するために、請求項9に記載の発明は、請求項7に記載の情報処理装置において、前記決定手段は、予め設定された量の前記配信情報の配信が完了する度に前記配信態様の再決定を行うように構成される。
よって、予め設定された量の配信が完了する度に新たな配信態様を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
上記の課題を解決するために、請求項10に記載の発明は、請求項7に記載の情報処理装置において、前記決定手段は、前記配信情報の配信経路となっている前記ネットワークにおいて前記配信に対する障害が発生したとき、前記配信態様の再決定を行うように構成される。
よって、配信経路となっているネットワーク上に障害が発生したとき新たな配信態様を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
上記の課題を解決するために、請求項11に記載の発明は、請求項1から10のいずれか一項に記載の情報処理装置において、当該情報処理装置において、前記配信情報以外の他の情報の授受を前記ネットワーク内において実行している場合に、当該授受を中断するか否かを判定する制御部等の中断判定手段と、前記中断判定手段により前記授受を中断すべきと判定されたとき、当該授受を中断する制御部等の中断手段と、を備える。
よって、配信情報の配信以外に他の情報の授受をネットワーク内において実行しているとき、当該他の情報の授受を中断すべきか否かを判定し、当該中断すべき時は当該他の情報の授受を中断して配信情報の配信のみを行うので、必要に応じて配信情報の配信を優先化して配信完了期限までにその配信を完了させることができる。
上記の課題を解決するために、請求項12に記載の発明は、請求項11に記載の情報処理装置において、前記中断判定手段は、前記検出された残り時間が、前記配信情報の配信が可能となってから前記配信完了期限までの期間に対して予め設定された割合以下の時間となったとき、前記授受を中断すると判定するように構成される。
よって、検出された現在残り時間が、配信可能となってから配信完了期限までの期間に対して予め設定された割合以下となったとき、他の情報の授受を中断すると判定するので、実際に残り時間が短くなったときに他の情報の授受を中断することで、効率的に他の情報の授受を中断して配信情報の配信を優先させることができる。
上記の課題を解決するために、請求項13に記載の発明は、請求項11に記載の情報処理装置において、前記中断判定手段は、前記配信情報の実際の配信速度が予め設定されている閾値配信速度以下となったとき、前記授受を中断すると判定するように構成される。
よって、配信情報の実際の配信速度が閾値配信速度以下となったときに、可及的速やかに配信情報の配信を実行すべき状態であるとして他の情報の授受を中断すると判定するので、効率的に他の情報の授受を中断して配信情報の配信を優先させることができる。
上記の課題を解決するために、請求項14に記載の発明は、請求項11に記載の情報処理装置において、前記配信情報は、複数の部分配信情報により構成され、未配信の前記部分配信情報の配信に充てることが可能な時間である充当可能時間を検出する制御部等の充当可能時間検出手段を備え、前記中断判定手段は、いずれかの前記部分配信情報に対応する前記充当可能時間が予め設定されている閾値時間以下となったとき、前記授受を中断すると判定するように構成される。
よって、いずれかの部分配信情報に対応する充当可能時間が閾値時間以下となったときに、可及的速やかに配信情報の配信を実行すべき状態であるとして他の情報の授受を中断すると判定するので、効率的に他の情報の授受を中断して配信情報の配信を優先させることができる。
上記の課題を解決するために、請求項15に記載の発明は、コンピュータを、請求項1から14のいずれか一項に記載の情報処理装置として機能させる。
よって、配信完了期限までの残り時間全体に渡って配信情報が配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示す態様情報を含ませて配信要求をするように当該コンピュータが機能するので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要な配信情報の配信を当該配信完了期限までに確実に完了させることができる。
本発明によれば、配信完了期限までの残り時間全体に渡って配信情報が配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示す態様情報を含ませて配信要求をするので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要な配信情報の配信を当該配信完了期限までに確実に完了させることができる。
従って、配信完了期限が予め設定されている配信情報であっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たる情報処理装置に配信することができる。
次に、本発明を実施するための最良の形態について図面に基づいて説明する。なお、以下に説明する実施形態は、上記特許文献1に記載の発明と同様のコンテンツ配信システム(すなわち、映画や音楽等のコンテンツを配信するいわゆるP2P(Pear-to-Pear)型のコンテンツ配信システム)に対して本発明を適用した場合の実施の形態である。
(I)本発明の原理
初めに、本発明に係る実施形態について具体的に説明する前に、本発明の原理について説明する。
先ず、本発明におけるコンテンツ配信システムに係るハードウエア構成、当該コンテンツ配信のための仕組み(当該コンテンツの配信のために必要なメッセージの授受に用いられる分散ハッシュテーブル(DHT(Distributed Hash Table))は、基本的には上記特許文献1に開示されているコンテンツ配信システムに係るハードウエア構成及びコンテンツ配信のための仕組みと同様のものが適用される。すなわち、本実施形態のコンテンツ配信システムに係るハードウエア構成及びDHTは、具体的には、例えば上記特許文献1の明細書段落番号[0039]乃至[0072]並びに図1乃至図5に記載されているハードウエア構成及びDHTが用いられる。
上述したように、配信完了期限が予め定められているコンテンツの配信については、上記特許文献1に記載の発明ではなんら考慮されていない。
これに対し、以下に実施形態を説明する本発明では、図1(a)に例示するように、あるコンテンツの取得開始が各ノードにおいて可能となったタイミング以降そのコンテンツの配信完了期限までがコンテンツ取得期間とされ、その間における任意のタイミングから各リクエストノードにおけるコンテンツの取得が開始される。
ここで、当該コンテンツの取得は、各リクエストノード夫々の使用者の都合等により、当該各リクエストノード夫々において異なるタイミング(例えば図1(a)に例示するタイミングTaとタイミングTb)で開始されるのが通常である。これに対し、当該コンテンツ自体については、いずれのリクエストノードに配信されるものであってもその配信完了期限が定められている。
そこで、本発明では、各リクエストノード毎に、実際の取得開始からそのコンテンツに係る配信完了期限までの残り時間を求め、その多少に応じてその残り時間を最大限利用するように当該コンテンツの配信態様を変更し、当該変更後の配信態様にて必要なコンテンツの配信を受けるように、当該コンテンツの配信元であるコンテンツノードに対する要求情報(後述するクエリ)を送出する。
このとき、当該配信態様として具体的には、例えば図1(a)に例示するように各リクエストノード毎にその取得開始タイミング(例えば図1(a)に例示するタイミングTaとタイミングTb)に応じた配信速度(ダウンロード速度。例えば図1(a)に例示する速度Vaと速度Vb)を指定して上記要求情報を出すものが主として考えられる。
また、他の例としては、配信されるべきコンテンツをそのデータ量に基づいて複数のコンテンツブロックBに等分し、当該分割された各コンテンツブロックBの配信を要求するタイミングを図1(b)に例示するように変えることで、実質的にダウンロード速度を変える構成としても良い。
更に、当該コンテンツを、複数種類のデータ量を夫々に有するコンテンツブロックB1乃至B6、…、に分割し、当該分割されたコンテンツブロックB1乃至B6、…、の配信を図1(c)に例示するように一定要求間隔Tiで要求することで、実質的にダウンロード速度を変える構成としても良い。
本発明では、以上の原理により、各リクエストノードに対する配信が一度に集中することに起因するネットワークとしての過大な負荷の防止と、配信完了期限の徒過を防止と、を両立させる。
次に、上記原理に基づく本発明に係る実施形態について、具体的に図1乃至図8を用いて説明する。
(II)実施形態
以下では、図1に例示する原理に則った本発明に係る実施形態について、図2乃至図8を用いて説明する。なお、上述したように、実施形態におけるコンテンツ配信システムに係るハードウエア構成、DHT及びルーティングテーブル等は、夫々、基本的には上記特許文献1に開示されているコンテンツ配信システムに係るものと同様のものが適用されるので、以下に説明する実施形態においては、本発明に係るコンテンツの配信段階に係る処理について主として説明する。
また、図2は実施形態に係るノード一般の概要構成を示すブロック図であり、図3は実施形態に係るリクエストノードにおけるメッセージ処理の全体を示すフローチャートであり、図4乃至図8は当該リクエストノードにおける実施形態に係るコンテンツの配信処理の細部を夫々示すフローチャートである。
なお、実施形態に係る各ノードは、基本的には同様のハードウエア構成を備えており、コンテンツ配信システム内における役割の相違に応じて異なる動作をすることとなる。ここで、当該役割とは、具体的には、配信対象たるコンテンツの所在を問い合わせると共にその配信を要求するリクエストノードとしての役割、当該リクエストノードや配信経路上にある他のノードからクエリを受信するキャッシュノードとしての役割、当該コンテンツを管理するルートノードとしての役割、及び、配信対象たるコンテンツに相当するコンテンツデータを保持するコンテンツノードとしての役割、の四つがある。このとき、上記「リクエストノード」の定義付けについては、上述したように上記特許文献1の明細書段落番号[0064]及び[0065]を参照することができ、上記「クエリ」の定義付けについては、例えば上記特許文献1の明細書段落番号[0065]を参照することができ、上記「キャッシュノード」の定義付けについては、例えば上記特許文献1の明細書段落番号[0071]及び[0072]を参照することができ、上記「ルートノード」の定義付けについては、例えば上記特許文献1の明細書段落番号[0053]を参照することができ、更に上記「コンテンツノード」の定義付けについては、上述したように上記特許文献1の明細書段落番号[0071]を参照することができる。更に、各役割としてのノードの動作についての詳細は、例えば上記特許文献1の明細書段落番号[0093]乃至[0115]並びに同図10及び図11を参照することができる。
図2に示すように、実施形態に係るノード1は、演算機能を有するCPU、作業用RAM、各種データ及びプログラムを記憶するROM等から構成された検出手段、決定手段、未配信情報量検出手段、未配信数検出手段、情報処理装置検出手段、回数検出手段、中断判定手段、中断手段、充当可能時間検出手段及びコンピュータとしての制御部11と、コンテンツデータ、インデックス情報(当該インデックス情報については、例えば上記特許文献1の明細書段落番号[0071]を参照することができる)、上記DHT及びその他のプログラム等を記憶保存(格納)するためのHDD等から構成された記憶部12(上記コンテンツデータについては、保存されていないノード1もある)と、受信されたコンテンツデータを一時蓄積するバッファメモリ13と、コンテンツデータに含まれるエンコードされたビデオデータ(映像情報)及びオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部14と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部15と、当該映像処理部15から出力されたビデオ信号に基づき映像表示するCRT(Cathode Ray Tube)又は液晶ディスプレイ等の表示部16と、上記デコードされたオーディオデータをアナログオーディオ信号にD(Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部17と、当該音声処理部17から出力されたオーディオ信号を音波として出力するスピーカ18と、ネットワークを通じて他のノード1との間の情報の通信制御を行なうための要求手段としての通信部20と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部11に対して与える入力部(例えば、キーボード、マウス、或いは操作パネル等)21と、を備えて構成され、制御部11、記憶部12、バッファメモリ13、デコーダ部14及び通信部20はバス22を介して相互に接続されている。
そして、制御部11に含まれるCPUが記憶部12等に記憶された各種プログラムを実行することにより、上記リクエストノード、上記キャッシュノード、上記ルートノード又は上記コンテンツノードのいずれか一つとしてノード1全体を統括制御する。
また、記憶部12内には、上記特許文献1の第4図(d)に例示された如きルーティングテーブルが不揮発性に記憶され、上記メッセージの授受やコンテンツの配信に供されている。
次に、実施形態に係るノード1において主として制御部11により実行される、コンテンツ配信システムとしてのメッセージ処理(実施形態に係るダウンロード速度の決定処理等を含む)について、具体的に図3乃至図8を用いて説明する。
(III)メッセージ処理の全体構成
先ず、実施形態に係るメッセージ処理の全体構成について、図3を用いて説明する。なお、以下に説明するメッセージ処理の前提として、リクエストノードからのクエリに応じて、実施形態に係る配信対象たるコンテンツに相当するコンテンツデータを蓄積しているコンテンツノードが、当該リクエストノードにおいて既に特定されているものとする。
図3に示すように、制御部11は、各ノード1において実行される当該メッセージ処理としては、初めに、当該ノード1自体の電源スイッチがオフとされたか否かを判定し(ステップS1)、オフとされているときは(ステップS1;YES)そのまま当該メッセージ処理を終了する。一方、オフとされていないときは(ステップS1;NO)、制御部11は、既に特定されているコンテンツノードから取得可能なコンテンツの内容を示すコンテンツリストに相当するリスト情報を、ルートノード又はキャッシュノードから受領しているか否かを判定する(ステップS2)。
そして、当該リスト情報を受領済であるときは(ステップS2;YES)、制御部11は、当該受領したコンテンツリストを用いて取得すべきコンテンツの決定し(ステップS3)、更に当該決定したコンテンツを蓄積しているコンテンツノードを検索するためのクエリをコンテンツ配信システム内に送出する(ステップS4)。ここで、当該ステップS4において、後述するダウンロード速度決定処理において複数のコンテンツノードを一度に検索する必要があるときは、制御部11は、その検索する必要がある数のコンテンツノードを検索する旨のクエリを送出する。
次に、検索されたコンテンツに対応するダウンロード速度(又は当該ダウンロード速度に相当するコンテンツブロックBのデータ量及び要求間隔(図1(b)参照)、或いは、当該ダウンロード速度に相当するコンテンツブロックB1乃至B6、…、夫々のデータ量及び一定要求間隔Ti(図1(c)参照)。以下、これら三つを纏めてダウンロード速度等と称する)を、そのリクエストノードの制御部11が決定する(ステップS5)。このステップS5の処理については後ほど詳述する。
そして、当該決定されたダウンロード速度等を示す情報を含み且つコンテンツのダウンロードを要求するクエリをリクエストノードの制御部11が、生成し、コンテンツ配信システム内に送出する(ステップS6)。その後、当該クエリに対応して当該コンテンツのダウンロードを開始する(ステップS7)。
次に、当該ダウンロードの実行中においては、制御部11は、当該コンテンツの当該ダウンロードが完了したか否かを常に監視する(ステップS8)。そして、当該ダウンロードが完了しているときは(ステップS8;YES)、制御部11は、ダウンロードすべき全てのコンテンツについて当該ダウンロードが完了しているか否かを判定する(ステップS11)。全てのコンテンツについてダウンロードが完了しているときは(ステップS11;YES)、制御部11は、上記ステップS1に戻って上述してきた一連の処理を繰り返す。またステップS11の判定において、未だダウンロードすべきコンテンツが残っているときは(ステップS11;NO)、制御部11は、上記ステップS3に戻ってそれ以降の処理を繰り返す。
他方、ステップS8の判定において、当該ダウンロードが完了してないときは(ステップS8;NO)、制御部11は、現時点で現在ダウンロード中のコンテンツにおけるダウンロード速度を見直すか否かを判定する(ステップS9)。このステップS9の処理についても、後ほど詳述する。
そして、制御部11は、ステップS9の判定の結果としての「返り値」が「T(True)」であるか否かを判定する(ステップS10)。当該返り値が「T」であるときは(ステップS10;YES)、制御部11は、当該ダウンロード速度を見直すタイミングが到来しているとして上記ステップS5の処理に移行する。一方当該返り値が「T」でない、すなわち「F(False)」であるときは(ステップS10;NO)、制御部11は、現在はダウンロード速度の見直しタイミングではないとして現在のダウンロード速度を維持して引き続きダウンロードを実行する(ステップS7)。
以上説明したステップS5乃至S10の処理が、ダウンロード速度の見直しタイミングの到来毎に繰り返されることで、図1に例示した如くダウンロード速度の最適化が実行され、配信完了期限までに必要なコンテンツのダウンロードが完了することとなる。
次に、上記ステップS2の判定に戻って、当該判定において必要なリスト情報が未だ受領されていないときは(ステップS2;NO)、制御部11は、何らかの新たなメッセージをネットワーク及び通信部20を介して受信したか否かを判定する(ステップS12)。
ステップS12の判定において、新たなメッセージを何ら受信していないときは(ステップS12;NO)、制御部11は、上記ステップS1に戻って上述してきた一連の処理を繰り返す。一方、新たなメッセージを受信したときは(ステップS12;YES)、制御部11は、その受信したメッセージが他のノード1からの転送依頼メッセージ(すなわち、更に上位のノード1に転送すべきクエリメッセージ又は更に下位のノード1に転送すべき返答メッセージ等)であるか否かを判定する(ステップS13)。そして、転送依頼メッセージでないときは(ステップS13;NO)、制御部11は、その受信したメッセージに対応してノード装置1において予め定義付けられている他の処理を実行し(ステップS17)、上記ステップS1に戻って上述してきた一連の処理を繰り返す。
他方、ステップS13の判定において、受信したメッセージが転送依頼メッセージであるときは(ステップS13;YES)、制御部11は、その時点において、当該メッセージの転送に対して、そのリクエストノードにおいて取得すべきコンテンツのダウンロード(上記ステップS7参照)の方を優先すべき状態にあるか否かを判定する状況判定処理を行う(ステップS14)。このステップS14の処理についても、後ほど詳述する。
そして、制御部11は、ステップS14の処理の結果としての返り値が「T」であるか否かを判定する(ステップS15)。当該返り値が「T」であるときは(ステップS15;YES)、制御部11は、その時点では受信したメッセージの転送よりも当該コンテンツのダウンロードを優先すべきであるとして当該メッセージの転送処理を中断し(ステップS16)、上記ステップS1に戻って上述してきた一連の処理を繰り返す。
一方、ステップS15の判定において、当該返り値が「T」でない、すなわち「F」であるときは(ステップS15;NO)、制御部11は、そのまま上記ステップS1に戻って上述してきた一連の処理を繰り返す。
次に、図3に示すステップS9、S14及びS9夫々の処理の細部について、具体的に図4乃至図8を用いて説明する。
(A)ステップS9の処理の詳細について
先ず、説明の都合上、上記ステップS9の処理の詳細について、図4を用いて説明する。なお、図4(a)乃至(c)は、当該ステップS9の処理として採用し得る具体的な処理を夫々示すフローチャートである。
(a)第一の例
上記ステップS9としてのダウンロード速度の見直しタイミングとなっているか否かの判定については、例えば、図4(a)に示すように、制御部11が、予め設定された所定期間(例えば、600秒)が経過したか否か(ステップS20)を判定する。当該所定時間が経過した場合は(ステップS20;YES)、制御部11は、返り値を「T」としてダウンロード速度を見直す。当該所定時間が経過していない場合は(ステップS20;NO)、制御部11は、返り値を「F」として現在のダウンロード速度を維持する。
(b)第二の例
また他の例として、例えば、図4(b)に示すように、制御部11は、予め指定された個数のコンテンツのダウンロードが終了したか否か(ステップS21)を判定する。当該指定数のダウンロードが終了した場合は(ステップS21;YES)、制御部11は、返り値を「T」としてダウンロード速度を見直す。当該指定数のダウンロードが終了していない場合は(ステップS21;NO)、制御部11は、返り値を「F」として現在のダウンロード速度を維持する。なお、この場合の「指定数」は、例えば、ダウンロードすべきコンテンツの総数との関係で、当該総数の2割に相当する個数とするのが好適である。
(c)第三の例
更に他の例としては、例えば、図4(c)に示すように、制御部11は、現在実行されているダウンロードに何らかの障害(例えば、経路状の他のノード1の電源がオフとされることに起因する経路途絶等)が発生したか否か(ステップS22)を判定する。当該障害が発生した場合は(ステップS22;YES)、制御部11は、返り値を「T」としてダウンロード速度を見直す当該障害が発生していない場合は(ステップS22;NO)、制御部11は、返り値を「F」として現在のダウンロード速度を維持する。
(B)ステップS14の処理の詳細について
次に、上記ステップS14の処理の詳細について、図5を用いて説明する。なお、図5(a)乃至(c)は、当該ステップS14の処理として採用し得る具体的な処理を夫々示すフローチャートである。
(a)第一の例
上記ステップS14としてのダウンロード状況の判定処理は、例えば図5(a)に示すように、制御部11は、そのコンテンツの配信完了期限までの残り時間を検出する。制御部11は、その残り時間がコンテンツ取得期間(図1(a)参照)全体の例えば二割以下であるか否か(ステップS25)を判定する。当該残り時間が二割以下である場合は(ステップS25;YES)、制御部11は、返り値を「T」として当該ダウンロード処理の方を他のメッセージの転送処理に対して優先すべきとする。当該残り時間が二割より多い場合は(ステップS25;NO)、制御部11は、返り値を「F」としてダウンロード処理を優先する必要はないと判定する。
(b)第二の例
また他の例として、例えば図5(b)に示すように、制御部11は、現時点での実際のダウンロード速度が予め設定された閾値速度以下となっているか否か(ステップS26)を判定する。当該閾値速度以下となっている場合は(ステップS26;YES)、制御部11は、返り値を「T」として当該ダウンロード処理の方を他のメッセージの転送処理に対して優先させて増速させる。当該閾値速度より速い場合は(ステップS26;NO)、制御部11は、返り値を「F」としてダウンロード処理を優先する必要はないと判定する。なお、この場合の「閾値速度」は、例えば、そのリクエストノードが通信部20を介して物理的に接続されているネットワークにおける帯域幅(最大配信速度)等との関係で、当該帯域幅に対して3割に相当する閾値速度とするのが好適である。
(c)第三の例
更に他の例としては、例えば図5(c)に示すように、制御部11は、そのコンテンツの配信完了期限までの残り時間を検出する。制御部11は、以降にダウンロードすべきコンテンツの数と残り時間とから、以降にダウンロードすべきコンテンツ一つ当たりのダウンロード時間として当該コンテンツに割り当てることが可能なダウンロード時間を算出し、算出したダウンロード時間が予め設定されている当該ダウンロード時間の閾値以下か否かを判定する(ステップS27)。当該ダウンロード時間が閾値以下である場合は(ステップS27;YES)、制御部11は、返り値を「T」として当該ダウンロード処理の方を他のメッセージの転送処理に対して優先すべきとする。当該ダウンロード時間が閾値より長い場合は(ステップS27;NO)、制御部11は、返り値を「F」としてダウンロード処理を優先する必要はないと判定する。また、この場合の「ダウンロード時間の閾値」は、例えば、検出されている残り時間との関係で、当該残り時間に対して2割に相当する閾値とするのが好適である。
(C)ステップS5の処理の詳細について
最後に、上記ステップS5の処理の詳細について、図6乃至図8を用いて説明する。なお、図6乃至図8は、当該ステップS5の処理として採用し得る具体的な処理を夫々示すフローチャートである。
(a)第一の例
上記ステップS5としてのダウンロード速度決定処理は、例えば図6(a)に示すように、制御部11は、そのコンテンツのダウンロードにおける残りのデータ量Dを算出する(ステップS30)。制御部11は、当該コンテンツの配信完了期限までの残り時間Tを算出する(ステップS31)。制御部11は、当該算出されたデータ量Dを残り時間Tで除した値をもってその時点でのダウンロード速度として決定する(ステップS32)。
(b)第二の例
また他の例として、例えば図6(b)に示すように、制御部11は、リクエストノードとして取得すべき全てのコンテンツ(当該全てのコンテンツの配信完了期限が同一であるとする)のうちその時点で未取得であるコンテンツの数Nを算出する(ステップS33)。制御部11は、各コンテンツの配信完了期限までの残り時間Tを同様に制御部11において算出する(ステップS34)。制御部11は、当該算出された残りコンテンツ数Nを残り時間Tで除した値を残りのコンテンツ一つ分に充てられるダウンロード時間Tcとする(ステップS35)。制御部11は、当該ダウンロード時間の逆数(1/Tc)をもってその時点でのダウンロード速度として決定する(ステップS35、S36)。
(c)第三の例
次に、更に他の例を図7(a)を用いて説明する。なお、図7(a)に示すダウンロード速度決定処理の前提としては、図3に示すコンテンツ検索処理(ステップS4)の段階で、コンテンツノードが複数個検索されているものとする。このとき、当該検索数としては、一般的には十個乃至二十個のコンテンツノードが検索されることが好ましいが、本実施形態の実用上は五個以下のコンテンツノードであっても実行可能である。
当該他の例としては、図7(a)に示すように、制御部11は、上述したステップS14の処理に係る状況判定処理を実行した後(ステップS14)、当該ステップS14の判定の結果としての返り値が「T」であるか否かを判定する(ステップS40)。当該返り値が「F」である(すなわち、当該コンテンツのダウンロードを他のメッセージの転送に優先させて行うべき状態にない)ときは(ステップS40;NO)、制御部11は、そのまま図3に示すステップS6の処理に移行する。一方、当該返り値が「T」である(すなわち、現在当該コンテンツのダウンロードを他のメッセージの転送に優先させて行うべき状態にある)ときは(ステップS40;YES)、制御部11は、当該他のメッセージの転送中(すなわち、当該他のメッセージのアップロード中又はダウンロード中)であるか否かを判定する(ステップS41)。
そして、当該転送中でないときは(ステップS41;NO)、制御部11は、後述するステップS43の処理に移行する。一方、転送中であるときは(ステップS41;YES)、制御部11は、当該転送を直ちに中止する(ステップS42)。次に、上記ステップS41の判定において他のメッセージの転送中でないとき(ステップS41;NO)又は上記ステップS42の処理後、制御部11は、現時点においてリクエストノードが接続されていない他のコンテンツノードがコンテンツ配信システム内に存在しているか否かを判定する(ステップS43)。
これにより、未接続のコンテンツノードが存在しているときは(ステップS43;YES)、制御部11は、その未接続のコンテンツノードからのコンテンツのダウンロードを新たに開始して(ステップS44)、図3に示すステップS6の処理に移行する。
一方、ステップS43の判定において、未接続のコンテンツノードが既にないときは(ステップS43;NO)、制御部11は、現在接続されているコンテンツノードからのダウンロードを継続するものとしてそのまま図3に示すステップS6の処理に移行する。
(d)第四の例
次に、更に他の例を図7(b)を用いて説明する。なお、図7(b)において、図7(a)を用いて説明した処理と同様の処理については同様のステップ番号を付して細部の説明は省略する。
当該他の例としては、図7(b)に示すように、制御部11は、上述したステップS14の処理に係る状況判定処理を実行した後(ステップS14)、更に図7(a)を用いて説明したステップS40乃至S42の処理を実行する。
次に、制御部11は、そのコンテンツのダウンロードにおける残りのデータ量Dを算出する(ステップS45)。制御部11は、当該コンテンツの配信完了期限までの残り時間Tを算出する(ステップS46)。制御部11は、当該算出されたデータ量Dを残り時間Tで除した値をもってその時点でのダウンロード速度として決定して(ステップS47)、図3に示すステップS6の処理に移行する。
(e)第五の例
次に、更に他の例を図8(a)を用いて説明する。なお、図8(a)において、図7(a)を用いて説明した処理と同様の処理については同様のステップ番号を付して細部の説明は省略する。
また、図8(a)に示す例は、図1(c)を用いて説明した原理に相当するダウンロード速度決定処理の例である。
当該他の例としては、図8(a)に示すように、制御部11は、上述したステップS14の処理に係る状況判定処理を実行した後(ステップS14)、更に図7(a)を用いて説明したステップS40乃至S42の処理を実行する。
次に、制御部11は、リクエストノードとして取得すべき全てのコンテンツ(当該全てのコンテンツの配信完了期限が同一であるとする)のうちその時点で未取得であるコンテンツのデータ量Dを算出する(ステップS50)。
そして、制御部11は、各コンテンツの配信完了期限までにおいてコンテンツデータの取得要求が可能な回数Cを、例えば1000回程度として算出する(ステップS51)。ここで、当該取得要求に際しては、既にコンテンツノードが検索されているため改めて当該要求に係るクエリメッセージをリクエストノードから送信する必要はない。当該取得要求として具体的には、例えば、取得を所望するコンテンツに相当するコンテンツデータのうちの必要な部分を、そのバイト数又はバイト番号等で指定する指定メッセージを送信する。そして、上記回数Cはこの指定メッセージを送る回数を指すものである。
これらにより、制御部11は、当該算出された残りのデータ量Dを要求可能回数Cで除した値を、その時点における残りのコンテンツにおける一つのコンテンツブロックBx(x=1、2、3、4、…)のデータ量とし(ステップS52)、そのデータ量のコンテンツブロックBxに分割してコンテンツのダウンロードを継続すべく図3に示すステップS6の処理に移行する。
(f)第六の例
最後に、更に他の例を図8(b)を用いて説明する。なお、図8(b)において、図7(a)を用いて説明した処理と同様の処理については同様のステップ番号を付して細部の説明は省略する。
また、図8(b)に示す例は、図1(b)を用いて説明した原理に相当するダウンロード速度決定処理の例である。
当該他の例としては、図8(b)に示すように、制御部11は、上述したステップS14の処理に係る状況判定処理を実行した後(ステップS14)、更に図7(a)を用いて説明したステップS40乃至S42の処理を実行する。
次に、制御部11は、リクエストノードとして取得すべき全てのコンテンツ(当該全てのコンテンツの配信完了期限が同一であるとする)のうちその時点で未取得であるコンテンツのデータ量Dを算出する(ステップS50)。
そして、制御部11は、以降配信完了期限まで間における上記コンテンツデータの取得要求(上記「第五の例」参照)におけるコンテンツブロックBのデータ量Sを、例えば512キロバイト程度として算出する(ステップS55)。これにより、制御部11は、当該算出された残りのデータ量DをコンテンツブロックBのデータ量Sで除した値の逆数(次元は「時間」)を、その時点におけるクエリの送出間隔(図1(c)における一定要求間隔Tiに相当)とし(ステップS56)、その間隔でクエリを送出すべく図3に示すステップS6の処理に移行する。
以上夫々説明したように、実施形態に係るリクエストノードとしての動作によれば、配信完了期限までの残り時間全体に渡ってコンテンツが配信され且つ当該残り時間内に配信完了するために必要な配信態様を決定し、その決定した配信態様示すクエリを送出するので、残り時間全体を有効に使用することにより配信に係るネットワークの負荷を軽減しつつ、配信完了期限が徒過されること防止して必要なコンテンツの配信を当該配信完了期限までに確実に完了させることができる。
従って、配信完了期限が予め設定されているコンテンツであっても、配信に係るネットワークの負荷を軽減しつつ、これを当該配信完了期限までに確実に配信先たるノード1(リクエストノード)に配信することができる。
また、所定の条件下で新たなダウンロード速度を再決定し、それを示すクエリを再度送出するので、ネットワーク等の状況の変化により配信完了期限までに配信完了させるための配信態様が変化しても、それに追随して確実に配信を配信完了期限までに完了させることができる。
更に、コンテンツの配信以外に他のメッセージの転送処理を実行しているとき、当該他のメッセージの転送処理を中断すべきか否かを判定し、当該中断すべき時は当該他のメッセージの転送処理を中断してコンテンツの配信を優先させて行うので、必要に応じてコンテンツの配信を優先化して配信完了期限までにその配信を完了させることができる。
更にまた、上記ステップS9としての第一の例(図4(a)参照)によれば、予め設定された所定期間毎に新たなダウンロード速度を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
また、上記ステップS9としての第二の例(図4(b)参照)によれば、予め設定されたデータ量の配信が完了する度に新たなダウンロード速度を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
更に、上記ステップS9としての第三の例(図4(c)参照)によれば、配信経路となっているネットワーク上に障害が発生したとき新たなダウンロード速度を再決定するので、ネットワーク等の状況の変化に追随して確実に配信を配信完了期限までに完了させることができる。
更にまた、上記ステップS14としての第一の例(図5(a)参照)によれば、検出された配信完了期限までの残り時間が、配信可能となってから配信完了期限までの期間に対して予め設定された割合(例えば二割)以下となったとき、他のメッセージの転送処理を中断すると判定するので、実際に残り時間が短くなったときに他のメッセージの転送処理を中断することで、効率的に当該他のメッセージの転送処理を中断してコンテンツの配信を優先させることができる。
また、上記ステップS14としての第二の例(図5(b)参照)によれば、コンテンツの実際のダウンロード速度が予め設定されている閾値速度以下となったときに、可及的速やかにコンテンツの配信を実行すべき状態であるとして他のメッセージの転送処理を中断すると判定するので、効率的に他のメッセージの転送処理を中断してコンテンツの配信を優先させることができる。
更に、上記ステップS14としての第三の例(図5(c)参照)によれば、いずれかのコンテンツに対応する配信時間が閾値時間以下となったときに、可及的速やかにコンテンツの配信を実行すべき状態であるとして他のメッセージの転送処理を中断すると判定するので、効率的に他のメッセージの転送処理を中断してコンテンツの配信を優先させることができる。
更にまた、上記ステップS5としての第一の例(図6(a)参照)によれば、未取得のコンテンツのデータ量Dを残り時間Tで除することによりその後のダウンロード速度を決定してクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
また、上記ステップS5としての第二の例(図6(b)参照)によれば、未取得のコンテンツ数Nで残り時間Tを除することによりその後のコンテンツ毎の所要時間を決定し、当該所要時間内に対応するコンテンツの配信が完了するようにクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
更に、上記ステップS5としての第三の例(図7(a)参照)によれば、未使用のコンテンツノードがあるとき、それを加えた複数のコンテンツノードからコンテンツが配信されるようにクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
更にまた、上記ステップS5としての第五の例(図8(a)参照)によれば、未取得のコンテンツのデータ量DをコンテンツブロックBxの配信要求可能回数Cで除して得られるデータ量を、その後のコンテンツブロックBx一つ分のデータ量と決定してクエリを送出するので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
また、上記ステップS5としての第六の例(図8(b)参照)によれば、未取得のコンテンツのデータ量DをコンテンツブロックB一つ分の情報量で除した後に逆数化して得られる送信間隔をその後のコンテンツブロックBの要求間隔Tiと決定し、当該決定された要求間隔TiをもってコンテンツブロックBの配信をクエリを送出することを繰り返すので、ネットワーク上の負荷を最小限にしつつ且つ必要なコンテンツを配信完了期限までに配信完了させることができる。
また、図3乃至図8に夫々示すフローチャートに対応するプログラムを、フレキシブルディスク又はハードディスク等の情報記録媒体に記録しておき、又はインターネット等を介して取得して記録しておき、これらを汎用のコンピュータで読み出して実行することにより、当該コンピュータを実施形態に係る制御部11として活用することも可能である。
以上夫々説明したように、本願はいわゆるP2P型のコンテンツ配信システムの分野に利用することが可能であり、特に配信完了期限が定められているコンテンツを配信することがあるコンテンツ配信システムの分野に適用すれば特に顕著な効果が得られる。
本発明の原理を説明する図であり、(a)は当該原理を説明するタイミングチャートであり、(b)は当該原理の具体例を説明するタイミングチャート(I)であり、(c)は当該原理の具体例を説明するタイミングチャート(II)である。 実施形態に係るノードの概要構成を示すブロック図である。 実施形態に係るメッセージ処理の全体を示すフローチャートである。 実施形態に係るダウンロード速度の見直しタイミングの設定処理を示すフローチャートであり、(a)は当該見直しタイミングの設定処理の第一例を示すフローチャートであり、(b)は当該見直しタイミングの設定処理の第二例を示すフローチャートであり、(c)は当該見直しタイミングの設定処理の第三例を示すフローチャートである。 実施形態に係る状況判定処理を示すフローチャートであり、(a)は当該状況判定処理の第一例を示すフローチャートであり、(b)は当該状況判定処理の第二例を示すフローチャートであり、(c)は当該状況判定処理の第三例を示すフローチャートである。 実施形態に係るダウンロード速度決定処理を示すフローチャート(I)であり、(a)は当該ダウンロード速度決定処理の第一例を示すフローチャートであり、(b)は当該ダウンロード速度決定の第二例を示すフローチャートである。 実施形態に係るダウンロード速度決定処理を示すフローチャート(II)であり、(a)は当該ダウンロード速度決定処理の第三例を示すフローチャートであり、(b)は当該ダウンロード速度決定の第四例を示すフローチャートである。 実施形態に係るダウンロード速度決定処理を示すフローチャート(III)であり、(a)は当該ダウンロード速度決定処理の第五例を示すフローチャートであり、(b)は当該ダウンロード速度決定の第六例を示すフローチャートである。
符号の説明
1 ノード
11 制御部
12 記憶部
13 バッファメモリ
14 デコーダ部
15 映像処理部
16 表示部
17 音声処理部
18 スピーカ
20 通信部
21 入力部
22 バス
Ti 要求間隔
B、B1、B2、B3、B4、B5、B6 コンテンツブロック

Claims (15)

  1. ネットワークを介して接続された配信元情報処理装置から、配信完了期限が予め設定されている配信情報の配信を受ける情報処理装置において、
    前記配信完了期限までの残り時間を検出する検出手段と、
    配信対象となっている前記配信情報が、前記検出された残り時間全体に渡って当該情報処理装置に対して配信され且つ当該残り時間内に配信完了するために必要な当該配信情報の配信態様を、前記検出された残り時間に基づいて決定する決定手段と、
    前記決定された配信態様を示す態様情報を含み且つ前記配信を要求する要求情報を、前記配信元情報処理装置に送信する要求手段と、
    を備えることを特徴とする情報処理装置。
  2. 請求項1に記載の情報処理装置において、
    前記配信態様は前記ネットワーク内における前記配信情報の配信速度であり、
    配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する未配信情報量検出手段を備え、
    前記決定手段は、前記検出された未配信情報量を前記残り時間で除した速度を前記配信速度として決定し、
    更に前記要求手段は、前記決定された配信速度を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に送信することを特徴とする情報処理装置。
  3. 請求項1に記載の情報処理装置において、
    前記配信情報は、複数の部分配信情報により構成され、
    前記配信態様は、前記ネットワーク内における前記配信情報の配信所要時間であり、
    配信されるべき前記配信情報のうち未配信の前記部分配信情報の数を未配信数として検出する未配信数検出手段を備え、
    前記決定手段は、前記検出された未配信数を前記残り時間で除した時間を未配信の前記部分配信情報毎の前記配信所要時間として決定し、
    前記要求手段は、前記決定された配信所要時間内に未配信の前記部分配信情報の配信が完了するための前記要求情報を、前記配信元情報処理装置に送信することを特徴とする情報処理装置。
  4. 請求項1に記載の情報処理装置において、
    前記配信情報は複数の前記配信元情報処理装置から配信され、
    前記配信態様は実際に前記配信情報の配信元となる前記配信元情報処理装置を示すものであり、
    実際に前記配信情報の配信に供されていない前記配信元情報処理装置を検出する情報処理装置検出手段を備え、
    前記決定手段は、前記検出された情報処理装置を新たな配信元として決定し、
    前記要求手段は、前記決定された新たな配信元情報処理装置を加えた複数の前記配信元情報処理装置から前記配信情報が夫々配信されるように、前記要求情報を実際に配信元となる各前記配信元情報処理装置に送信することを特徴とする情報処理装置。
  5. 請求項1に記載の情報処理装置において、
    前記配信態様は、前記配信情報を分割して得られる配信情報ブロック一つ分の情報量であり、
    配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する未配信情報量検出手段と、
    前記配信完了期限までに前記配信情報ブロックの配信を要求することが可能な回数である要求可能回数を検出する回数検出手段と、
    を備え、
    前記決定手段は、前記検出された未配信情報量を前記検出された要求可能回数で除した値を前記一つ分の情報量として決定し、
    前記要求手段は、前記決定された一つ分の情報量を前記態様情報として含み且つ当該一つ分の情報量を有する前記配信情報ブロックの配信を要求する旨の前記要求情報を、前記配信元情報処理装置に送信することを特徴とする情報処理装置。
  6. 請求項1に記載の情報処理装置において、
    前記配信態様は、前記配信情報を分割して得られる配信情報ブロックの配信を要求する旨の前記要求情報を複数回前記配信元情報処理装置に対して送信する際の送信間隔であり、
    配信されるべき前記配信情報のうち未配信の部分の情報量を未配信情報量として検出する未配信情報量検出手段を備え、
    前記決定手段は、前記検出された未配信情報量を前記配信情報ブロック一つ分として予め設定されている情報量で除した値の逆数を前記送信間隔として決定し、
    前記要求手段は、前記配信情報ブロック一つ分の前記配信情報の配信を要求する旨の前記要求情報を、前記決定された送信間隔で前記配信元情報処理装置に送信することを繰り返すことを特徴とする情報処理装置。
  7. 請求項1から6のいずれか一項に記載の情報処理装置において、
    前記決定手段は、前記配信完了期限までに前記配信が完了するように、現在の前記検出された残り時間に基づいて新たな前記配信態様を再決定し、
    前記要求手段は、前記再決定された新たな配信態様を示す前記態様情報を含む前記要求情報を、前記配信元情報処理装置に再度送信することを特徴とする情報処理装置。
  8. 請求項7に記載の情報処理装置において、
    前記決定手段は、予め設定された期間毎に前記配信態様の再決定を行うことを繰り返すことを特徴とする情報処理装置。
  9. 請求項7に記載の情報処理装置において、
    前記決定手段は、予め設定された量の前記配信情報の配信が完了する度に前記配信態様の再決定を行うことを繰り返すことを特徴とする情報処理装置。
  10. 請求項7に記載の情報処理装置において、
    前記決定手段は、前記配信情報の配信経路となっている前記ネットワークにおいて前記配信に対する障害が発生したとき、前記配信態様の再決定を行うことを繰り返すことを特徴とする情報処理装置。
  11. 請求項1から10のいずれか一項に記載の情報処理装置において、
    当該情報処理装置において、前記配信情報以外の他の情報の授受を前記ネットワーク内において実行している場合に、当該授受を中断するか否かを判定する中断判定手段と、
    前記中断判定手段により前記授受を中断すべきと判定されたとき、当該授受を中断する中断手段と、
    を備えることを特徴とする情報処理装置。
  12. 請求項11に記載の情報処理装置において、
    前記中断判定手段は、前記検出された残り時間が、前記配信情報の配信が可能となってから前記配信完了期限までの期間に対して予め設定された割合以下の時間となったとき、前記授受を中断すると判定することを特徴とする情報処理装置。
  13. 請求項11に記載の情報処理装置において、
    前記中断判定手段は、前記配信情報の実際の配信速度が予め設定されている閾値配信速度以下となったとき、前記授受を中断すると判定することを特徴とする情報処理装置。
  14. 請求項11に記載の情報処理装置において、
    前記配信情報は、複数の部分配信情報により構成され、
    未配信の前記部分配信情報の配信に充てることが可能な時間である充当可能時間を検出する充当可能時間検出手段を備え、
    前記中断判定手段は、いずれかの前記部分配信情報に対応する前記充当可能時間が予め設定されている閾値時間以下となったとき、前記授受を中断すると判定することを特徴とする情報処理装置。
  15. コンピュータを、請求項1から14のいずれか一項に記載の情報処理装置として機能させることを特徴とする情報処理用プログラム。
JP2007087151A 2007-03-29 2007-03-29 情報処理装置、情報処理方法及び情報処理用プログラム Expired - Fee Related JP4930148B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007087151A JP4930148B2 (ja) 2007-03-29 2007-03-29 情報処理装置、情報処理方法及び情報処理用プログラム
US12/007,020 US20080244673A1 (en) 2007-03-29 2008-01-04 Information processor and recording medium in which information processing program is recorded

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007087151A JP4930148B2 (ja) 2007-03-29 2007-03-29 情報処理装置、情報処理方法及び情報処理用プログラム

Publications (2)

Publication Number Publication Date
JP2008250370A true JP2008250370A (ja) 2008-10-16
JP4930148B2 JP4930148B2 (ja) 2012-05-16

Family

ID=39796633

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007087151A Expired - Fee Related JP4930148B2 (ja) 2007-03-29 2007-03-29 情報処理装置、情報処理方法及び情報処理用プログラム

Country Status (2)

Country Link
US (1) US20080244673A1 (ja)
JP (1) JP4930148B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011034187A (ja) * 2009-07-30 2011-02-17 Kddi Corp コンテンツ配信制御方式
JP2011233021A (ja) * 2010-04-28 2011-11-17 Brother Ind Ltd 情報通信システム、ノード装置、情報処理方法、及び情報処理プログラム
JP2012063904A (ja) * 2010-09-15 2012-03-29 Toshiba Corp ファイル通信装置およびファイル通信方法
US9521354B2 (en) 2009-07-24 2016-12-13 Netflix, Inc. Adaptive streaming for digital content distribution
US9648385B2 (en) 2009-07-24 2017-05-09 Netflix, Inc. Adaptive streaming for digital content distribution
JP7389949B2 (ja) 2019-09-20 2023-12-01 章弘 長谷川 ファイル配布システム、及びファイル配布プログラム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4655986B2 (ja) * 2006-04-12 2011-03-23 ブラザー工業株式会社 ノード装置、記憶制御プログラム及び情報記憶方法
US20090178091A1 (en) * 2008-01-08 2009-07-09 Hiroki Miyamoto Contents distribution method and receiving device
US9813299B2 (en) * 2016-02-24 2017-11-07 Ciena Corporation Systems and methods for bandwidth management in software defined networking controlled multi-layer networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004153777A (ja) * 2002-09-03 2004-05-27 Ntt Docomo Inc 送受信制御装置、送受信制御方法および送受信制御プログラム
WO2006110524A2 (en) * 2005-04-07 2006-10-19 Mediacast, Inc. Adaptive file delivery system and method
JP2008160557A (ja) * 2006-12-25 2008-07-10 Nippon Hoso Kyokai <Nhk> 受信装置、送信装置及び中継装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4736366A (en) * 1986-02-13 1988-04-05 International Business Machines Corporation Bus acquisition system
JP3005501B2 (ja) * 1997-07-02 2000-01-31 日本電気株式会社 レート制御方式
US20020152307A1 (en) * 2001-04-12 2002-10-17 Doyle Ronald Patrick Methods, systems and computer program products for distribution of requests based on application layer information
US7392321B1 (en) * 2001-05-30 2008-06-24 Keynote Systems, Inc. Method and system for evaluating quality of service for transactions over a network
US7559077B1 (en) * 2001-11-16 2009-07-07 Sprint Communications Company L.P. Video system for use where the network transfer rate is slower than the video display rate
KR100978172B1 (ko) * 2002-06-21 2010-08-25 톰슨 라이센싱 이동 무선 상호연동 환경에서의 저장된 비디오 스트리밍을위한 지속 감소 네트워크 qos 요구 조건
US7461319B2 (en) * 2003-04-04 2008-12-02 Sun Microsystems, Inc. System and method for downloading files over a network with real time verification
US20070174471A1 (en) * 2003-04-30 2007-07-26 Cedric Van Rossum Secure, continous, proxy-optimized, device-to-device data download reception system and method of use
US20050034153A1 (en) * 2003-08-08 2005-02-10 Maven Networks, Inc. System and method for delivery of broadband content with integrated interactive elements
US7443818B2 (en) * 2003-12-15 2008-10-28 Intel Corporation Method, apparatus and system of multiple-input-multiple-output wireless communication
JP3958326B2 (ja) * 2005-03-17 2007-08-15 株式会社東芝 通信システム及び移動通信端末装置
US7809399B2 (en) * 2006-02-10 2010-10-05 Syntek International Holding Ltd. Method and device for providing multiple communication protocols with a single transceiver

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004153777A (ja) * 2002-09-03 2004-05-27 Ntt Docomo Inc 送受信制御装置、送受信制御方法および送受信制御プログラム
WO2006110524A2 (en) * 2005-04-07 2006-10-19 Mediacast, Inc. Adaptive file delivery system and method
JP2008160557A (ja) * 2006-12-25 2008-07-10 Nippon Hoso Kyokai <Nhk> 受信装置、送信装置及び中継装置

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9521354B2 (en) 2009-07-24 2016-12-13 Netflix, Inc. Adaptive streaming for digital content distribution
US9648385B2 (en) 2009-07-24 2017-05-09 Netflix, Inc. Adaptive streaming for digital content distribution
US9769505B2 (en) 2009-07-24 2017-09-19 Netflix, Inc. Adaptive streaming for digital content distribution
JP2011034187A (ja) * 2009-07-30 2011-02-17 Kddi Corp コンテンツ配信制御方式
JP2011233021A (ja) * 2010-04-28 2011-11-17 Brother Ind Ltd 情報通信システム、ノード装置、情報処理方法、及び情報処理プログラム
US8903885B2 (en) 2010-04-28 2014-12-02 Brother Kogyo Kabushiki Kaisha Information communication system, node device, information processing method and computer-readable storage medium
JP2012063904A (ja) * 2010-09-15 2012-03-29 Toshiba Corp ファイル通信装置およびファイル通信方法
JP7389949B2 (ja) 2019-09-20 2023-12-01 章弘 長谷川 ファイル配布システム、及びファイル配布プログラム

Also Published As

Publication number Publication date
US20080244673A1 (en) 2008-10-02
JP4930148B2 (ja) 2012-05-16

Similar Documents

Publication Publication Date Title
JP4930148B2 (ja) 情報処理装置、情報処理方法及び情報処理用プログラム
JP6915027B2 (ja) ライブストリーミングセグメント化方法、装置及びシステム
US7720985B2 (en) Content receiving apparatus and content receiving method
JP5947345B2 (ja) ストリーミングデータダウンロード方法及びコンピューター読み取り可能な記録媒体
US20140237085A1 (en) Communication method of content requester and content provider to provide content and real-time streaming content in content-centric network (ccn) based on content name
CN105657520A (zh) 一种视频清晰度切换方法和视频播放器
US20110307933A1 (en) Systems and methods for implementing server side push mechanisms for internet protocol television (iptv) updates
CN1980377A (zh) 一种智能插播素材的方法
US20160029050A1 (en) Hybrid Stream Delivery
JP5335354B2 (ja) 情報送信装置、情報送信装置の制御方法及びコンピュータプログラム
JP2008011177A (ja) ストリーミング配信における動的品質制御方法およびネットワーク・システム
JP5614530B2 (ja) 情報通信システム、ノード装置、情報処理方法、及び情報処理プログラム
KR101454809B1 (ko) 트랜스코딩 작업 스케줄링 방법 및 이를 이용한 트랜스코딩 시스템
JP2009237918A (ja) 分散型コンテンツ配信システム、センタサーバ、分散型コンテンツ配信方法及び分散型コンテンツ配信プログラム
JP2023515003A (ja) ネットワークでストリーミングされたコンテンツをクライアントデバイスのプレーヤで再生する方法
JP2016015566A (ja) 端末装置及びデータ配信方法
JP2010213338A (ja) 受信装置
JP2010171557A (ja) 同報送信装置及び受信ノード及び同報送信プログラム及び記録媒体
JP5982436B2 (ja) 画面転送サーバ装置、および画面転送方法
JP2009260569A (ja) データ配信システム及びデータ配信方法
JP5293038B2 (ja) 情報処理装置、情報処理方法、通信装置、通信方法、情報処理システムおよび情報処理システムによる情報処理方法
JP6163094B2 (ja) メッセージ配信システム、メッセージ配信方法およびメッセージ配信プログラム
US20120002565A1 (en) Communication apparatus, communication system, communication method, and a computer-readable medium
JP2016036103A (ja) 映像配信サーバ及び映像配信方法
JP2006018643A (ja) 映像配信システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090402

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110516

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110524

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110721

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120117

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120130

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150224

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees