JP2010525420A - エッジネットワークにおけるデータ配信方法、データ配信システム、および関連装置 - Google Patents

エッジネットワークにおけるデータ配信方法、データ配信システム、および関連装置 Download PDF

Info

Publication number
JP2010525420A
JP2010525420A JP2009545809A JP2009545809A JP2010525420A JP 2010525420 A JP2010525420 A JP 2010525420A JP 2009545809 A JP2009545809 A JP 2009545809A JP 2009545809 A JP2009545809 A JP 2009545809A JP 2010525420 A JP2010525420 A JP 2010525420A
Authority
JP
Japan
Prior art keywords
data
content
download
edge network
client
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
JP2009545809A
Other languages
English (en)
Other versions
JP4938092B2 (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2010525420A publication Critical patent/JP2010525420A/ja
Application granted granted Critical
Publication of JP4938092B2 publication Critical patent/JP4938092B2/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/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/1063Discovery through centralising entities
    • 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/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • H04L67/1078Resource delivery mechanisms
    • H04L67/108Resource delivery mechanisms characterised by resources being split in blocks or fragments

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Abstract

エッジネットワークにおけるデータ配信方法、データ配信システム、および関連装置が提供される。本方法は、クライアントからデータダウンロードリクエストを取得し、或るプロトコルに基づくデータのコンテンツIDであってダウンロードリクエストで搬送されるコンテンツIDを取得し;前記コンテンツIDに対応するエッジネットワークコンテンツIDを検索してエッジネットワークにおけるデータコンテンツを一意的に識別し、前記エッジネットワークコンテンツIDをインデックスとして使用することにより対応クライアント情報を取得し、前記クライアント情報を搬送するデータソース情報を前記クライアントに戻すステップを含む。従って、前記データは、エッジネットワーク全体を通じて共有可能であり、バックボーンネットワークに与える影響は有効に軽減される。

Description

本発明は、データ配信技術(a data distribution technology)に関し、詳しくは、エッジネットワーク(edge network)におけるデータ配信方法及び関連装置及びシステムに関する。
インターネット技術の普及に伴い、ピア・ツー・ピア(Peer-to-Peer; P2P)アプリケーションがインターネット上で普及している。P2Pシステムでは、P2Pプログラムの端末はクライアントとサーバーの両方である。
多くのインターネットユーザーは、P2Pソフトウェアを使用してファイルをダウンロードしたり共有しており、このようなファイルの多くは、大きなファイル長を特徴とするソフトウェア及びビデオファイルである。従って、P2Pファイルのダウンロードは、多くのネットワーク帯域を占有する。その上、P2Pソフトウェアは、ある程度、パートナー・ピア(partner peers)を盲目的に選択し、従って多大な無秩序のトラヒックを発生させると共にバックボーンネットワークに大きな影響を与える。
加えて、異なるダウンロードプロトコルの多くのコンテンツは反復的(repetitive)であり、従って一層多くの反復的なトラヒックを発生させる。大量の反復的なトラヒックは、ネットワーク輻輳をもたらし、ウェブブラウズや電子メールのような他のネットワークアプリケーションのQoS(Quality of Service)を劣化させる。
バックボーンネットワークへのP2Pダウンロードによって引き起こされる影響を低減させるために、従来技術においてP2Pトラヒックを制御するためのP2Pキャッシュ技術が適用されている。P2Pキャッシュは、各パケットについて深いパケット検査(deep packet inspection)を実施する必要があり、具体的には、各パケットのモードをマッチングし、そのパケットがP2P特性(P2P features)を有しているかどうかを判定し、最後に、そのパケットがP2Pパケットであるかどうかについての結論を出す。例えば、通常、ビット・トレント(Bit-Torrent; BT)プロトコルのパケットは、ビット・トレント識別子(BitTorrent identifier)を搬送する。従って、ビット・トレント識別子を有するパケットは、BTプロトコルパケットとして判定される。P2Pキャッシュは、特定のP2Pプロトコル(例えば、eMule, BT, FastTrack, Gnutella)を支援し、転送されたP2Pパケットをローカル的にバッファリングする。もし、他のユーザーが同一のパケットをリクエストしていることをパケット分析が示せば、そのパケットは、そのようなユーザーに直接的に送信され、従ってエッジネットワークを通るトラヒックが低減される。
従来技術の欠点は、P2Pキャッシュが全てのルーティングされたパケットについて深いパケット検査の実施を必要とし、従って、ある程度、ネットワーク全体の応答速度に影響を及ぼすことである。また、現在では、通常、いくつかの暗号化(encryption)及びなりすまし(spoofing)技術がP2Pクライアントに適用され、従ってP2Pパケットをフィルタリングすることは困難である。よって、従来技術は、P2Pパケットによって引き起こされるバックボーンネットワークへの影響を取り除くには不十分である。
本発明の実施形態は、バックボーンネットワークにおけるP2Pパケットトラヒックを低減させるデータ配信方法を提供する。
本発明の実施形態によるファイルデータ配信方法は、次の技術的ソリューションを通じて実施される。即ち、クライアントからデータダウンロードリクエストを取得し、上記ダウンロードリクエストで搬送されるコンテンツIDであって特定プロトコルに基づくデータのコンテンツIDを取得し、前記コンテンツIDに対応するエッジネットワークコンテンツIDを検索すると共に前記エッジネットワークにおけるデータコンテンツを一意的に識別し、前記エッジネットワークコンテンツIDをインデックスとして使用することにより対応クライアント情報を取得し、前記クライアント情報を搬送するデータソース情報を前記クライアントに戻すことを通じて実施される。
また、上記技術的ソリューションは、前記エッジネットワークコンテンツIDが見つからなければ、前記クライアントによってリクエストされた前記データをローカル記憶装置にダウンロードし、前記データのエッジネットワークコンテンツIDを計算して格納し、前記ローカル記憶装置情報を搬送するデータソース情報と前記エッジネットワークコンテンツIDを前記クライアントに送信する。
本発明の実施形態によるデータ配信システムが提供される。
本データ配信システムは、リクエストルートサーバーを備え、該リクエストルートサーバーは、プロトコルに基づくクライアントによってダウンロードされるべきデータのコンテンツIDを搬送するデータダウンロードリクエストを前記クライアントから取得し、前記プロトコルに基づく前記コンテンツIDに対応するエッジネットワークコンテンツIDを検索し、前記エッジネットワークコンテンツIDをインデックスとして使用することにより対応クライアント情報を取得し、前記クライアント情報を搬送するデータソース情報を前記クライアントに戻し、ダウンロードプロキシサーバーによって戻された前記エッジネットワークコンテンツIDと前記プロキシサーバー情報を運ぶデータソース情報とを前記クライアントに送信し、前記エッジネットワークコンテンツIDと前記コンテンツIDとの間のマッピングを保存するように構成される。
また、前記ダウンロードプロキシサーバーは、前記リクエストルートサーバーからの通知に従ってデータをダウンロードし、前記エッジネットワークIDを戻すように構成される。
クライアントは、本発明の実施形態に従って提供される。本クライアントは次のものを備える。
本クライアントは、ユーザーダウンロードインターフェイスを備え、このユーザーダウンロードインターフェイスは、ユーザーのダウンロードプロトコル命令を解読し、そしてユーザーが前記プロトコルに基づくダウンロードを要求するデータのコンテンツIDを取得するように構成される。
また、本クライアントは、第1のリクエストルートサーバー通信管理ユニットを備え、この第1のリクエストルートサーバー通信管理ユニットは、コンテンツIDを搬送するデータダウンロードリクエストをリクエストルートサーバーに送信し、ダウンロードされるべきデータのエッジネットワークコンテンツIDと前記リクエストルートサーバーによって送信されるデータソース情報を取得することを含み、第1の接続管理ユニットを通じて前記リクエストルートサーバーとデータ通信するように構成される。
また、本クライアントは、ダウンロード管理ユニットを備え、このダウンロード管理ユニットは、前記エッジネットワークコンテンツIDに従って前記データソースからデータをダウンロードするように構成される。
更に、前記第1の接続管理ユニットは、外部装置とのデータ通信を実施するように構成される。
リクエストルートサーバーは、本発明の実施形態において提供される。
本リクエストルートサーバーは、プロトコルマッピングユニットを備える。このプロトコルマッピングユニットは、プロトコルに基づくデータのコンテンツIDとエッジネットワークコンテンツIDとの間のマッピングを保持し、第1のクライアントによって送信された上記取得されたコンテンツIDに従って上記エッジネットワークコンテンツIDを検索し、そして、前記エッジネットワークコンテンツIDが見つかれば、クライアント管理ユニットに通知するように構成される。
また、上記クライアント管理ユニットは、上記エッジネットワークコンテンツIDをインデックスとして使用することにより同一のデータをダウンロードするクライアントに関する情報を保持し、前記プロトコルマッピングユニットによって見つけられた上記エッジネットワークコンテンツIDに従って対応クライアント情報を取得し、上記クライアント情報を第1のクライアント通信管理ユニットに送信し、そして前記エッジネットワークコンテンツIDと前記第1のクライアントとの間のマッピングを付加するように構成される。
また、前記第1のクライアント通信管理ユニットは、前記クライアント情報と前記エッジネットワークコンテンツIDを搬送する前記データソース情報を前記第1のクライアントに送信することを含み、第2の接続管理ユニットを通じてダウンロードクライアントとメッセージ通信を実施するように構成される。
また、前記第2接続管理ユニットは、外部装置とメッセージ通信を実施するように構成される。
ダウンロードプロキシサーバーは、本発明の実施形態に従って提供される。
本ダウンロードプロキシサーバーは、第3の接続管理ユニットを備え、この第3の接続管理ユニットは、外部装置とのデータ通信を実施するように構成される。
また、本ダウンロードプロキシサーバーは、第2のクライアント通信管理ユニットを備え、この第2のクライアント通信管理ユニットは、前記第3の接続管理ユニットを通じてクライアントとデータ通信を実施するように構成される。
また、本ダウンロードプロキシサーバーは、第2のリクエストルートサーバー通信管理ユニットを備え、この第2のリクエストルートサーバー通信管理ユニットは、前記リクエストルートサーバーからデータダウンロード通知を取得し、前記データダウンロード通知をダウンロードプロキシユニットに送信し、前記ダウンロードプロキシユニットによって戻されたエッジネットワークコンテンツIDを受信し、そして前記エッジネットワークコンテンツIDを前記リクエストルートサーバーに送信することを含み、前記第3の接続管理ユニットを通じてリクエストルートサーバーとデータ通信を実施するように構成される。
また、前記ダウンロードプロキシユニットは、前記ダウンロード通知に従ってデータをダウンロードし、そして前記エッジネットワークコンテンツIDを計算するように構成される。
また、本ダウンロードプロキシサーバーは、記憶ユニットを備え、この記憶ユニットは、前記エッジネットワークコンテンツIDと、このエッジネットワークコンテンツIDに対応するデータとを格納して管理するように構成される。
従来技術に関する研究中に、本発明者は、異なるダウンロードプロトコルに基づいてユーザーがダウンロードを要求するコンテンツは、通常、コンテンツIDとチェックモードを除いて同一であることを発見した。従って、この特性に基づいて、本発明者は、上記特性をエッジネットワークと統合することにより本発明の技術的解法を案出した。この技術的解法は、前記エッジネットワークコンテンツIDと前記格納されたデータのコンテンツIDとの間のマッピングに従って統一規格に基づいて前記エッジネットワークコンテンツIDに異なるプロトコルに基づく前記格納されたデータのコンテンツIDをマッピングし、同一のエッジネットワークに同一データを既に格納している装置を検索し、そしてこのような装置に関する情報と前記データのエッジネットワークコンテンツIDを、前記データをダウンロードすることを要求するクライアントに送信することである。従って同一のデータを既に格納する前記装置はデータソースとして機能してもよく、前記データをダウンロードすることを要求するクライアントにダウンロードされるべきデータを提供する。
従来技術においては、プロトコルに基づくデータのコンテンツIDは、他のダウンロードプロトコルには識別不能である。従って、前記エッジネットワークにおける装置は、バックボーンネットワークを通じて繰り返し同一のデータコンテンツをダウンロードする。従来技術とは対照的に、本発明の実施形態は、エッジネットワークの全体にわたってデータコンテンツを識別するための統一IDを使用し、従って、従来技術において同一のデータコンテンツが異なるプロトコルに基づく異なるIDを有するという欠点を回避する。従って、エッジネットワークにおけるデータは最大限に共有可能であり、バックボーンネットワークにおける同一データコンテンツの繰り返しダウンロードが回避される。従って、バックボーンネットワークに対する影響が軽減される。その上、ネットワーク全体の速度は、従来技術のP2Pキャッシュ技術に比べても低下しない。
本発明の実施形態によるデータ配信システムの構成図である。 本発明の実施形態によるシステムの第1のフローチャートである。 本発明の実施形態によるシステムの第2のフローチャートである。 本発明の実施形態によるシステムの第3のフローチャートである。 本発明の実施形態によるクライアントの構成図である。 本発明の実施形態におけるリクエストルートサーバーの構成図である。 本発明の実施形態によるダウンロードプロキシサーバーの構成図である。 本発明の実施形態による現在ダウンロードされるべきデータがローカル的に格納されているかどうかを判定するダウンロードプロキシサーバーのフローチャートである。
本発明は、従来技術におけるバックボーンネットワーク上のデータのダウンロードによって生じる影響を軽減することを目的とする。従って、データ配信方法、データ配信システム、および関連装置が、本発明の実施形態において提供される。本発明の実施形態は以下に詳細に述べられる。
上述の目的を達成するために、図1に示されるように、リクエストルートサーバー(request route server)12およびダウンロードプロキシサーバー(download proxy server)13がエッジネットワークに配置され、クライアント(client)11へのデータのダウンロードを実施するために、本発明の実施形態で提供されるクライアントと接続される。クライアント11は、特定支援のプロトコル(例えば、BTプロトコル、eMuleプロトコル、FTP/HTTP)のIDおよびネームを格納する。プロトコルに基づくデータをダウンロードするために、クライアント11は、ダウンロードリクエストをリクエストルートサーバー12に送信し、ここで、上記リクエストは、特定プロトコルのIDと、上記特定プロトコルにおけるデータのコンテンツIDを搬送する。上記ダウンロードリクエストを受信した後、リクエストルートサーバー12は、上記プロトコルに対応するマッピングテーブルを検索(search)し、そして上記データのコンテンツIDを統一規格に基づくエッジネットワークコンテンツIDにマッピングする。上記エッジネットワークコンテンツIDに従って、リクエストルートサーバー12は、同一ファイルを格納またはダウンロードする他のクライアントに関する情報を探し出し(search out)、そして、その情報を、上記ダウンロードリクエストを送信したクライアントに戻す。
本発明の実施形態の処理は、添付の図面を参照して以下に詳細に述べられる。
図2は、クライアントにデータをダウンロードする通常処理を示す。図2に示されるように、本処理は、次のステップを含む。
ステップ21.ユーザーがデータをダウンロードすることを選択する。
ステップ22.クライアントがトリガーされる。
ステップ23.クライアントが、リクエストルートサーバーにダウンロードリクエストを送信する。このリクエストのフォーマットは、クライアントの実施形態で説明される。
ステップ24.リクエストルートサーバーは、ダウンロードされるべきコンテンツが存在するかどうかをチェックするためにプロトコルマッピングユニットを検索する(この実施形態では、コンテンツが存在するものと仮定する)。
ステップ25.リクエストルートサーバーは、クライアント情報を、ファイルをダウンロードするクライアントのリストに記録する。
ステップ26.リクエストルートサーバーは、ダウンロードクライアントにダウンロード応答メッセージを送信し、ここで、上記応答メッセージは、エッジネットワークコンテンツID、ダウンロードプロキシサーバー情報、および同一ファイルをダウンロードしている他のクライアントに関する情報を搬送する。上記応答メッセージのフォーマットは、クライアントの実施形態において説明される。
ステップ27.クライアントは、ダウンロードプロキシサーバーにダウンロードリクエストを送信する。
ステップ28.クライアントは、同一ファイルをダウンロードしている他のクライアントに上記ダウンロードリクエストを送信する。
ステップ29.クライアントは、ダウンロードプロキシサーバーからファイルデータをダウンロードする。
ステップ210.ダウンロードするクライアントは、他のクライアントからデータをダウンロードする。
上述の処理のステップ24において、リクエストルートサーバーは、プロトコルマッピングユニットを検索して、ダウンロードされるべきコンテンツを首尾よく取得するものと考えられる。もし、このようなコンテンツがプロトコルマッピングユニットに存在しなければ、図3に示された処理は次のステップを適用する。
ステップ31.ユーザーはデータをダウンロードすることを選択する。
ステップ32.クライアントはトリガーされる。
ステップ33.クライアントは、リクエストルートサーバーにダウンロードリクエストを送信する。このリクエストのフォーマットは、クライアントの実施形態で説明される。
ステップ34.リクエストルートサーバーは、ダウンロードされるべきコンテンツが存在するかどうかをチェックするためにプロトコルマッピングユニットを検索する(この実施形態では、コンテンツは存在しないものと仮定する)。
ステップ35.リクエストルートサーバーは、クライアントにダウンロード応答メッセージを送信して、ダウンロードされるべきコンテンツがマッピングユニットに存在しないことをクライアントに通知する。
ステップ36.リクエストルートサーバーは、ダウンロード通知メッセージをダウンロードプロキシサーバーに送信する。このダウンロード通知メッセージは、例えば、適用されるダウンロードプロトコルやコンテンツIDなどの、ダウンロード処理のために必要とされるデータを搬送する。詳細は、リクエストルートサーバーの実施形態で提供される。
ステップ37.データは、対応ダウンロードプロトコルに従ってダウンロード通知によって指示されたときにダウンロードされる。
ステップ38.ファイルデータの一部はダウンロードされ、エッジネットワークの一時的コンテンツIDが計算される。
エッジネットワークの一時的コンテンツIDを取得するための方法は、次の実施形態で述べられる。この実施形態は、エッジネットワークの一時的なコンテンツIDが、現在ダウンロードされるデータコンテンツの一部に従って取得されることを示している。その方法は次の処理を含む。
プリセット長(preset length)のファイルヘッダーデータ(file header data)をダウンロードし、プリセットルール(preset rules)に従ってプリセット長のファイルトレイラーデータ(file trailer data)をダウンロードし、そして、次の方法に従って、ダウンロードされたデータの一部のエッジネットワークの一時的なコンテンツIDを計算する。
ハッシュ(プリセット長のファイルヘッダーデータ+プリセット長のファイルトレイラーデータ+ファイル長)
或いは、エッジネットワークの一時的コンテンツIDは、ファイル長のようなパラメータのみに従って計算されてもよい。
ステップ39.エッジネットワークの一時的コンテンツIDに従ってデータコンテンツがローカル的に既に格納されているかどうかについて判定がなされる。もし、データコンテンツがローカル的に既に格納されていれば、対応エッジネットワークコンテンツIDが検索され、そしてダウンロードが停止される(この実施形態では、データコンテンツはローカル的に既に格納されているものとする)。
ステップ310.ダウンロードプロキシサーバーは、リクエストルートサーバーにデータのエッジネットワークコンテンツIDを報告する。
ステップ311.エッジネットワークコンテンツIDとコンテンツIDとの間のマッピングを含み、データコンテンツ情報はプロトコルマッピングユニットに付加される。データコンテンツ情報のフォーマットは、リクエストルートサーバーにおけるプロトコルマッピングユニットに関する前述のセクションで述べられている。
ステップ312.リクエストルートサーバーは、クライアントにダウンロード通知メッセージを送信する。ここで、このメッセージは、エッジネットワークコンテンツID、ダウンロードプロキシサーバー情報、および同一ファイルをダウンロードしている他のクライアントに関する情報を搬送する。
ステップ313.クライアントは、ダウンロード通知応答メッセージを戻す。
ステップ314.現在ダウンロードされているデータコンテンツに対応して、このクライアントに関する情報は、リクエストルートサーバーのクライアント管理ユニットに付加される。
ステップ315.図2の処理におけるステップ27−210に詳細に示されるように、クライアントは、ダウンロードプロキシサーバーと、同一ファイルをダウンロードしている他のクライアントとから、データをダウンロードする。
図3に示される処理におけるステップ39では、ダウンロードプロキシサーバーは、現在ダウンロードされているデータコンテンツがローカル的に格納されていることを見つけるものとする。もし、現在ダウンロードされているデータコンテンツがローカル的に格納されていなければ、図4に示される処理が適用される。
ステップ41.ユーザーはデータをダウンロードすることを選択する。
ステップ42.クライアントはトリガーされる。
ステップ43.クライアントは、リクエストルートサーバーにダウンロードリクエストを送信する。このリクエストのフォーマットは、クライアントに関するセクションで述べられる。
ステップ44.リクエストルートサーバーは、プロトコルマッピングユニットを検索して、ダウンロードされるべきコンテンツが存在するかどうかをチェックする(この実施形態では、コンテンツは存在しないものとする)。
ステップ45.リクエストルートサーバーは、クライアントにダウンロード応答メッセージを送信し、ダウンロードされるべきコンテンツがマッピングユニットに存在しないことをクライアントに通知する。
ステップ46.リクエストルートサーバーは、ダウンロードプロキシサーバーにダウンロード通知メッセージを送信する。このダウンロード通知メッセージは、例えば、適用されるダウンロードプロトコルやコンテンツIDなど、ダウンロード処理のために必要とされるデータを搬送する。詳細は、リクエストサーバーの実施形態において提供される。
ステップ47.ダウンロードプロキシサーバーは、対応ダウンロードプロトコルに従って、ダウンロード通知メッセージにより指示されると、データをダウンロードする。
ステップ48.ファイルデータの一部はダウンロードされ、そしてエッジネットワークの一時的コンテンツIDが計算される。
ステップ49.エッジネットワークの一時的コンテンツIDに従ってデータコンテンツがローカル的に既に格納されたかどうかについて判定がなされる。この実施形態では、現在ダウンロードされているデータコンテンツはローカル的に格納されていないものとする。従って、ダウンロードプロキシサーバーは、ファイルのダウンロードを継続する。
ステップ410.エッジネットワークの一時的コンテンツIDと、エッジネットワークの一時的コンテンツIDタイムスタンプは、リクエストルートサーバーに報告される。
エッジネットワークの一時的コンテンツIDは、データコンテンツのダウンロードの完了前に計算される。その上、この実施形態におけるエッジネットワークの一時的コンテンツIDを生成する方法に従って、エッジネットワークの一時的コンテンツIDは同一であるがファイルが異なる可能性(possibility)を考慮に入れて、エッジネットワークの一時的コンテンツIDタイムスタンプ情報が、更にこの実施形態に含まれる。
ステップ411.ファイル情報は、プロトコルマッピングユニットに付加される。
ステップ412.リクエストルートサーバーは、クライアントにダウンロード通知メッセージを送信する。ここで、このメッセージは、エッジネットワークの一時的コンテンツID、ダウンロードプロキシサーバー情報、および、同一ファイルをダウンロードしている他のクライアントに関する情報を搬送する。
ステップ413.クライアントは、ダウンロード通知応答メッセージを戻す。
ステップ414.現在ダウンロードされているデータコンテンツに対応して、このクライアントに関する情報が、リクエストルートサーバーのクライアント管理ユニットに付加される。
ステップ415.図2の処理におけるステップ27−210に詳細が示されるように、クライアントは、ダウンロードプロキシサーバーと、同一ファイルをダウンロードしている他のクライアントとから、データをダウンロードする。
ステップ416.データのダウンロードが完了すると、ダウンロードプロキシサーバーは、エッジネットワークコンテンツIDを計算し、それをリクエストルートサーバーに報告する。
ステップ417.エッジネットワークコンテンツID情報は、クライアントマッピングユニットに付加される。特定の記憶フォーマットは、リクエストルートサーバーに関する関連セクションで述べられる。エッジネットワークの一時的コンテンツIDは、プロトコルマッピングユニットに格納される。
図4に示される処理では、クライアントは、エッジネットワークの一時的コンテンツIDに従って、ダウンロードプロキシサーバーによって既にダウンロードされているデータの一部をダウンロードしてもよい。しかしながら、この実施形態は、エッジネットワークが、バックボーンネットワークからのデータのダウンロードを完了する前に、データのダウンロードを禁止する実施を除外しない。この実施は、前述のエッジネットワークの一時的コンテンツIDを呼び出さない。とはいっても、本開示では、他のアルゴリズムを通じて又は他の手段によって、エッジネットワークの一時的コンテンツID及び/又はエッジネットワークコンテンツIDを取得する実施を排除しない。
前述の処理を参照すると、この実施形態における本システムに適用される方法は、次の処理を含む。
即ち、本方法は、クライアントからデータダウンロードリクエストを取得し、ダウンロードリクエストで搬送されるコンテンツIDであって特定のプロトコルに基づくデータのコンテンツIDを取得し、コンテンツIDに対応するエッジネットワークコンテンツIDを検索し、もしエッジネットワークコンテンツIDが見つかれば、エッジネットワークコンテンツIDをインデックスとして使用することにより対応クライアント情報を取得し、クライアント情報を搬送するデータソース情報をクライアントに戻し、または、もしエッジネットワークコンテンツIDが見つからなければ、クライアントによってリクエストされたデータをローカル記憶装置にダウンロードし、上記データのエッジネットワークコンテンツIDを計算して格納し、そして、エッジネットワークコンテンツIDと、ローカル記憶装置情報を搬送するデータソース情報とをクライアントに送信することを含む。
上述の方法では、コンテンツIDに対応するエッジネットワークコンテンツIDが見つからなければ、ファイルデータの一部が、プリセットルールに従って更にダウンロードされ、ローカル記憶装置へのデータのダウンロードが完了する前にエッジネットワークの一時的コンテンツIDが計算される。さらに、エッジネットワークの上記格納された一時的コンテンツIDが検索され、もしエッジネットワークの一致する一時的コンテンツIDが見つかれば、現在ダウンロードされているデータをプロキシサーバーが既に格納していると判定され、そしてこのデータのエッジネットワークIDがクライアントに送信される。そうでなければ、エッジネットワークの一時的コンテンツIDがクライアントに送信される。
上述の方法に基づいて、現在使用されているダウンロードプロトコルに固有のエッジネットワークの上記一致する一時的コンテンツIDに対応するデータのチェックデータが取得される。もし、このチェックデータが、現在ダウンロードされているデータのチェックデータと同一であれば、現在ダウンロードされているデータをプロキシサーバーが既に格納していると判定される。
当業者であれば、上述の実施形態におけるステップの一部または全部は、プログラムによって命令されるハードウェアを通じて実施されてもよいことが分かる。このプログラムは、読み出し専用メモリ/ランダムアクセスメモリ(ROM/RAM)、磁気ディスク、コンパクトディスクのようなコンピュータ読み出し可能な記憶媒体に格納されてもよい。
上述のエッジネットワークシステムにおける装置は以下に詳細に述べられる。
図5に示されるように、本発明の実施形態によるクライアント装置50は、ユーザーダウンロードインターフェイス51、ダウンロードプロトコル管理ユニット52、第1のリクエストルートサーバー通信管理ユニット53、ダウンロード管理ユニット54、第1の接続管理ユニット55を備える。
ユーザーダウンロードインターフェイス51は、ユーザーに対する統一ダウンロードインターフェイス(unified download interface)を備える。当業者であれば、BT,eMule,FTPおよびHTTPのような、複数のダウンロードプロトコルを支援する公知の種々のダウンロードプロトコルに従って本発明の実施形態のためのユーザーダウンロードインターフェイスを把握することができる。このダウンロードインターフェイスは、ユーザーがプロトコルに基づいてダウンロードすることを要求するデータのコンテンツIDを取得するためのダウンロードプロトコルに基づくユーザーダウンロード命令を解読する。
データの配信(distribution)と共有(sharing)を容易化するために、従前のダウンロードプロトコルは、各識別モードに従ってデータコンテンツを識別する。
例としてBTプロトコルを取り上げると、BTシードは(BT seed)、主に、トラッカーサーバー(tracker server)のURLリスト、ネーム(Name)、ピース長(Piece length)、ピース(Piece)、長さ(length)、パス(Path)を含む。“ネーム”はストリングであり、そのデフォルト値は、一般に、ファイルをセーブするときに適用し、“ピース長”は、伝送されるファイルフラグメントの長さであり、それは、通常、256KBであり、“ピース”は、多数の20バイトのストリングから構成され、各ストリングは、対応フラグメントのハッシュ値(Hush value)であり、“長さ”はファイル長であり、“パス”はサブディレクトリのリストネームのリストである。“ネーム”、“ピース長”、“ピース”、“長さ”、“パス”は、BTシードに対応するコンテンツに関する情報(Info)である。BTにおけるコンテンツを識別するモードは、20バイト値を取得するために情報(Info)に対するSHAI暗号化処理(SHAI encryption operation)を実施することである。
他の例では、eMuleプロトコルでのファイルチェックデータを計算するための方法は、それそれのサイズが9.28MBの複数のブロックにファイルを分割し(最後のブロックは9.28MBよりも小さくてもよい)、MD4アルゴリズムを通じて各ブロックのチェック値を計算することを含む。eMuleプロトコルでのコンテンツを識別する方法は、MD4アルゴリズムに基づいてハッシュ値を取得するために、上述のチェックデータに対するMD4暗号化を実施することを含む。
更に、FTPまたはHTTPプロトコルでコンテンツIDを計算する方法は、次のことを含む。
ハッシュ(URL+コンテンツサイズ+更新時間)
ここで、URLはユニフォームリソースロケータ(uniform resource locator)である。また、同一のURLは同一のサイズを有するため更新時間(modification time)が考慮されるが、そのコンテンツは、更新後では異なってもよい。従って、更新時間は、コンテンツIDの計算において、計算されたコンテンツIDの信頼性を改善すると考えられる。しかしながら、更新時間は、FTPまたはHTTPプロトコルに基づくデータのコンテンツIDを計算するためには不可欠である。
BTプロトコルについて、データのコンテンツIDは、シード(seed)におけるディレクトリIDと、対応ファイルシーケンス番号から構成されてもよい。BTプロトコルは、ディレクトリごとにコンテンツを識別する。一つのディレクトリは、複数のサブディレクトリと複数のファイルを含んでもよい。従って、もし、ディレクトリの複数のレイヤが、この実施形態におけるシードディレクトリにネスティング(nest)されれば、ディレクトリIDと、対応ファイルシーケンス番号は、ディレクトリを深く且つ優先的にトラバース(traverse)することにより取得されてもよい。しかしながら、当業者であれば、コンテンツIDおよび対応ファイルシーケンス番号を構成するディレクトリIDを取得するために、共通の書誌学的方法(bibliographical methods)を依然として使用してもよい。
ダウンロードプロトコル管理ユニット52は、クライアントにより支援されるダウンロードプロトコルを記録する。下記に、記録フォーマットの例を示す。
Figure 2010525420
ダウンロードプロトコル管理ユニットは、ユーザー命令を解読するためにユーザーダウンロードインターフェイスのためのプロトコルサポートを提供する。ダウンロードプロトコル管理ユニットは、クライアントによって支援されるプロトコルを記録し、各プロトコルにプロトコルIDを割り当てる。プロトコルIDは、リクエストルートサーバー上のプロトコルIDと一致する。第1のリクエストルートサーバー通信管理ユニットは、プロトコルIDを取得するために、ダウンロードプロトコル管理ユニットを起動(invoke)し、そしてプロトコルIDと、対応コンテンツIDをリクエストルートサーバーに送信する。従って、リクエストルートサーバーは、このプロトコルに基づくコンテンツIDに対応するデータをダウンロードするために、クライアントダウンロードプロトコルと一致するプロトコルを使用してもよい。
図5に示されるクライアントとは異なり、本発明の実施形態により他のクライアントが提供される。ここで、第1のリクエストルートサーバー通信管理ユニットとダウンロードプロトコル管理ユニットとの間の通信が削除され、ユーザーダウンロードインターフェイスがプロトコルIDを直接的に提供する。
ダウンロード管理ユニット54は、コンテンツソース(例えば、ダウンロードプロキシサーバー、このクライアントによってリクエストされたデータをダウンロードまたは格納する他のクライアント、FTPまたはHTTPサーバー)からデータコンテンツをダウンロードするように構成され、ここで、データコンテンツは、磁気ディスクのような記録媒体に格納される。詳細には、この実施形態では、エッジネットワークにおけるデータコンテンツは、エッジネットワークコンテンツIDによって識別される。従って、ダウンロード管理ユニットは、エッジネットワークコンテンツIDに従って、リクエストされたデータをデータソースからダウンロードする。
第1のリクエストルートサーバー通信管理ユニット53は、リクエストルートサーバーとのデータ/メッセージ通信を担い、リクエストルートサーバーに、少なくともデータのコンテンツIDを搬送するデータダウンロードリクエストを送信すること、リクエストルートサーバーによって送信されたデータソース情報とダウンロードされるべきデータのエッジネットワークコンテンツIDとを取得することを含み、これにより、ダウンロード管理ユニットは、少なくともデータソース情報とエッジネットワークコンテンツIDとに従ってデータをダウンロードする。
第1の接続管理ユニット55は、外部装置とのデータ通信を実施するように構成される。
上述したように、ダウンロード管理ユニットは、第1の接続管理ユニット55を通じてコンテンツソースからデータをダウンロードする。本発明の次の実施形態は、クライアントとデータソースとの間のメッセージインターフェイスのフォーマットを提供する(クライアント間のメッセージインターフェイス、データのダウンロードをリクエストするクライアントとそこに備えられるダウンロードプロキシサーバーとの間のメッセージインターフェイスを含む)。このメッセージインターフェイスには次の3つのタイプがある。
(1)ハンドシェーク(handshake)及び応答メッセージ
ハンドシェークメッセージのフォーマットを次に示す。
Figure 2010525420
エッジネットワークコンテンツIDは、本発明の実施形態によるエッジネットワークで共有(share)される完全なデータコンテンツの統一的にフォーマットされた識別子である。ハンドシェークメッセージでは、エッジネットワークコンテンツIDはエンプティであってもよい。その理由は、クライアントがデータコンテンツをダウンロードすることをリクエストする場合、データコンテンツの一部のみ(即ち、不完全なデータコンテンツ)が、現在、エッジネットワークに格納されるからである(即ち、エッジネットワークは、ダウンロードしているが、バックボーンネットワークからデータコンテンツをダウンロードし終えていないからである)。従って、データコンテンツの残りの部分は、依然として、ダウンロードされるべきであり、エッジネットワークコンテンツIDを有していない。
最適化法(optimization measure)が本発明の実施形態において提供される。即ち、バックボーンネットワークからダウンロードされているデータコンテンツ(この実施形態では、ダウンロードプロキシサーバーがこの機能を実施する)について、エッジネットワークの一時的コンテンツIDは、データコンテンツを識別するためにエッジネットワークコンテンツIDを置き換える。このように、クライアントは、ダウンロードを開始する前に、バックボーンネットワークからエッジネットワークへのデータコンテンツのダウンロードの完了を待つ必要がない。その代わり、クライアントは、エッジネットワーク(ダウンロードプロキシサーバー)のダウンロードの進行に伴いデータをダウンロードする。データコンテンツのダウンロードの完了前に、クライアントは、エッジネットワーク(ダウンロードプロキシサーバー)にダウンロードされたデータを最初にダウンロードしてもよい。
上述の方法を実施するために、本発明の好ましい実施形態で提供されるハンドシェークメッセージは、エッジネットワークコンテンツIDに基づいてエッジネットワークの一時的なコンテンツID(その生成方法は後述される)を搬送する。
更に、エッジネットワークの一時的コンテンツIDは、データコンテンツのダウンロードの完了前に計算される。その上、後述するエッジネットワークの一時的コンテンツIDを生成する方法により、エッジネットワークの一時的コンテンツIDは同一であるがファイルが異なる可能性を考慮して、エッジネットワークの一時的コンテンツIDタイムスタンプ情報が、この実施形態でのハンドシェークメッセージに更に含まれる。
しかしながら、この実施形態は、エッジネットワークがバックボーンネットワークからデータをダウンロードし終える前にデータコンテンツをダウンロードすることを禁止する実施を排除しない。この実施は、エッジネットワークの上述の一時的コンテンツIDを呼び出さない。とはいっても、本開示は、他のアルゴリズムを通じてまたは他の手段により、エッジネットワークコンテンツID及び/又はエッジネットワークの一時的コンテンツIDを取得する実施を排除しない。
上述のハンドシェークメッセージのフォーマットに対応して、この実施形態で提供されるハンドシェーク応答メッセージのフォーマットを次に示す。
Figure 2010525420
(2)データリクエスト及び応答メッセージ
データリクエストメッセージのフォーマットを次に示す。
Figure 2010525420
データリクエスト応答メッセージのフォーマットを次に示す。
Figure 2010525420
上述の表に示されるように、エッジネットワークにおけるデータは、この実施形態におけるフラグメントダウンロードモードを通じて共有(share)される。しかしながら、本開示は、エッジネットワークにおいてデータをダウンロードするモードに制限することを意図するものではない。エッジネットワークにおけるデータは、フラグメントダウンロードモード以外の他のモードでダウンロードされてもよい。例えば、データは、ファイルヘッダーの絶対オフセットを通じてクライアント間で共有されてもよい。例えば、クライアントAが、クライアントBに、ファイルヘッダーにおいて2000番目のバイトで始まって3000番目のバイトで終了するコンテンツをリクエストする。
(3)データチェックリクエストメッセージ及びその応答メッセージ
データチェックリクエストのフォーマットを次に示す。
Figure 2010525420
データチェックリクエスト応答メッセージのフォーマットを次に示す。
Figure 2010525420
一般に、通信データに関するチェックはデータ通信処理において必要である。従って、データの信頼性を改善するために、この実施形態は、データチェックリクエストメッセージと、その応答メッセージのフォーマットを提供する。このようなフォーマットは、データリクエストメッセージと(2)で提供されるその応答メッセージのフォーマットに基づいている。
本発明の実施形態により提供されるリクエストルートサーバー60は、図6を参照して以下に詳細に説明される。図6に示されるように、リクエストルートサーバーは、プロトコルマッピングユニット61、クライアント管理ユニット62、ダウンロードプロキシ通信管理ユニット63、第1のクライアント通信管理ユニット64、第2の接続管理ユニット65を備える。
プロトコルマッピングユニット61は、ファイルごとにデータコンテンツを識別し、例えば、プロトコルに基づくデータのコンテンツIDとエッジネットワークコンテンツIDとの間のマッピングを保持する。また、プロトコルマッピングユニット61は、第1のクライアントによって送信された取得されたコンテンツIDに従って、エッジネットワークコンテンツIDを検索する。もし、何らかのエッジネットワークコンテンツIDが見つかれば、プロトコルマッピングユニット61は、他の種々のダウンロードプロトコルでのコンテンツIDをエッジネットワークコンテンツIDにマッピングし、そして、クライアント管理ユニットに通知し、そうでなければ、プロトコルマッピングユニット61は、ダウンロードプロキシ通信管理ユニットに通知する。
プロトコルマッピングユニットにおけるファイル毎のデータの識別のフォーマットを次に示す。このフォーマットは、プロトコルID、オリジナルのダウンロードプロトコルのコンテンツID、エッジネットワークコンテンツIDを含む。
Figure 2010525420
もし、エッジネットワークの一時的コンテンツIDが、本発明のシステムにおいても適用されれば、プロトコルマッピングユニットは、次のIDフォーマット、即ち、プロトコルID、コンテンツID、エッジネットワークの一時的コンテンツID、エッジネットワークの一時的コンテンツIDタイムスタンプなどを更に格納する。コンテンツIDに対応するエッジネットワークの一時的コンテンツIDと、エッジネットワークの一時的コンテンツIDタイムスタンプは、プロトコルマッピングユニットがコンテンツIDに従って上述の表における対応エッジネットワークコンテンツIDを見つることができない場合(即ち、上述の表におけるエッジネットワークコンテンツIDがエンプティである場合)にのみ次の表に従って検索される。
Figure 2010525420
クライアント管理ユニット62は、同一ファイルをダウンロードするクライアントに関する情報を記録し、更に詳しくは、エッジネットワークコンテンツIDをインデックスとして使用することにより同一データをダウンロードするクライアントに関する情報を保持し、プロトコルマッピングユニットによって見つけられたエッジネットワークコンテンツIDに従って対応クライアント情報を取得し、このクライアント情報を第1のクライアント通信管理ユニットに送信し、そして更に、クライアントがファイルのダウンロードに合意した場合にエッジネットワークコンテンツIDとクライアントとの間のマッピングを記録する。
クライアント管理ユニットにおいてクライアント管理ユニットの情報を記録するフォーマットを以下に例示する。
Figure 2010525420
クライアントのリストを次のフォーマットに示す。
Figure 2010525420
ダウンロードプロキシ通信管理ユニット63は、プロトコルマッピングユニットの通知に従ってプロキシサーバーへデータダウンロードリクエストを送信することを含み、第2の接続管理ユニットを通じてダウンロードプロキシサーバーとのメッセージ通信を実施する。
リクエストルートサーバーとダウンロードプロキシサーバーとの間のメッセージインターフェイスは、次の2つのタイプのメッセージを搬送する。
(1)ダウンロード通知メッセージ及びその応答メッセージ
リクエストルートサーバーが、ダウンロードクライアントからダウンロードリクエストを受信した後、もし、プロトコルマッピングユニットが対応記録を見つけることに失敗すれば(即ち、クライアントのダウンロードリクエストメッセージで運ばれるコンテンツIDに従って対応エッジネットワークコンテンツIDを見つけ出すことに失敗すると)、リクエストルートサーバーは、ダウンロードプロキシサーバーにダウンロード通知メッセージを送信する。このメッセージフォーマットは次のようである。
Figure 2010525420
上述の表に示されるように、リクエストメッセージは、プロトコルID、コンテンツID、プロトコル関連データ(例えば、BTシードにおけるチェックデータ)を搬送する。
(2)エッジネットワークコンテンツID報告メッセージ及びその応答メッセージ
ダウンロードプロキシサーバーは、エッジネットワークコンテンツIDをリクエストルートサーバーに報告する。ここで、エッジネットワークコンテンツIDは、ダウンロードプロキシサーバーにデータをダウンロードすることを通知するためにリクエストルートサーバーによって適用(apply)される。
この実施形態では、ダウンロード通知メッセージを取得した後、ダウンロードプロキシサーバーは、更に、リクエストルートサーバーによって通知されたときにダウンロードされるべきデータコンテンツがローカル的に格納されているかどうかを判定する。この場合、リクエストルートサーバーは、ダウンロード通知メッセージを通じて、エッジネットワークコンテンツIDに代えてコンテンツIDのみをダウンロードプロキシサーバーに送信することができる。従って、ダウンロードプロキシサーバーは、この処理において判定を行う。即ち、ダウンロードプロキシサーバーは、リクエストルートサーバーの命令に従ってファイルデータの一部をダウンロードし、データコンテンツの一部に従ってエッジネットワークの一時的コンテンツIDを計算し、そしてファイルが既に存在するかどうかをチェックするために、格納されたデータのエッジネットワークの一時的コンテンツIDを検索する。もし、ファイルが既に存在すれば、ダウンロードプロキシサーバーは、データのエッジネットワークコンテンツIDを検索して、それをリクエストルートサーバーに報告する。もし、このようなファイルが存在しなければ、ダウンロードプロキシサーバーは、エッジネットワークの一時的コンテンツIDを報告する(そして、エッジネットワークの一時的コンテンツIDタイムスタンプを更に報告する)。さらに、データコンテンツがダウンロードされた後、ダウンロードプロキシサーバーは、完全なデータコンテンツに従ってエッジネットワークコンテンツIDを計算し、そのエッジネットワークコンテンツID、エッジネットワークの一時的コンテンツID、およびエッジネットワークの一時的コンテンツIDタイムスタンプをリクエストルートサーバーに報告する。報告メッセージを受信した後、リクエストルートサーバーは、応答メッセージをダウンロードプロキシサーバーに送信する。(ダウンロードプロキシサーバーの構成および機能は後述する。)
明らかに、上述の判定後の処理モードは、エッジネットワークがバックボーンネットワークからデータをダウンロードし終える前にクライアントがダウンロードを開始することを可能にすることを示す。もし、本システムが、エッジネットワークがバックボーンネットワークからデータをダウンロードし終える前にクライアントがデータをダウンロードすることを可能にしなければ、リクエストルートサーバーによって通知されたときにダウンロードされるべきデータがローカル的に格納されていないとダウンロードプロキシサーバーが判定した場合、ダウンロードプロキシサーバーは、リクエストルートサーバーにエッジネットワークの一時的コンテンツIDを何ら送信することなく、バックボーンネットワークからデータをダウンロードし続ける。バックボーンネットワークからのデータのダウンロードが完了すると、ダウンロードプロキシサーバーは、エッジネットワークID、エッジネットワークの一時的コンテンツID、およびエッジネットワークの一時的コンテンツIDタイムスタンプをリクエストルートサーバーに報告する。
第1のクライアント通信管理ユニット64は、クライアント情報とエッジネットワークコンテンツIDを搬送するデータソース情報を第1のクライアントに送信することを含み、第2の接続管理ユニットを通じてダウンロードクライアントとのメッセージ通信を実施する。
クライアントとリクエストルートサーバーとの間のメッセージ通信は、2つのタイプのメッセージを搬送する。
(1)ダウンロードリクエストメッセージ及びその応答メッセージ
クライアントは、リクエストルートサーバーにダウンロードリクエストを送信し、リクエストルートサーバーは、ダウンロード応答メッセージを戻す。
次の表に示すように、ダウンロードリクエストメッセージは、データをダウンロードするために使用されるプロトコルID、プロトコルに基づくデータのコンテンツID、プロトコルに関連したデータ(例えば、BTシードにおけるチェックデータ)を搬送する。
Figure 2010525420
次の表に示すように、応答メッセージは、応答IDとオプションデータを搬送する。例えば、もし、応答IDが1であれば、それは、クライアントにリクエストされたときにダウンロードされるべきデータがエッジネットワーク(他のクライント又はダウンロードプロキシサーバー)に存在することを示す。この場合、オプションデータは、エッジネットワークにおけるデータのエッジネットワークコンテンツID、エッジネットワークの一時的コンテンツID、エッジネットワークの一時的コンテンツIDタイムスタンプ、プロキシサーバー情報、およびクライアント情報である。
Figure 2010525420
クライアントのリストにおける要素は、クライアントIPアドレス、クライアントポート番号、及びシードユーザーか否かを含んでもよい。
(2)ダウンロード通知メッセージ及びその応答メッセージ
ダウンロードプロキシサーバーによって報告されたエッジネットワークコンテンツIDを受信した後、リクエストルートサーバーは、ダウンロードを実施することをクライアントに通知する。この通知メッセージは、エッジネットワークコンテンツID、エッジネットワークの一時的コンテンツID、エッジネットワークの一時的コンテンツIDタイムスタンプを搬送する。ダウンロード通知メッセージを受信した後、クライアントは応答メッセージを送信する。この応答メッセージは、データダウンロードに対する同意(consent to)または取り消し(cancellation)を意味する。
第2の接続管理ユニット65は、外部装置とのメッセージ通信を実施するように構成される。
図7は、本発明の実施形態において提供されるダウンロードプロキシサーバー70を示す。図7に示されるように、ダウンロードプロキシサーバー70は、ダウンロードプロキシユニット71、記憶ユニット72、第1のクライアント通信管理ユニット73、第2のリクエストルートサーバー通信管理ユニット74、及び第3の接続管理ユニット75を備える。
第3の接続管理ユニット75は、外部装置とのデータ通信を実施するように構成されている。
第2のクライアント通信管理ユニット73は、第3の接続管理ユニットを通じてクライアントとのデータ通信を実施するように構成されている。クライアントとダウンロードプロキシサーバーとの間の通信のフォーマットに関しては、上述のクライアントとデータソースとの間の通信のフォーマットが参考になる。
第2のリクエストルートサーバー通信管理ユニット74は、リクエストルートサーバーからデータダウンロード通知を取得すること、このデータダウンロード通知をダウンロードプロキシユニットに送信すること、リクエストルートサーバーにエッジネットワークコンテンツIDを送信することを含み、第3の接続管理ユニットを通じてリクエストルートサーバーとのデータ通信を実施する。ダウンロードプロキシサーバーとリクエストルートサーバーとの間の通信のフォーマットに関しては、リクエストルートサーバーに関する上述のセクションが参考になる。
ダウンロードプロキシユニット71は、複数のダウンロードプロトコルをサポートし、第2のリクエストルートサーバー通信管理ユニットのダウンロード通知に従ってデータをダウンロードし、エッジネットワークコンテンツIDを計算し、エッジネットワークの一時的コンテンツIDを計算し、そして、リクエストルートサーバーによって通知されたときにダウンロードされるべきデータが既にローカル的に格納されているかどうかを判定する。
ダウンロードプロキシサーバーは、この目的のために上述の判定を実施する。即ち、リクエストルートサーバーは、異なるプロトコルに基づくデータのコンテンツIDと、統一されたエッジネットワークコンテンツIDとの間のマッピングを格納し、そして、次の状況が発生するように、同一のデータは異なるダウンロードプロトコルに基づく異なるコンテンツIDを有する。即ち、クライアントによってリクエストされたデータと、このデータのエッジネットワークコンテンツIDは、エッジネットワーク(他のクライアント、またはダウンロードプロキシサーバー)に格納されているが、エッジネットワークコンテンツIDと現在のダウンロードプロトコルコンテンツIDとの間のマッピングは存在しない。従って、リクエストルートサーバーは、現在のダウンロードプロトコルコンテンツIDに従ってデータのエッジネットワークコンテンツIDを検索することができない。可能性のある原因として次のことがある。エッジネットワークは、最初に、現在のダウンロードプロトコルを通じてネットワークに格納されたデータコンテンツをダウンロードすることをリクエストする。例えば、データAはエッジネットワークに格納され、そのエッジネットワークIDはaである。リクエストルートサーバーは、BTプロトコルに基づくデータAのコンテンツID“x”とエッジネットワークID“a”との間のマッピングと、eMuleプロトコルに基づくデータAのコンテンツID“y”とエッジネットワークID“a”との間のマッピングを格納する。しかしながら、エッジネットワークにおけるクライアントが、最初に、FTPプロトコルを通じてデータAをダウンロードすることをリクエストした場合、リクエストルートサーバーは、FTPプロトコルに基づくデータAのコンテンツID“z”とエッジネットワークのコンテンツID“a”との間のマッピングをセットアップしていない。従ってリクエストルートサーバーは、エッジネットワークにおける既存のデータAを見つけ出すことができない。
この理由から、この実施形態におけるダウンロードプロキシサーバーは、更に、クライアントによってリクエストされたデータがエッジネットワークに既に格納されているかどうかを判定する。この判定方法は、プリセットルールに従って、プリセット長のファイルヘッダーデータをダウンロードすること、プリセット長のトレイラーデータをダウンロードすること、そして、次の方法で、ダウンロードされたデータの一部のエッジネットワークの一時的コンテンツIDを計算することを含む。
ハッシュ(プリセット長のファイルヘッダーデータ+プリセット長のファイルトレイラーデータ+ファイル長)
或いは、エッジネットワークの一時的コンテンツIDは、ファイル長のようなパラメータのみに従って算出されてもよい。
エッジネットワークの上記計算された一時的コンテンツIDに対して、ダウンロードプロキシサーバーは、格納された一時的コンテンツIDの何れかが、エッジネットワークの上記計算された一時的コンテンツIDと一致するかどうかをチェックするために、記憶ユニットにおけるエッジネットワークの上記格納された一時的コンテンツIDを検索する。
もし、一致したアイテムが見つかれば、ダウンロードプロキシサーバーは、データのエッジネットワークコンテンツIDを取得し、そして、それを、第2のリクエストルートサーバー通信管理ユニット74を通じてリクエストルートサーバーに報告する。もし、ダウンロードプロキシサーバーが、エッジネットワークの一時的コンテンツIDのみを格納するが、このときにエッジネットワークコンテンツIDを格納していなければ、ダウンロードプロキシサーバーがデータコンテンツをダウンロードしていると見なされ、ダウンロードプロキシサーバーは、リクエストルートサーバーにエッジネットワークの一時的コンテンツIDを報告してもよい。
もし、一致したアイテムが存在しなければ、それは、ダウンロードプロキシサーバーの記憶ユニットが、現在ダウンロードされているデータコンテンツを格納していないことを示す。従って、ダウンロードプロキシユニット71によって算出されたエッジネットワークの一時的コンテンツIDは、第2のリクエストルートサーバー通信管理ユニット74を通じてリクエストルートサーバーに報告される。また、記憶ユニットは、データコンテンツ、および、ダウンロードされたデータとエッジネットワークの一時的コンテンツIDとの間のマッピングを記憶する。データのダウンロードが完了すると、ダウンロードプロキシユニット71は、完全なデータコンテンツに従ってエッジネットワークコンテンツIDを計算し、そのIDを格納し、そして、そのIDを、第2のルートサーバー通信管理ユニットを通じてリクエストルートサーバーに送信する。
エッジネットワークコンテンツIDは、多くの方法で完全なデータコンテンツに従って計算されてもよく、それは、本実施形態によって限定されない。例えば、MD4(全ファイルコンテンツ)、MD4(全ファイルコンテンツ)、SHAI(全ファイルコンテンツ)など、一意的なIDを得ることができるのであれば、任意の方法が実施可能である。
エッジネットワークの一時的コンテンツIDをリクエストルートサーバーに報告することは、ダウンロードプロキシサーバーがエッジネットワークへの全データのダウンロードを完了する前に、エッジネットワークに既にダウンロードされたデータの一部をダウンロードすることをクライアントに開始させる。
上述の判定方法に基づいて、ダウンロードプロキシサーバー71は、エッジネットワークの一時的コンテンツIDを計算した後に現在のダウンロードプロトコルに基づく現在ダウンロードされているデータのチェックデータを取得してもよい。また、ダウンロードプロキシユニット71は、エッジネットワークの一時的コンテンツIDをプロトコルのチェックデータと組み合わせて、現在ダウンロードされているデータが既にローカル的に格納されているかどうかを判定する。
プロトコルのチェックデータは、ダウンロードプロトコルにおいてチェックデータを計算するための方法に従うダウンロードプロトコルに固有のファイルのチェックデータを指す。次に例を示す。
eMuleプロトコルにおけるファイルチェックデータを計算するための方法は、ファイルを、それぞれのサイズが9.28MBの複数のブロック(最後のブロックは、9.28MBよりも小さくても良い)に分割し、そしてMD4アルゴリズムを通じて各ブロックのチェック値を計算することを含む。
BTプロトコルにおいて、チェックデータを計算するための方法は次のようである。BTプロトコルにおいて、コンテンツはディレクトリごとに識別され、そして全ファイルが、それぞれのサイズが256MBの複数のブロックに分割され、単一のファイルについては、ディレクトリにおけるファイルの位置とファイルにおける第1の完全なフラグメントの位置とが最初に決定され、そしてファイルに対応した完全なファイルフラグメントのチェック値がSHAIアルゴリズムを通じて引き続き計算される。シードが3個のファイルを含むと仮定すると、第2のファイルチェックデータを計算するための手順は次のようである。第1に、ファイル2におけるファイル2に対応する第1の完全なブロックの位置が決定され、それから後続のデータブロックのチェック値が引き続いて計算される。
他のダウンロードプロトコルについては、当業者であれば、関連する開示されたアルゴリズムを参照してチェックデータを得るであろう。
図8を参照すると、エッジネットワークの一時的コンテンツIDをチェックデータと組み合わせて、現在ダウンロードされているデータが既にローカル的にダウンロードされているかどうかを判定するための方法が提供される。
ステップ81.ファイルヘッダーデータ及びファイルテイラーデータが最初にダウンロードされ、エッジネットワークの一時的コンテンツIDが計算され、そしてこのデータコンテンツのチェックデータが取得される。
ステップ82.エッジネットワークの一時的コンテンツIDが記憶ユニットに存在するかどうかに関するチェックが実施される。もし一時的コンテンツIDが存在すれば、処理はステップ83に進み、存在しなければ、ステップ86に進む。
ステップ83.エッジネットワークの一時的コンテンツIDと、現在のダウンロードプロトコルに固有のこのデータコンテンツは、記憶ユニットから取得される。
ステップ84.上記チェックデータが比較される。もしチェックデータが同一であれば、処理はステップ85に進み、同一でなければ、ステップ86に進む。
ステップ85.現在ダウンロードされているデータが既にプロキシサーバーにローカル的に格納されていると判定される。
ステップ86.現在ダウンロードされているデータがプロキシサーバーにローカル的に格納されていないと判定される。
記憶ユニット72は、ダウンロードプロキシサーバーのデータコンテンツを格納して管理する。
上述した詳細は、本発明の実施形態において提供されたファイルデータ配信方法、および、関連装置である。本発明は、幾つかの典型的な実施形態を通じて述べられたが、本発明は、このような実施形態に限定されるものではない。当業者であれば、本発明の範囲および精神を逸脱することなく本発明の種々の修正および変形をなすことができる。本発明は、添付の特許請求の範囲またはそれらの均等物によって規定される保護の範囲に含まれる修正および変形に及ぶ。
11 クライアント
12 リクエストルートサーバー
13 ダウンロードプロキシサーバー

Claims (25)

  1. クライアントからデータダウンロードリクエストを取得し、特定のプロトコルに基づくデータのコンテンツIDであって前記ダウンロードリクエストで搬送されるコンテンツIDを取得するステップと、
    前記コンテンツIDに対応すると共にエッジネットワークにおけるデータコンテンツを一意的に識別するエッジネットワークコンテンツIDを検索し、前記エッジネットワークコンテンツIDをインデックスとして使用することにより対応クライアント情報を取得し、前記クライアント情報を搬送するデータソース情報を前記クライアントに戻すステップとを含むデータ配信方法。
  2. 前記エッジネットワークコンテンツIDが見つからなければ、前記クライアントによってリクエストされたデータをローカル記憶装置にダウンロードすると共に前記データのエッジネットワークコンテンツIDを計算して格納する旨をダウンロードプロキシサーバーに通知するステップと;ダウンロードサーバーによって戻されたエッジネットワークコンテンツIDを受信し、ローカル記憶装置情報を搬送する前記データソース情報と前記エッジネットワークコンテンツIDを前記クライアントに送信するステップを更に含む請求項1記載の方法。
  3. 前記ダウンロードサーバーが前記ローカル記憶装置への前記データのダウンロードを完了する前に、前記コンテンツIDに対応するエッジネットワークコンテンツIDが見つからない場合、更に、
    プリセットルールに従ってファイルデータの一部をダウンロードして、前記エッジネットワークの一時的コンテンツIDを計算するステップと、
    前記エッジネットワークの格納された一時的コンテンツIDを検索し;前記エッジネットワークの一致した一時的コンテンツIDが見つからなければ、現在使用されているダウンロードプロトコルに固有のエッジネットワークの前記一致した一時的コンテンツIDに対応するデータのチェックデータを計算し;前記チェックデータが現在ダウンロードされているデータのチェックデータと同一であると判定すれば、前記クライアントに前記データのエッジネットワークIDを送信し;前記チェックデータが現在ダウンロードされているデータのチェックデータと異なると判定すれば、前記エッジネットワークの前記計算された一時的コンテンツIDを前記クライアントに送信するステップとを含む請求項1記載の方法。
  4. 前記エッジネットワークの一時的コンテンツIDを計算するための方法は、プリセット長のファイルヘッダーデータ、プリセット長のファイルテイラーデータ、およびファイル長についてハッシュ演算を実施するステップを含む請求項3記載の方法。
  5. クライアントから、プロトコルに基づいて前記クライアントによってダウンロードされるべきデータのコンテンツIDを搬送するデータダウンロードリクエストを取得し;前記プロトコルに基づく前記コンテンツIDに対応するエッジネットワークコンテンツIDを検索し、前記エッジネットワークコンテンツIDをインデックスとして使用することにより対応クライアント情報を取得し、前記クライアント情報を搬送するデータソース情報を前記クライアントに戻し;ダウンロードプロキシサーバーによって戻された前記エッジネットワークコンテンツIDとプロキシサーバー情報を搬送する前記データソース情報とを前記クライアントに送信し;前記エッジネットワークコンテンツIDと前記コンテンツIDとの間のマッピングを保存するように構成されたリクエストルートサーバーと、
    前記リクエストルートサーバーからの通知に従って前記データをダウンロードし、前記エッジネットワークコンテンツIDを戻すように構成されたダウンロードプロキシサーバーとを備えたデータ配信システム。
  6. 前記リクエストルートサーバーが前記コンテンツIDに対応する前記エッジネットワークコンテンツIDを格納していなければ、前記ダウンロードプロキシサーバーは、前記データをダウンロードする旨を通知される請求項5記載のシステム。
  7. 前記ダウンロードプロキシサーバーは、更に、現在ダウンロードされている前記データが既に格納されているかどうかを判定し;前記ダウンロードされている前記データが既に格納されていれば、前記データのダウンロードを停止し、前記データのエッジネットワークコンテンツIDを前記リクエストルートサーバーに送信するように構成された請求項5記載のシステム。
  8. 前記ダウンロードプロキシサーバーによる判定は、
    プリセットルールに従ってファイルデータの一部をダウンロードし、エッジネットワークの一時的コンテンツIDを計算し、前記ダウンロードプロキシサーバーによって既に格納されたエッジネットワークの一時的コンテンツIDを検索し;前記エッジネットワークの一致した一時的コンテンツIDについて、現在のダウンロードプロトコルに固有なエッジネットワークの前記一致した一時的コンテンツIDに対応するデータのチェックデータを計算し;前記チェックデータが現在ダウンロードされているデータのチェックデータと同一であれば、前記プロキシサーバーが現在ダウンロードされているデータを既に格納していると判定することを含む請求項7記載のシステム。
  9. 前記ダウンロードプロキシサーバーによる前記エッジネットワークの一時的コンテンツIDの取得は、
    プリセット長のファイルヘッダーデータ、プリセット長のファイルテイラーデータ、およびファイル長についてのハッシュ演算を実施することを含む請求項8記載のシステム。
  10. 前記ダウンロードプロキシサーバーは、現在ダウンロードされている前記データがローカル的に格納されていなければ、前記リクエストルートサーバーの命令に従って前記データをダウンロードし、前記エッジネットワークコンテンツIDを生成して格納し、前記エッジネットワークコンテンツIDを前記リクエストルートサーバーに送信するように構成された請求項8記載のシステム。
  11. 前記ダウンロードプロキシサーバーは、更に、前記リクエストルートサーバーに前記エッジネットワークの一時的コンテンツIDを送信するように構成され、
    前記リクエストルートサーバーは、前記エッジネットワークの一時的コンテンツIDと前記コンテンツIDとの間のマッピングを保存し、前記マッピングを前記クライアントに送信し、前記データのダウンロードの完了の後に、前記ダウンロードプロキシサーバーによって生成されたエッジネットワークコンテンツIDに従って前記エッジネットワークの一時的コンテンツIDと前記コンテンツIDとの間の前記マッピングを更新するように構成された請求項10記載のシステム。
  12. クライアントを更に備え、
    前記クライアントは、ダウンロードプロトコルに基づくデータダウンロード命令を取得し、前記プロトコルに基づいて前記クライアントによってダウンロードされるべきデータのコンテンツIDを搬送するダウンロードリクエストを前記リクエストルートサーバーに送信するように構成され、
    前記ダウンロードプロキシサーバーは、前記エッジネットワークの一時的コンテンツIDまたは前記エッジネットワークコンテンツIDを取得し、データソースから前記エッジネットワークの一時的コンテンツIDまたは前記エッジネットワークコンテンツIDに対応するデータを取得するように構成され、
    前記リクエストルートサーバーは、更に、前記クライアントと前記エッジネットワークコンテンツIDまたは一時的ネットワークファイルIDとの間のマッピングを保存するように構成された請求項11記載のシステム。
  13. ユーザのダウンロードプロトコル命令を解読し、プロトコルに基づいてユーザーがダウンロードすることをリクエストするデータのコンテンツIDを取得するように構成されたユーザーダウンロードインターフェイスと、
    第1の接続管理ユニットを通じてリクエストルートサーバーとのデータ通信を実施するように構成され、前記コンテンツIDを搬送するデータダウンロードリクエストを前記リクエストルートサーバーに送信し、前記リクエストルートサーバーによって送信されたデータソース情報とダウンロードされるべきデータのエッジネットワークコンテンツIDを取得する第1のリクエストルートサーバー通信管理ユニットと、
    前記エッジネットワークコンテンツIDに従ってデータソースから前記データをダウンロードするように構成されたダウンロード管理ユニットと、
    外部装置とのデータ通信を実施するように構成された前記第1の接続管理ユニットとを備えたクライアント。
  14. 前記クライアントによって支援された前記ダウンロードプロトコルを記録するように構成されたダウンロードプロトコル管理ユニットを更に備えた請求項13記載のクライアント。
  15. 前記ユーザーダウンロードインターフェイスは、ファイル・トランスファ・プロトコル(FTP)またはハイパー・テキスト・トランスファ・プロトコル(HTTP)ダウンロード命令を取得するように構成され、前記ユーザーダウンロードインターフェイスによる前記コンテンツIDの取得は、
    URL(Uniform Resource Locator)、コンテンツサイズ、更新時間についてのハッシュ演算を実施することを含む請求項13記載のクライアント。
  16. 前記ユーザーダウンロードインターフェイスは、BT(Bit-Torrent)プロトコルのダウンロード命令を取得するように構成され、
    前記取得されたコンテンツIDは、シードにおけるディレクトリIDと、ディレクトリにおける対応ファイルデータシーケンス番号を含む請求項13記載のクライアント。
  17. 前記データソース情報は、ローカルクライアントによってダウンロードされたデータと同じデータをダウンロードするクライアントに関する情報と、ダウンロードプロキシサーバーに関する情報を含む請求項13記載のクライアント。
  18. プロトコルに基づくデータのコンテンツIDとエッジネットワークコンテンツIDとの間のマッピングを取得し、第1のクライアントによって送信された取得されたコンテンツIDに従って前記エッジネットワークコンテンツIDを検索し、前記エッジネットワークコンテンツIDが見つかれば、クライアント管理ユニットに通知するように構成されたプロトコルマッピングユニットと、
    前記エッジネットワークコンテンツIDをインデックスとして使用することにより同一データをダウンロードするクライアントに関する情報を保持し、前記プロトコルマッピングユニットによって見つけられたエッジネットワークコンテンツIDに従って対応クライアント情報を取得し、前記クライアント情報を第1のクライアント通信管理ユニットに送信し、前記エッジネットワークコンテンツIDと前記第1のクライアントとの間のマッピングを付加するように構成された前記クライアント管理ユニットと、
    第2の接続管理ユニットを通じてダウンロードしているクライアントとのメッセージ通信を実施するように構成され、前記クライアント情報と前記エッジネットワークコンテンツIDを搬送するデータソース情報を前記第1のクライアントに送信する前記第1のクライアント通信管理ユニットと、
    外部装置とのメッセージ通信を実施するように構成された前記第2の接続管理ユニットとを備えたリクエストルートサーバー。
  19. 前記プロトコルマッピングユニットが前記エッジネットワークコンテンツIDを見つけることができないかどうかについて通知されるダウンロードプロキシ通信管理ユニットと、
    前記第2の接続管理ユニットを通じてダウンロードプロキシサーバーとのメッセージ通信を実施するように構成され、前記プロトコルマッピングユニットの通知に従って前記プロキシサーバーにデータダウンロード通知を送信する前記ダウンロードプロキシ通信管理ユニットとを更に備えた請求項18記載のリクエストルートサーバー。
  20. 前記クライアント管理ユニットにより保持された前記クライアント情報は、
    クライアントIPアドレス、クライアントポート番号、シードユーザーか否かの指示を含む請求項18記載のリクエストルートサーバー。
  21. 前記ダウンロードプロキシ通信管理ユニットの前記メッセージ通信は、前記ダウンロードプロキシサーバーから前記エッジネットワークコンテンツIDを取得することを含み、
    前記クライアント管理ユニットは、前記ダウンロードプロキシ通信管理ユニットによって取得されたエッジネットワークコンテンツIDと前記第1のクライアントとの間のマッピングをセットアップする請求項18記載のリクエストルートサーバー。
  22. 前記データソース情報は、ダウンロードプロキシサーバー情報を更に含む請求項18記載のリクエストルートサーバー。
  23. 外部装置とのデータ通信を実施するように構成された第3の接続管理ユニットと、
    前記第3の接続管理ユニットを通じてクライアントとのデータ通信を実施するように構成された第2のクライアント通信管理ユニットと、
    前記第3の接続管理ユニットを通じてリクエストルートサーバーとのデータ通信を実施するように構成され、前記リクエストルートサーバーからデータダウンロード通知を取得し、前記データダウンロード通知をダウンロードプロキシユニットに送信し、前記ダウンロードプロキシユニットによって戻されたエッジネットワークコンテンツIDを受信し、前記エッジネットワークコンテンツIDを前記リクエストルートサーバーに送信する第2のリクエストルートサーバー通信管理ユニットと、
    前記ダウンロード通知に従ってデータをダウンロードし、前記エッジネットワークコンテンツIDを計算するように構成された前記ダウンロードプロキシユニットと、
    前記エッジネットワークコンテンツIDに対応するデータと前記エッジネットワークコンテンツIDを含み、データコンテンツを格納して管理するように構成された記憶ユニットとを備えたダウンロードプロキシサーバー。
  24. 前記ダウンロードプロキシユニットは、更に、プリセットルールに従って前記データの一部をダウンロードし、エッジネットワークの一時的コンテンツIDを計算して前記記憶ユニットに送信し、現在ダウンロードされているデータが既に格納されていると前記記憶ユニットが判定した場合に前記データのダウンロードを停止するように構成され、
    前記記憶ユニットによる記憶と管理は、更に、前記ダウンロードプロキシユニットによって計算されたエッジネットワークの一時的コンテンツIDに従って現在ダウンロードされているデータが既に格納されているかどうかを判定し;現在ダウンロードされているデータが既に格納されていれば、前記ダウンロードプロキシユニットに通知し、そうでなければ、前記エッジネットワークの一時的コンテンツID、および、前記エッジネットワークの一時的コンテンツIDと現在ダウンロードされているデータとの間のマッピングを保持するように構成され、
    前記第2のリクエストルートサーバー通信管理ユニットによって実施される前記データ通信は、更に、現在ダウンロードされているデータが既に格納されていると前記記憶ユニットが判定した場合、前記記憶ユニットに格納されたデータのエッジネットワークコンテンツIDを取得して送信し;そうでなければ、前記ダウンロードプロキシユニットによって生成されたエッジネットワークの一時的コンテンツIDを取得して送信することを含む請求項23記載のダウンロードプロキシサーバー。
  25. 前記ダウンロードプロキシユニットは、ダウンロードリクエストに従って前記データをダウンロードして、前記エッジネットワークコンテンツIDを計算するように構成され、
    前記記憶ユニットは、前記エッジネットワークコンテンツIDと前記エッジネットワークの一時的コンテンツIDとの間のマッピングと前記データを格納するように構成され、
    前記リクエストルートサーバー通信管理ユニットは、前記ダウンロードプロキシユニットが前記データのダウンロードを完了した後に計算されたエッジネットワークコンテンツIDを送信するように構成された請求項23記載のダウンロードプロキシサーバー。
JP2009545809A 2007-10-09 2008-05-16 エッジネットワークにおけるデータ配信方法、データ配信システム、および関連装置 Active JP4938092B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200710164303.7 2007-10-09
CN2007101643037A CN101409706B (zh) 2007-10-09 2007-10-09 一种边缘网络中的数据分发方法、数据分发系统及相关设备
PCT/CN2008/071000 WO2009046642A1 (fr) 2007-10-09 2008-05-16 Procédé de distribution de données, système distribution de données et dispositifs de corrélation dans un réseau périphérique

Publications (2)

Publication Number Publication Date
JP2010525420A true JP2010525420A (ja) 2010-07-22
JP4938092B2 JP4938092B2 (ja) 2012-05-23

Family

ID=40548955

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009545809A Active JP4938092B2 (ja) 2007-10-09 2008-05-16 エッジネットワークにおけるデータ配信方法、データ配信システム、および関連装置

Country Status (5)

Country Link
US (1) US8510415B2 (ja)
EP (1) EP2091202B1 (ja)
JP (1) JP4938092B2 (ja)
CN (1) CN101409706B (ja)
WO (1) WO2009046642A1 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409706B (zh) 2007-10-09 2011-11-23 华为技术有限公司 一种边缘网络中的数据分发方法、数据分发系统及相关设备
TW201021491A (en) * 2008-11-18 2010-06-01 Inventec Corp Download method under a server system and the system thereof
CN102035815B (zh) * 2009-09-29 2013-04-24 华为技术有限公司 数据获取方法、接入节点和系统
CN102170456A (zh) * 2010-02-27 2011-08-31 华为技术有限公司 对等网络中获取内容的方法、装置和系统
US20120078724A1 (en) * 2010-09-23 2012-03-29 Sony Corporation System and method for utilizing a morphing procedure in an information distribution network
WO2012061841A1 (en) * 2010-11-05 2012-05-10 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for stored content distribution and access
US8943216B2 (en) * 2011-02-24 2015-01-27 Saguna Networks Ltd. Methods, circuits, devices, systems and associated computer executable code for caching content
US8812609B2 (en) * 2011-06-06 2014-08-19 Jaguna Networks Ltd Methods, circuits, devices, systems and associated computer executable code for distributed content caching and delivery
US9383928B2 (en) * 2011-06-13 2016-07-05 Emc Corporation Replication techniques with content addressable storage
WO2013094837A1 (ko) * 2011-12-19 2013-06-27 주식회사 솔박스 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치
KR101383905B1 (ko) 2011-12-19 2014-04-17 주식회사 솔박스 해시 함수 결과를 이용한 서버 부하 분산 처리 방법 및 그 장치
KR20130086753A (ko) * 2012-01-26 2013-08-05 삼성전자주식회사 컨텐츠의 중복 여부를 확인할 수 있는 휴대용 단말기의 장치 및 방법
PL407778A1 (pl) 2012-02-17 2014-12-22 Tencent Technology (Shenzhen) Company Limited Sposób, terminal, serwer i system do pobierania danych
CN103457976B (zh) * 2012-06-01 2017-09-29 腾讯科技(深圳)有限公司 数据下载方法和系统
CN103259816B (zh) * 2012-02-17 2018-05-08 腾讯科技(深圳)有限公司 一种下载资源的方法、终端、服务器及系统
US9785937B2 (en) 2012-04-30 2017-10-10 Paul Wickliffe Computer enabled methods and systems for facilitating micropayments via public networks
EP3196781A1 (en) * 2012-05-04 2017-07-26 Huawei Technologies Co., Ltd. Method and apparatus for deleting duplicate data
CN103685337B (zh) * 2012-08-31 2018-03-27 腾讯科技(深圳)有限公司 共享文件的方法、终端设备及中转服务器
CN103269351A (zh) * 2012-12-07 2013-08-28 北京奇虎科技有限公司 一种文件下载方法和装置
CN103106105A (zh) * 2013-02-20 2013-05-15 东莞宇龙通信科技有限公司 网络设备任务处理方法和系统
US9270467B1 (en) * 2013-05-16 2016-02-23 Symantec Corporation Systems and methods for trust propagation of signed files across devices
CN104468483B (zh) * 2013-09-22 2019-01-22 腾讯科技(深圳)有限公司 数据传输方法及系统、控制装置与节点装置
CN104836822B (zh) * 2014-02-10 2019-04-26 腾讯科技(深圳)有限公司 获取下载数据方法及装置、下载数据的方法及系统
CN103885426B (zh) 2014-03-28 2018-07-10 百度在线网络技术(北京)有限公司 设备的控制方法、客户端、服务器、中间设备和被控设备
US9922201B2 (en) 2015-04-01 2018-03-20 Dropbox, Inc. Nested namespaces for selective content sharing
US9852147B2 (en) 2015-04-01 2017-12-26 Dropbox, Inc. Selective synchronization and distributed content item block caching for multi-premises hosting of digital content items
US10963430B2 (en) 2015-04-01 2021-03-30 Dropbox, Inc. Shared workspaces with selective content item synchronization
CN104822076A (zh) * 2015-04-14 2015-08-05 天脉聚源(北京)传媒科技有限公司 一种数据的分发方法及装置
CN109525603B (zh) * 2015-06-30 2021-08-31 北京奇虎科技有限公司 一种访问网络的方法、代理服务器及网络访问系统
CN105323310B (zh) * 2015-09-30 2018-11-09 深圳市先河系统技术有限公司 网络通信方法、设备及网络附属存储设备
CN105245916B (zh) * 2015-10-08 2018-05-15 北京时医康科技发展有限公司 一种高强度高效率视频加密解密方法
US9479567B1 (en) 2015-10-29 2016-10-25 Dropbox, Inc. Synchronization protocol for multi-premises hosting of digital content items
US10691718B2 (en) 2015-10-29 2020-06-23 Dropbox, Inc. Synchronization protocol for multi-premises hosting of digital content items
CN105407097B (zh) * 2015-11-26 2019-07-19 晶赞广告(上海)有限公司 基于第三方的数据供应方法及装置
US9537952B1 (en) * 2016-01-29 2017-01-03 Dropbox, Inc. Apparent cloud access for hosted content items
CN109150927B (zh) * 2017-06-15 2022-01-11 北京京东尚科信息技术有限公司 用于文件存储系统的文件下发方法和装置
CN109067882B (zh) * 2018-08-09 2021-01-29 Oppo广东移动通信有限公司 数据共享方法及相关产品
CN111324586B (zh) * 2018-12-14 2024-04-09 中移(杭州)信息技术有限公司 一种基于缓存的图片显示方法、装置、电子设备及介质
CN110213349A (zh) * 2019-05-17 2019-09-06 网宿科技股份有限公司 一种http调度方法及装置
US11290531B2 (en) 2019-12-04 2022-03-29 Dropbox, Inc. Immediate cloud content item creation from local file system interface
CN110830520B (zh) * 2020-01-13 2020-04-17 中国人民解放军国防科技大学 一种物联网的健壮可靠的边缘存储方法及系统
CN111263401A (zh) * 2020-01-15 2020-06-09 天津大学 一种基于移动边缘计算的多用户协作计算卸载方法
CN111629026A (zh) * 2020-04-07 2020-09-04 青岛奥利普自动化控制系统有限公司 一种基于mes的数据交互方法和设备
CN114124367B (zh) * 2020-08-31 2023-03-24 Oppo广东移动通信有限公司 一种数据传输方法、装置及存储介质
CN112671754B (zh) * 2020-12-21 2023-05-02 龙存(成都)科技有限公司 一种单流水线处理不同服务端功能的方法、系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765407A (en) * 1996-09-09 1998-06-16 Dasaver, Inc. Self-contained portable device for removing stains
JP2004252876A (ja) * 2003-02-21 2004-09-09 Fuji Xerox Co Ltd コンテンツのダウンロード状況を管理するサーバ装置
US20040225716A1 (en) * 2000-05-31 2004-11-11 Ilan Shamir Methods and systems for allowing a group of users to interactively tour a computer network
CN1710857A (zh) * 2004-06-18 2005-12-21 千橡寰宇科技发展(北京)有限公司 一种实现文件加速下载的系统及方法
JP2007034895A (ja) * 2005-07-29 2007-02-08 Toshiba Corp 情報管理装置、情報管理方法、及び情報管理システム
JP2007249514A (ja) * 2006-03-15 2007-09-27 Brother Ind Ltd 配信システム及び配信システム制御方法、蓄積装置及び蓄積装置用プログラム並びにノード装置及びノード装置用プログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7565407B1 (en) * 2000-12-22 2009-07-21 Nortel Networks Limited Network proxy apparatus and methods
US7356838B2 (en) * 2001-06-06 2008-04-08 Yahoo! Inc. System and method for controlling access to digital content, including streaming media
KR100433103B1 (ko) * 2001-07-24 2004-05-27 양기웅 이메일 플랫폼 제공장치 및 그 방법
US20030051052A1 (en) * 2001-09-13 2003-03-13 Koninklijke Philips Electronics N.V. Addressing scheme for wireless mobile clients
JP4281437B2 (ja) * 2003-07-10 2009-06-17 株式会社日立製作所 記録媒体及び再生装置
CN1291566C (zh) * 2004-12-10 2006-12-20 张德浩 基于ip网络数字媒体传送方法
WO2007005131A2 (en) * 2005-05-19 2007-01-11 Matsushita Electric Industrial Co., Ltd. System and method for multiprotocol service discovery in a computer network
US20070171827A1 (en) * 2006-01-24 2007-07-26 Scott Mark E Network flow analysis method and system
US20070204115A1 (en) * 2006-02-28 2007-08-30 Maven Networks, Inc. Systems and methods for storage shuffling techniques to download content to a file
CN100505696C (zh) * 2006-07-19 2009-06-24 华为技术有限公司 在媒体分发网络中实现视频直播的系统、方法和客户端
CN101409706B (zh) 2007-10-09 2011-11-23 华为技术有限公司 一种边缘网络中的数据分发方法、数据分发系统及相关设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5765407A (en) * 1996-09-09 1998-06-16 Dasaver, Inc. Self-contained portable device for removing stains
US20040225716A1 (en) * 2000-05-31 2004-11-11 Ilan Shamir Methods and systems for allowing a group of users to interactively tour a computer network
JP2004252876A (ja) * 2003-02-21 2004-09-09 Fuji Xerox Co Ltd コンテンツのダウンロード状況を管理するサーバ装置
CN1710857A (zh) * 2004-06-18 2005-12-21 千橡寰宇科技发展(北京)有限公司 一种实现文件加速下载的系统及方法
JP2007034895A (ja) * 2005-07-29 2007-02-08 Toshiba Corp 情報管理装置、情報管理方法、及び情報管理システム
JP2007249514A (ja) * 2006-03-15 2007-09-27 Brother Ind Ltd 配信システム及び配信システム制御方法、蓄積装置及び蓄積装置用プログラム並びにノード装置及びノード装置用プログラム

Also Published As

Publication number Publication date
CN101409706B (zh) 2011-11-23
CN101409706A (zh) 2009-04-15
EP2091202B1 (en) 2012-11-21
EP2091202A1 (en) 2009-08-19
US20090271502A1 (en) 2009-10-29
EP2091202A4 (en) 2010-06-09
JP4938092B2 (ja) 2012-05-23
WO2009046642A1 (fr) 2009-04-16
US8510415B2 (en) 2013-08-13

Similar Documents

Publication Publication Date Title
JP4938092B2 (ja) エッジネットワークにおけるデータ配信方法、データ配信システム、および関連装置
US11194719B2 (en) Cache optimization
US11758013B2 (en) Methods and systems for caching data communications over computer networks
US9160703B2 (en) Request routing management based on network components
US20180205697A1 (en) Managing content delivery network service providers by a content broker
US8156243B2 (en) Request routing
TWI535255B (zh) 一種發送業務請求訊息的方法及裝置
US20060265465A1 (en) Method, apparatus and system for processing message bundles on a network
US20110099226A1 (en) Method of requesting for location information of resources on network, user node and server for the same
KR20140009931A (ko) 컨텐츠 이름 기반의 컨텐츠 중심 네트워크에서 컨텐츠 및 실시간 스트리밍 컨텐츠 제공을 위한 컨텐츠 요청자 및 컨텐츠 제공자의 통신 방법
WO2011085625A1 (zh) 一种软件安装包下载方法、系统及客户端
JP2012517629A (ja) トレントコンテンツメタデータを再構成する方法およびデバイス
CN108881034B (zh) 一种应用于bt系统的请求响应方法、设备及系统
JP2018536356A (ja) 情報指向ネットワークにおいてコンテキスト認識型コンテンツ要求をサポートするためのシステムおよび方法
JP2017500679A (ja) メディアリソースフィードバック方法、装置、プログラム及び記録媒体
WO2012034414A1 (zh) 一种处理p2p业务的方法及系统
CN103685367A (zh) 离线下载系统和方法
KR101145608B1 (ko) 네트워크의 토렌트 트래픽 선별 차단 방법
CN115567591A (zh) 内容资源分发方法、内容分发网络、集群及介质
JP2008293281A (ja) キャッシュ装置、サーバ、キャッシュシステム、キャッシュ方法、及びプログラム
JPWO2022213486A5 (ja)
JP2011141608A (ja) P2p通信のコンテンツ制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110628

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20110926

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111003

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111028

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111107

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111128

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111228

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: 20120214

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: 20120222

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

Free format text: PAYMENT UNTIL: 20150302

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4938092

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