JP5416135B2 - フィンガープリント技術の実現方法、装置、及びシステム - Google Patents

フィンガープリント技術の実現方法、装置、及びシステム Download PDF

Info

Publication number
JP5416135B2
JP5416135B2 JP2010543362A JP2010543362A JP5416135B2 JP 5416135 B2 JP5416135 B2 JP 5416135B2 JP 2010543362 A JP2010543362 A JP 2010543362A JP 2010543362 A JP2010543362 A JP 2010543362A JP 5416135 B2 JP5416135 B2 JP 5416135B2
Authority
JP
Japan
Prior art keywords
data
fingerprint
length
data element
item
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
JP2010543362A
Other languages
English (en)
Other versions
JP2011510572A (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 JP2011510572A publication Critical patent/JP2011510572A/ja
Application granted granted Critical
Publication of JP5416135B2 publication Critical patent/JP5416135B2/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/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2255Hash tables
    • 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/24Negotiation of communication capabilities

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Collating Specific Patterns (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本願は、2008年12月30日出願の国際出願PCT/CN2008/073851号の継続出願であり、2008年1月24日に出願された中国特許出願第200810026009.4号の優先権を主張する。両者の開示全体が参照により本明細書中に取り込まれるものとする。
本発明はデータ同期(DS)技術に関し、より具体的には、フィンガープリント技術の実現方法及びシステム、データ送信装置、及びデータ受信装置に関する。
現代社会は情報社会である。ユーザはいつでも、どこでも情報の受信、送信をすることができ、又、携帯端末でアプリケーション・プログラムを実行することも可能である。データのやり取りや、アプリケーション・プログラムの結果は携帯端末中に格納されることが必要であり、また他のデータ装置とデータの型が一致することが必要である。1つの装置のデータが変化すると、他の装置のデータもそれに応じて変化し得る。これはデータ同期(DS)と呼ばれる。
DS技術はフィンガープリントと呼ばれる方法を利用する。これはあるアルゴリズムを通して処理される一連のデータから得られる値である。データの任意の変化は異なるフィンガープリントとなって現れ、その結果、フィンガープリントによりデータを効果的に識別することができる。データ要素からデータベースまでの任意のデータに基づいて、対応するフィンガープリントを生成することができる。サーバはフィンガープリントを利用して、端末から受信したデータがサーバに格納されているデータと同じかどうかを判定する。サーバ上であれ、端末上であれ、データが変化すると、フィンガープリントは変わる。受信したフィンガープリントが格納されているフィンガープリントと同一であれば、それはサーバ及び端末上のデータが同一であることを示しており、端末はデータを送信する必要がない。フィンガープリントが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、端末はこの場合もデータを送信する必要がない。このようにして、フィンガープリントを比較することにより、不要なデータ送信を防ぐことができ、その結果トラフィックが節約される。更に、フィンガープリントはレジューム可能なダウンロードに利用されてもよい。
様々なアルゴリズムがフィンガープリント用に採用される。交信する双方のパーティが同一のアルゴリズムを使用するために、アルゴリズムのネゴシエーションが必要である。片方のパーティがサポートされた一連のアルゴリズムを相手方のパーティに送信し、相手方のパーティはサポートされるフィンガープリントアルゴリズムを見つけて相方に通知する。こうしてアルゴリズムネゴシエーションが完了する。現在利用されている同期のフローは図1に示す通りである。
1)フィンガープリントの使用方式に関するネゴシエーションがPKG1とPKG2に加えられる。
2)データのIDとフィンガープリントがPKG3で送信される。
3)PKG3を受信した後、サーバがフィンガープリントを比較し、クライアントがPKG4を介して送信する必要のあるデータ要素の識別を示す。
4)PKG4を受信した後、クライアントはサーバの指示に従って、要求されたデータ要素をPKG5で送信する。
5)PKG5を受信した後、サーバは受信状態に関する情報をPKG6で戻す。そして、自由選択によりサーバ上で変更されたデータを送信する。
本発明の実装において、発明者らは既存のフィンガープリント技術に以下のような欠点があることを見出した。
フィンガープリントは長いデータ要素を短いフィンガープリントで置き換え、その結果として伝送されるデータ量を減少させるように構成されている。しかしながら、比較をしてみると、アルゴリズムによっては、得られたフィンガープリントが対応するデータより長いものがある。この場合、フィンガープリントを計算し送信することは無意味である。フィンガープリントが計算されて送信される場合には、装置(とくにクライアントの装置)での計算量が増大する。更には、データ項目のあるものに対してはクライアントとサーバとの間で余計な相互作用が生じ、エアインタフェースリソースの浪費となってしまう。現在のところ、この欠点を克服する技術は提案されていない。
本発明は、フィンガープリント技術の実現方法及びシステム、データ送信装置、及びデータ受信装置を対象とし、長さの短いデータ項目に対するフィンガープリント計算と、DS時の不要のデータ伝送を避けるためのものである。従って、DS効率が改善される。
1つの実施形態において、本発明はフィンガープリント技術の実現方法を提供する。それは以下のステップを含む。
データ要素の長さが最小長さより大きいか等しいことが判定される。
データ要素の長さが最小長さより大きいか等しい場合には、データ要素に対してフィンガープリント計算が実行され、得られたフィンガープリントはデータ受信側に送信される。あるいはデータ項目の長さが最小長さより小さい場合には、データ要素がデータ受信側へ送信される。
1つの実施形態において、本発明は更にフィンガープリント技術の実現方法を提供する。それは以下のステップを含む。
データ項目がデータ送信側から受信される。
そのデータ項目がフィンガープリントであるかデータ要素であるかが、既定規則に基づいて判定される。データ項目がフィンガープリントであれば、そのフィンガープリントが格納されているフィンガープリントと比較され、比較結果に従って後続のプロセスが実装される。データ項目がデータ要素であれば、そのデータ要素が格納されているデータ要素と比較されて、比較結果に従って後続のプロセスが実装される。
1つの実施形態において本発明は更にデータ送信装置を提供する。そこには、判定モジュール、フィンガープリント計算モジュール及びデータ送信モジュールが含まれる。
判定モジュールは、データ要素の長さが既定の最小長さより大きいか等しいことを判定するように構成されている。
フィンガープリント計算モジュールは、データ要素の長さが既定の最小長さより大きいか等しいことを判定モジュールが判定すると、データ要素に応じて対応するフィンガープリントを生成するように構成されている。
データ送信モジュールは、フィンガープリント計算モジュールにより生成されたフィンガープリントをデータ受信装置に送信するか、又は判定モジュールが、データ要素の長さが既定の最小長さより小さいと判定した場合には、データ要素をデータ受信装置へ送信するように構成されている。
従って、実施形態において本発明は更にデータ受信装置を提供し、そこにはデータ格納モジュールと、データ受信モジュールと、データ判定モジュールと、データ処理モジュールとが含まれる。
データ格納モジュールは、データ又はフィンガープリントを格納するように構成される
データ受信モジュールは、データ送信装置により送信されたデータ項目を受信するように構成されている。
データ判定モジュールは、データ受信モジュールにより受信されたデータ項目が、フィンガープリントであるかデータ要素であるかを既定の規則に基づいて判定するように構成されている。
データ処理モジュールは、受信データ項目がフィンガープリントであるとデータ判定モジュールが判定した場合には、受信したフィンガープリントを格納されたフィンガープリントと比較し、比較結果に従って後続処理を実装するように構成され、又は、受信データ項目がデータ要素であるとデータ判定モジュールが判定した場合には、受信したデータ要素を格納されたデータ要素と比較し、比較結果に従って後続処理を実装するように構成されている。
ある実施形態では本発明は更に、フィンガープリント技術を実現するシステムを提供し、そこにはデータ送信装置とデータ受信装置とが含まれる。
データ送信装置はデータ要素の長さが最小長さより大きいか等しいことを判定するように構成されており、データ要素の長さが最小長さより大きいか等しい場合には、データ要素に対してフィンガープリント計算が実行され、得られたフィンガープリントはデータ受信装置へ送信される。あるいは、データ項目の長さが最小長さより小さい場合には、データ要素がデータ受信装置へ送信される。
データ受信装置は、データ送信装置からデータ項目を受信し、そのデータ項目がフィンガープリントであるかデータ要素であるかを既定の規則に基づいて判定するように構成されている。データ項目がフィンガープリントであれば、そのフィンガープリントが、格納されているフィンガープリントと比較され、比較結果に従って後続プロセスが実装される。データ項目がデータ要素であれば、そのデータ要素が、格納されているデータ要素と比較されて、比較結果に従って後続プロセスが実装される。
本発明の実施形態は、以下のような有益な効果を持つ。
フィンガープリント計算を必要とするデータに対する最小長さを事前に設定することにより、そのデータ項目に対してフィンガープリントを生成することが必要かどうかが判定され、それに応じて、フィンガープリントとデータ項目のいずれを送信すべきかが判定される。このように、長さの短いデータ項目に対するフィンガープリント計算と、DS時の不要データ伝送とが回避され、従って、DSの効率が改善される。
本発明における技術ソリューションを明確にするために、本発明の実施形態又は従来技術を説明する添付の図面の概略を以下に述べる。明らかに、添付の図面は例示を目的とするものであり、当業者であれば、なんらの創造的努力なしに、これらの添付図面から他の図面を派生させることができるであろう。
従来技術におけるフィンガープリント技術実現の模式的フローチャートである。 本発明の実施形態による、フィンガープリント技術実現の模式的フローチャートである。 本発明の実施形態による、フィンガープリント技術実現システムの模式的構造図である。 本発明の実施形態による、データ送信装置の模式的構造図である。 本発明の実施形態による、データ受信装置の模式的構造図である。 図5に示すデータ受信装置内のデータ処理モジュールの模式的構造図である。
以下の詳細な説明は、添付の図面を参照した本発明の技術ソリューションを対象としている。しかし、説明する実施形態は、本発明の実施形態のいくつかに過ぎない。当業者であれば本明細書に記載の実施形態から創造的努力なしに他の実施形態を派生させることは可能である。そのような実施形態はすべて本発明の保護範囲に含まれる。
実施形態において本発明は、長さの短いデータ項目に対するフィンガープリント計算と、DS時における不要のデータ伝送とを避け、DSの効率を改善するための、フィンガープリント技術の実現方法及びシステム、データ送信装置、及びデータ受信装置を提供する。
図2は本発明による、フィンガープリント技術実現のための第1の実施形態の模式的フローチャートである。
本発明の実施形態においては、クライアント及びサーバを通信の両当事者として記述する。即ち、クライアントはデータ送信側であり、サーバはデータ受信側である。
まず最初に、最小長さの値がクライアント上に前以って設定され、識別FPLimitにより示される。FPLimitは整数のデータであり、データ項目の長さがFPLimitで特定される長さより長いか等しい場合にのみ、データ項目に対するフィンガープリント計算が実行されることを示す。FPLimitが存在しない場合には、すべてのデータ項目に対してフィンガープリント計算が実行される。識別情報は、装置に関係するDevice Info内に格納され、スキーマは次のようになる。
<xs:element name=”FPLimit” type=”xs:int”minOccurs=”0”/>
識別情報はDS MOにも格納されてもよい。この場合、DS MOに新たに付加される木構造は以下のようである。
Figure 0005416135
フィンガープリント計算を必要とするデータ項目の最小長さはFPLimit内に記録されている。
<x>/FP
Figure 0005416135

<x>/FPは中間ノードであり、DSクライアントのフィンガープリント関連情報を記録する。
<x>/FP/FPLimit
Figure 0005416135

ノード、<x>/FP/FPLimit、は、DS処理時にフィンガープリント計算を必要とするデータ項目の最小長さを定義する。
ステップ100で、クライアントがPKG1をサーバへ送信する。PKG1は初期パッケージであり、同期方向、同期挙動、ID妥当性、ChangeLog妥当性、等の同期ネゴシエーションパラメータに関する情報を伝送する。これらは同業者には周知の事柄であり、詳細は本明細書では述べない。本発明のこの実施形態においては、クライアントからサーバへ送信されたPKG1は更にFPLimitも含む。
ステップ101で、サーバがPKG1を受信し、FPLimitを格納する。既定の規則に基づいて判定した後、サーバは、同意された、あるいは変更された、同期方向、同期挙動、ID妥当性、ChangeLog妥当性、等を含む同期パラメータを返信し、クライアントにデータ項目を送信するように指示する。
ステップ102で、サーバの指示と既定のデータ最小長さとに従って、クライアントは送信されるデータ項目の長さが既定の最小長さより大きいか又は等しいか、を判定する。送信されるデータ項目の長さが既定の最小長さより大きいか又は等しい場合には、データ項目に応じて対応するフィンガープリントが生成され、即ち、そのデータ項目に対してフィンガープリント計算が実行され、得られた既定のフィンガープリント長さを有するフィンガープリントがサーバへ送信される。送信されるデータ項目の長さが、既定の最小長さより短い場合には、データ要素(即ち、データ項目)がサーバへ送信される。データ項目の長さが既定のフィンガープリント長さに等しい場合には、そのデータ項目にいくつかの0を追加して、長さが既定の最小長さに等しくなるようにしてから、データ項目をサーバへ送信する。
サーバがクライアントからデータ項目を受信した後、受信したデータ項目が既定のフィンガープリント長さより短いか、既定のフィンガープリント長さより長いが既定の最小長さよりは短い場合、それはデータ項目、即ちデータ要素であることが直接判定され、サーバに格納されているデータと直接比較される。データ長さが既定のフィンガープリント長さである場合には、データ項目はフィンガープリントと比較される。データ長さが既定の最小長さである場合には、データ項目は既定のフィンガープリント長さにまで切り詰められて、サーバに格納されているデータと直接比較される。
データ要素であると判定されたデータ項目は、サーバに格納されたデータ項目と比較される。2つのデータ項目が同一である場合は、サーバのデータとクライアントのデータとは同一であり、クライアントはデータを送信する必要がない。2つのデータが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、サーバはこの場合もデータを更新する必要がない。戦略がクライアント上のデータに基づいていれば、サーバはクライアントから送信されたデータ項目に応じて、格納されたデータを更新する。
フィンガープリントであると判定されたデータ項目は、サーバのフィンガープリントと比較されて、後続処理が実装される。2つのデータ項目が同一である場合は、サーバのデータとクライアントのデータとは同一であり、端末はデータを送信する必要がない。2つのデータが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、クライアントはこの場合もデータを送信する必要がない。
戦略がクライアントのデータに基づいていれば、ステップ103において、サーバがクライアントにデータ項目を送信するように指示する。このようにして、フィンガープリントを比較することにより、不要なデータ送信が回避され、その結果トラフィックが節約される。
任意選択で、クライアントからサーバに送信されたデータ項目に、識別FPFlagが追加されてもよい。FPFlagは整数のデータである。FPFlag=0であれば、データ項目が送信予定であることが示される。FPFlag≠0であれば、データ項目のフィンガープリントが送信予定であることが示される。FPFlagの様々な値で、様々なフィンガープリントアルゴリズムが識別されるようになっている。
クライアントとサーバの双方でサポートされるフィンガープリントアルゴリズムのセットは、ネゴシエーションを通して事前に決定されてもよいことに留意されたい。この場合、DS MOに新たに付加される構造は次のとおりである。
Figure 0005416135
<x>/FP/<x>
Figure 0005416135

<x>/FP/<x>は中間ノードであり、DSクライアントによりサポートされる1つまたは複数のフィンガープリントアルゴリズムを記録する。
<x>/FP/<x>/Algorithm
Figure 0005416135

<x>/FP/<x>/アルゴリズムは葉ノードであり、DSクライアントによりサポートされるフィンガープリントを記録する。以下に番号の定義を示す。
Figure 0005416135
当然ながら、情報はDevice Infoに格納されてもよい。フィンガープリント生成アルゴリズムのスキーマは以下の通りである。
<xs:element name=”FPAlgorithm” type=”xs:integer”/>
値はフィンガープリントアルゴリズムのタイプを示すようになっており、値の定義は上記の表と同じである。
DS時においてクライアントとサーバは、サポートされたフィンガープリントアルゴリズムのセットの中から、両者でサポートされるフィンガープリントアルゴリズムのサブセットを選択することに留意されたい。クライアント上でデータ項目に対してフィンガープリント計算が必要とされる場合、計算実行のためのフィンガープリント計算アルゴリズムがサブセットから選択され、FPFlagにより識別される。得られたフィンガープリントはサーバに送信される。
クライアントからデータ項目を受信した後、サーバは、データ項目の識別FPFlagに従って、データ項目がフィンガープリントであるかデータ項目であるかを判定する。サーバがデータ項目を受信した場合は、そのデータ項目は格納されたデータ項目と比較され、比較結果に従って後続の処理が実装される。2つのデータ項目が同一である場合は、サーバのデータとクライアントのデータとは同一であり、サーバはデータを更新する必要がない。2つのデータが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、サーバはこの場合もデータを更新する必要がない。戦略がクライアント上のデータに基づいていれば、サーバはクライアントから送信されたデータ項目に応じて、格納されたデータを更新する。
サーバがフィンガープリントを受信する場合、サーバは受信したフィンガープリントと格納されているフィンガープリントとを比較し、比較結果に従って後続プロセスが実装される。2つのフィンガープリントが同一である場合は、サーバのデータとクライアントのデータとは同一であることを示しており、端末はデータを送信する必要がない。フィンガープリントが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、クライアントはこの場合もデータを送信する必要がない。
戦略がクライアント上のデータに基づいている場合、ステップ103において、サーバはクライアントが送信しなければならないデータ要素の識別情報を示す。
ステップ104において、サーバにより指示されたデータ要素をクライアントが送信する。
ステップ105において、サーバは受信状態に関する情報をクライアントへ返し、任意選択で変更されたデータを返す。
ステップ106において、クライアントはデータ受信状態をクライアントに返し、マッピング命令をサーバに送信する。
ステップ107において、サーバはマッピング命令に対する状態情報をクライアントへ返す。ステップ108において、クライアントはDS結果をユーザへ返す。
本発明の実施形態で提供されるフィンガープリント技術の実現方法においては、フィンガープリント計算を必要とするデータの最小長さを事前に設定することにより、データ項目に対し対応するフィンガープリントの生成が必要かどうかが判定され、それによってフィンガープリントを送信するかデータ項目を送信するかが判定される。更に、個々のデータ項目について識別情報が設定されて、送信したのはフィンガープリントであるかデータ項目であるかを受信側に通知し、かつ利用したフィンガープリントアルゴリズムを受信側に通知する。このように、長さの短いデータ項目に対するフィンガープリント計算と、DS時の不要データ伝送とが回避され、DSの効率が改善される。
図2は本発明によるフィンガープリント技術実現のための第2の実施形態の模式的フローチャートである。
図2に示すように、表8のデータはクライアント上の送信を必要とするデータであり、フィンガープリントアルゴリズムの後のフィンガープリントの長さは8バイトであり、かつFPLimitは20バイトに設定されるものとする。表8の第3列はフィンガープリントであり、フィンガープリント計算は、FPLimit(20バイト)より長いか等しいデータ項目に対してのみ実行されることに留意されたい。データ項目が8バイトの場合、データが20バイトになるまでゼロを追加することにも留意されたい。サーバが20バイトのデータを見つけると、データをそのまま切り捨てて8バイトとし、データ要素として処理する。
Figure 0005416135
ステップ100において、クライアントがPKG1をサーバへ送信する。PKG1は初期パッケージであり、同期方向、同期挙動、ID妥当性、ChangeLog妥当性、等の同期ネゴシエーションパラメータに関する情報を伝送する。これらは同業者には周知の事柄であり、詳細は本明細書では述べない。本発明のこの実施形態においては、クライアントからサーバへ送信されたPKG1は更にFPLimitも含む。
Pkg#1:
<FPLimit>20</FPLimit>
ステップ101において、サーバがPKG1を受信し、FPLimitを格納する。既定の規則に基づいて判定した後に、サーバは合意された、又は変更された同期パラメータを返す。
ステップ102においてクライアントはPKG3を送信し、表8に従って、フィンガープリントがある場合にはIDとフィンガープリントとを送信し、フィンガープリントがない場合にはIDとデータ項目とを送信する。
サーバがPKG3を受信した後、受信したデータ項目の長さが、フィンガープリントの長さ(8バイト)より短いか、8バイトより長いが20バイトよりは短い場合には、それがデータ項目であることを直接に判定することが可能であり、サーバに格納されているデータ項目と直接比較される。データ長が8バイトの場合、データ項目はサーバに格納されているフィンガープリントと比較される。長さが20バイトの場合は、データ項目は8バイトに切り捨てられ、サーバに格納されているデータ項目と直接比較される。
データ項目1012と1014はデータ項目として判定され、サーバに格納されたデータ項目と比較される。2つのデータ項目が異なり、かつ衝突戦略においてクライアントが優先される場合、後続の処理が直ちに実行され、サーバは、クライアントにこの2つのデータ項目をPKG4を介して送信するように通知する必要がない。
20バイト長のデータ項目1017に関しては、データ項目1017が切り捨てられて8バイトとされ、データ項目と比較されて、その後で後続処理が実装される。2つのデータ項目が同一である場合は、サーバのデータとクライアントのデータとは同一であることを示しており、サーバはデータを更新する必要がない。データ項目が異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、サーバはこの場合もデータを更新する必要がない。戦略がクライアント上のデータに基づいていれば、サーバはクライアントから送信されたデータ項目に応じて、格納されたデータを更新する。
データ項目1013と1015に関しては、データ項目のデータ長が8バイトであるから、データ項目はサーバにあるフィンガープリントと比較され、後続処理が実装される。フィンガープリントが同一である場合は、サーバのデータとクライアントのデータは同一であることを示しており、端末はデータを送信する必要がない。フィンガープリントが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、クライアントはこの場合もデータを送信する必要がない。
戦略がクライアントのデータに基づいていれば、ステップ103において、サーバがクライアントにデータ項目を送信するように指示する。このようにして、フィンガープリントを比較することにより、不要なデータ送信が回避され、その結果トラフィックが節約される。
これ以降のステップは第1の実施形態の場合と同一であり、同業者にはこれも周知である。従ってここでは詳細を述べない。
図2は本発明による、フィンガープリント技術実現のための第3の実施形態の模式的構造図である。
表9のデータはクライアントに送信されるべきものとする。表9の第3列は識別FPFlagであり、列中の値は装置によって設定される。「0」はデータ項目を示し、他の値はフィンガープリントが送信されることを表し、異なるフィンガープリントアルゴリズムを示す。表10は、ネゴシエーションを通してクライアントとサーバによってサポートされるフィンガープリントアルゴリズムのセットを示す。
Figure 0005416135

Figure 0005416135
ステップ100において、クライアントがPKG1をサーバへ送信する。PKG1は初期パッケージであり、同期方向、同期挙動、ID妥当性、ChangeLog妥当性、等の同期ネゴシエーションパラメータに関する情報を伝送する。これらは同業者には周知の事柄であり、詳細はここでは述べない。
Pkg#1:
<FPLimit>20</FPLimit>
ステップ101において、既定の規則に基づいて判定した後に、サーバは合意された、又は変更された同期パラメータを返す。
ステップ102において、クライアントはPKG3を送信する。これはデータ項目を含む。表9によれば、FPFlag≠0であればデータ項目に対してフィンガープリント計算が実行され、IDとフィンガープリントが送信される。FPFlag=0であれば、IDとデータ項目が送信される。FPFlagの値は、データ項目の長さが既定の最小長さより大きいか又は等しいかどうかによって判定されるということに留意されたい。
PKG3を受信した後、サーバは、1012、1024、1017がFPFlagの値に従ってデータ項目を受信するように判定する。データ項目をサーバ上に格納されているものと比較して、2つのデータ項目が異なり、かつ衝突戦略においてクライアントが優先される場合、後続の処理が直ちに実行され、サーバは、クライアントにデータ項目をPKG4を通して送信するように通知する必要がない。
1013と1015がフィンガープリントを受信する。ここで、1013はChange Logアルゴリズムを介して取得したフィンガープリントを受信し、1015はHashアルゴリズムを介して取得してフィンガープリントを受信する。従って、フィンガープリントはサーバに格納されているものと比較されて、後続処理が実行される。2つのフィンガープリントが同一である場合は、サーバのデータとクライアントのデータとは同一であることを示しており、端末はデータを送信する必要がない。2つのフィンガープリントが異なっている場合には、データが変更されたことを示している。この時は、衝突検知戦略がチェックされ、戦略がサーバ上のデータに基づいていれば、クライアントはこの場合もデータを送信する必要がない。
戦略がクライアントのデータに基づいていれば、ステップ103において、サーバがクライアントにデータ項目を送信するように指示する。このようにして、フィンガープリントを比較することにより、不要なデータ送信が回避され、その結果トラフィックが節約される。
これ以降のステップは第1の実施形態の場合と同一であり、同業者にはこれも周知である。従ってここでは詳細を述べない。
図3は本発明の実施形態による、フィンガープリント技術実現システムの模式的構造図である。
図3に示すように、このシステムはデータ送信装置1とデータ受信装置2とを含む。
データ送信装置1は、データ項目に応じて対応するフィンガープリントを生成する必要があるか否かを既定の規則に基づいて判定するように構成されている。データ項目に応じて対応するフィンガープリントを生成する必要があると判定されると、そのデータ項目に対してフィンガープリント計算が実行され、得られたフィンガープリントがデータ受信装置2へ送信される。対応するフィンガープリントを生成することが不要であると判定されると、データ要素がデータ受信装置2へ送信される。
特に、データ送信装置1は、判定モジュール10とフィンガープリント計算モジュール11とデータ送信モジュール12とを含む。その構造と機能については図4を用いて以下で詳細に説明する。
データ受信装置2は、データ送信装置1からデータ項目を受信し、そのデータ項目がフィンガープリントであるかデータ要素であるかを既定の規則に基づいて判定するように構成されている。データ項目がフィンガープリントであれば、そのフィンガープリントが格納されているフィンガープリントと比較され、比較結果に従って後続プロセスが実装される。データ項目がデータ要素であれば、そのデータ要素が格納されているデータ要素と比較されて、比較結果に従って後続プロセスが実装される。
特に、データ受信装置2は、データ格納モジュール20とデータ受信モジュール21とデータ判定モジュール22とデータ処理モジュール23とを含む。その構造と機能については図5を用いて以下で詳細に説明する。
図4は本発明の実施形態による、データ送信装置の模式的構造図である。
本発明の実施形態では、クライアントをデータ送信装置として説明する。
図4に示すようにクライアントは、判定モジュール10とフィンガープリント計算モジュール11とデータ送信モジュール12とを含む。
判定モジュール10は、送信されたデータ項目の長さが既定の最小長さより大きいか等しいことを判定するように構成されている。サーバ上の既定の最小長さは識別FPLimitで指示されていることに留意されたい。FPLimitは整数のデータであり、データ項目の長さがFPLimitで特定される長さより長いか等しい場合にのみ、データ項目に応じて対応するフィンガープリントが生成されることを示す。
フィンガープリント計算モジュール11は、データ項目に応じて対応するフィンガープリントを生成するように構成されている。即ち、データ項目の長さが既定の最小長さより大きいか等しいことを判定モジュールが判定すると、データ項目に対してフィンガープリント計算を実行するように構成されている。クライアントとサーバとによってサポートされるフィンガープリントアルゴリズムのセットは、ネゴシエーションを通して決定される。DS時においてクライアントとサーバは、サポートされたフィンガープリントアルゴリズムのセットの中から、両者でサポートされるフィンガープリントアルゴリズムのサブセットを選択する。データ項目に対するフィンガープリント計算が必要な場合には、サブセットの中からフィンガープリントアルゴリズムが選択されてフィンガープリント計算が実行され、得られたフィンガープリントがサーバに送信される。
データ送信モジュール12は、フィンガープリント計算モジュール11で生成されたフィンガープリントをデータ受信装置へ送信するか、又は、データ項目の長さが既定の最小長さよりも小さいと判定モジュール10が判定した場合にはデータ項目(即ちデータ要素)をデータ受信装置へ送信するように構成されている。データ項目の長さが既定のフィンガープリント長さに等しい場合には、そのデータ項目にいくつかの0を追加して、長さが既定の最小長さFPLimitに等しくなるようにしてから、データ項目をデータ受信装置へ送信する。ここで、データ受信装置とはサーバである。
任意選択により、データ送信装置(即ちクライアント1)は、データ送信モジュール12によりデータ受信装置へ送信されるデータ項目に識別FPFlagを追加するように構成された識別モジュール13を更に含む。識別FPFlagは、データ項目がフィンガープリント計算により得られたフィンガープリントであるか、データ項目であるかを示す。
フィンガープリント計算モジュール11は、アルゴリズムネゴシエーションユニット110と、アルゴリズム選択ユニット111と、フィンガープリント計算ユニット112とを含む。
アルゴリズムネゴシエーションユニット110は、両者でサポートされるフィンガープリントアルゴリズムのセットに関してデータ受信装置とネゴシエートするように構成されている。クライアントとサーバとのネゴシエーションの結果、両者でサポートされるフィンガープリントアルゴリズムのセットは、表10に示されている。
アルゴリズム選択ユニット111は、データ項目に対してフィンガープリント計算の実行が必要な場合に、データ項目を計算するために、両者でサポートされるフィンガープリントアルゴリズムのセットから1つのフィンガープリントアルゴリズムを選択するように構成されている。
フィンガープリント計算ユニット112は、アルゴリズム選択ユニット111により選択されたアルゴリズムを用いてフィンガープリント生成を必要とするデータ項目に対するフィンガープリント計算を実行するように構成されている。フィンガープリント計算が実行される際のデータ項目のアルゴリズム型は識別情報により示される。
図5は本発明の実施形態による、データ受信装置の模式的構造図である。
本発明の実施形態では、サーバをデータ受信装置として説明する。
図5に示すように、サーバは、データ格納モジュール20と、データ受信モジュール21と、データ判定モジュール22と、データ処理モジュール23とを含んでいる。
データ格納モジュール20は、データ又はフィンガープリントを格納するように構成されている。そこで、データ又はフィンガープリントは、受信されたデータ要素又はフィンガープリントと比較されて、受信されたデータ要素又はフィンガープリントに変更があるかどうかが判定される。
データ受信モジュール21は、データ送信装置(即ち、クライアント)から送信されたデータ項目を受信するように構成されている。
データ判定モジュール22は、データ受信モジュール21により受信されたデータ項目が、フィンガープリントであるかデータ項目であるかを判定するように構成されている。受信したデータ項目の長さが既定のフィンガープリント長さより短いか、または既定のフィンガープリント長さより長いが既定の最小長さよりは短い場合に、それがデータ項目、即ちデータ要素であることを直に判定することができる。データ長さが既定のフィンガープリント長さである場合、データ項目はフィンガープリントであると判定される。データ長さが既定の最小長さである場合、データ項目はデータ要素(即ちデータ項目)であると判定されて、データ項目は既定のフィンガープリント長さまで切り捨てられ、データ格納モジュール20内に格納されているデータと直に比較される。
クライアントとサーバの双方でサポートされるフィンガープリントアルゴリズムのセットは、ネゴシエーションを通して決定されてもよいことに留意されたい。クライアントとサーバは、サポートされたフィンガープリントアルゴリズムのセットの中から、両者でサポートされるフィンガープリントアルゴリズムのサブセットを選択する。データ項目に対してフィンガープリント計算が必要とされる場合、計算実行のためフィンガープリント計算アルゴリズムがサブセットから選択され、任意選択でFPFlagにより識別される。得られたフィンガープリントはサーバに送信される。FPFlagは整数のデータである。FPFlag=0であれば、データ項目が送信予定であることが示される。FPFlag≠0であれば、データ項目のフィンガープリントが送信予定であることが示される。FPFlagの様々な値で、様々なフィンガープリントアルゴリズムが識別されるようになっている。
データ処理モジュール23は、受信したデータ項目がフィンガープリントであるとデータ判定モジュール22が判定すると、そのフィンガープリントを格納されたフィンガープリントと比較するように構成され、比較結果に従って、後続処理が実装される。データ項目がデータ要素であれば、データ要素は、データ格納モジュール20に格納されているデータと比較される。データ項目の長さが最小の現在の長さである場合には、データ長さは切り詰められて既定のフィンガープリント長さとされて、データ格納モジュール20の中に格納されたデータと直に比較され、比較結果に従って後続処理が実装される。
図6は、図5に示すデータ受信装置2内のデータ処理モジュール23の模式的構造図である。図6に示すように、データ処理モジュール23は、フィンガープリント処理ユニット230とデータ処理ユニット231とを含んでいる。
フィンガープリント処理ユニット230は、データ受信モジュール21により受信されたデータ項目がフィンガープリントであるとデータ判定モジュール22によって判定された場合、フィンガープリントをデータ格納モジュール20内に格納されたものと比較し、その比較結果に従って後続処理を実装するように構成されている。
データ処理ユニット231は、データ受信モジュール21により受信されたデータ項目がデータ要素(即ちデータ項目)であるとデータ判定モジュール22によって判定された場合、データ項目をデータ格納モジュール20内に格納されたデータと比較し、その比較結果に従って後続処理を実装するように構成されている
フィンガープリント処理ユニット230は、フィンガープリント比較サブユニット2300を含む。
フィンガープリント比較サブユニット2300は、受信されたデータ項目がフィンガープリントであるとデータ判定モジュール22によって判定された場合、フィンガープリントを格納されたフィンガープリントと比較するように構成されている。2つのフィンガープリントが同一であれば、データ格納モジュール20中に格納されたデータは更新する必要がない。2つのフィンガープリントが異なる場合には、データ送信装置のデータ項目は変更されたことを示している。
フィンガープリント処理ユニット230は、衝突検知戦略を検査し、データ送信装置がデータ項目を送信する必要があるかどうかを判定するように構成された、判定サブユニット2301を更に含んでいる。衝突検知戦略がデータ受信装置上のデータに基づいている場合には、データ送信装置はデータ項目を送信する必要がない。衝突検知戦略がデータ送信装置上のデータに基づいている場合には、フィンガープリント処理ユニット230が、指示サブユニット2302とデータ更新サブユニット2303とを更に含んでいる。
指示サブユニット2302は、データ送信装置にデータ要素の送信を指示するように構成されている。
データ更新サブユニット2303は、データ格納ユニット20内に格納されたデータを受信したデータ要素に更新するように構成されている。
データ処理ユニット231は、データ比較サブユニット2310を含む。
データ比較サブユニット2310は、受信されたデータ項目がデータ要素であるとデータ判定モジュール22によって判定された場合、データ要素をデータ格納モジュール20中に格納されたデータと比較するように構成されている。2つのフィンガープリントが同一であれば、データ格納モジュール20中に格納されたデータは更新する必要がない。2つのフィンガープリントが異なる場合には、データ送信装置のデータ項目は変更されたことを示している。
データ処理ユニット231は、衝突検知戦略を検査し、データ送信装置がデータ項目を送信する必要があるかどうかを判定するように構成されている判定サブユニット2311を更に含んでいる。衝突検知戦略がデータ受信装置上のデータに基づいている場合には、データ格納装置20内に格納されているデータは更新の必要がない。衝突検知戦略がデータ送信装置上のデータに基づいている場合には、データ処理ユニット231はデータ更新サブユニット2312を更に含む。
データ更新サブモジュール2312は、データ格納装置20内に格納されたデータを受信したデータ要素に更新するように構成されている。
前記の実施形態の説明を通じて、当業者は、本発明がハードウェアのみによって、又はソフトウェアと必要な一般的なハードウェアプラットフォームとによって実装され得ることを理解するであろう。そのような理解に基づき、先行技術に寄与する本発明における技術ソリューションのすべて又は一部は、ソフトウェア製品の形態で本質的に実現されてもよい。ソフトウェア製品は、磁気ディスク、コンパクトディスク読み出し専用メモリ(CD−ROM)、読み出し専用メモリ(ROM)、又はランダムアクセスメモリ(RAM)等の記憶媒体中に格納されてもよい。ソフトウェア製品には、本発明の実施形態で提供された方法をコンピュータ装置(パーソナルコンピュータ、サーバ、又はネットワーク装置)に実行させるいくつかの命令が含まれる。
本発明の実施形態におけるフィンガープリント技術を実現するための方法及びシステム、データ送信装置、及びデータ受信装置において、フィンガープリント計算を必要とするデータの最小長さを事前に設定することにより、データ項目に対して対応するフィンガープリントを生成する必要があるかどうか、又フィンガープリントとデータ項目のいずれを送信するかが適宜に判定される。更に、個々のデータ項目について識別情報が設定されて、送信したのがフィンガープリントであるかデータ項目であるかを受信側に通知し、かつ利用したフィンガープリントアルゴリズムを受信側に通知する。このように、長さの短いデータ項目に対するフィンガープリント計算と、DS時の不要データ伝送とが回避され、DSの効率が改善される。
上記の説明は、単に本発明の好適な実施形態であって、当業者が本発明の精神から乖離することなしに種々の改良及び改善を成しうることに留意されたい。そのような修正及び改善のすべては本発明に含まれることが意図される。

Claims (12)

  1. フィンガープリント技術の実現方法であって、
    データ要素の長さが予め定められた長さより大きいか等しいことを判定すること、
    前記データ要素の長さが前記予め定められた長さより大きいか等しい場合には、前記データ要素に対してフィンガープリント計算を実行し、得られたフィンガープリントであって、データ項目としてフィンガープリント長さを有するフィンガープリントをデータ受信側に送信すること、
    前記データ要素の長さが前記予め定められた長さより小さい場合には、更に、前記データ要素の長さが、前記フィンガープリント長さと等しいか否かを判定し、
    前記データ要素の長さが、前記フィンガープリント長さと等しくない場合、データ項目として前記データ要素を前記データ受信側へ送信し、
    前記データ要素の長さが、前記フィンガープリント長さと等しい場合、前記データ要素の長さが前記予め定められた長さになるまで前記データ要素に0を追加して、前記追加されたデータ要素を取得し、データ項目として前記追加されたデータ要素を前記データ受信側へ送信すること、を含み、
    前記予め定められた長さは、前記フィンガープリント長さより大きい
    フィンガープリント技術の実現方法。
  2. 前記データ送信側と前記データ受信側とが、その両者でサポートされるフィンガープリントアルゴリズムのセットに関してネゴシエーションを行い、
    前記データ要素に対してフィンガープリント計算を行う必要がある場合、両者でサポートされる前記フィンガープリントアルゴリズムのセットの中から前記データ送信側によって1つのフィンガープリントアルゴリズムが選択されてデータ要素を計算する、
    ことを更に含み、
    前記データ要素に対する前記フィンガープリント計算に使用するアルゴリズム型は、識別情報により示される、
    請求項1に記載の方法。
  3. データ送信側からデータ項目を受信し、
    前記データ項目がフィンガープリントであるかデータ要素であるかを既定規則に基づいて判定し、
    前記データ項目がフィンガープリントであれば、前記フィンガープリントを格納されているフィンガープリントと比較し、比較結果に従って後続のプロセスを実装し、
    前記データ項目がデータ要素であれば、前記データ要素を格納されているデータ要素と比較し、比較結果に従って後続のプロセスが実装する、
    ことを含むフィンガープリント技術の実現方法であって、
    前記データ項目がフィンガープリントであるかデータ要素であるかを前記既定規則に基づいて判定するステップが、
    前記データ項目の長さが、フィンガープリント計算の後にフィンガープリントの長さに等しいかどうかを判定することを含み、
    前記データ項目の長さが、前記フィンガープリントの長さに等しい場合には、前記データ項目はフィンガープリント計算によって得られたフィンガープリントであると判定され、
    前記データ項目の長さが、前記フィンガープリントの長さに等しくない場合には、更に、前記データ項目の長さが、予め定められた長さと等しいか否かが判定され、
    前記データ項目の長さが、前記予め定められた長さと等しくない場合、前記データ項目はデータ要素であると判定され、
    前記データ項目の長さが、前記予め定められた長さと等しい場合、前記データ項目は、前記フィンガープリント長さとなるように切り捨てられ、切り捨てられたデータ項目が、前記データ要素として判定され、
    前記予め定められた長さは、前記フィンガープリント長さより大きい
    フィンガープリント技術の実現方法。
  4. 前記フィンガープリントを前記格納されたフィンガープリントと比較し、比較結果に従って後続の処理を実装するステップが、
    前記フィンガープリントを前記格納されたフィンガープリントと比較し、
    前記2つのフィンガープリントが同一である場合には、前記データ受信側に格納されたデータ要素は更新する必要がなく、
    前記2つのフィンガープリントが異なる場合には、前記データ送信側の前記データ要素が変更されたことを示し、衝突検知戦略を検査し、前記データ送信側がデータ要素を送信することが必要であるか否かを判定する、
    ことを含む請求項3に記載の方法。
  5. 前記衝突検知戦略を検査し、前記データ送信側がデータ要素を送信する必要があるか否かを判定するステップが、
    前記衝突検知戦略を検査し、
    前記衝突検知戦略が前記データ受信側上のデータ要素に基づくものであれば、前記データ送信側は前記データ項目を送信する必要がないと判定し、
    前記衝突検知戦略が前記データ送信側上のデータ要素に基づくものであれば、前記データ送信側は前記データ要素を送信する必要があると判定し、かつ前記データ送信側は前記データ要素を送信するように指示される、
    ことを含む請求項4に記載の方法。
  6. データ要素の長さが予め定められた長さより大きいか等しいことを判定し、前記データ要素の長さが前記予め定められた長さより小さい場合には、更に、前記データ要素の長さが、前記フィンガープリント長さと等しいか否かを判定するように構成された判定モジュールと、
    前記判定モジュールが、前記データ要素の前記長さが前記予め定められた長さより大きいか等しいと判定した場合、前記データ要素に応じて対応するフィンガープリントであって、フィンガープリント長さを有するフィンガープリントを生成するように構成されたフィンガープリント計算モジュールと、
    前記判定モジュールが、前記データ要素の前記長さが前記予め定められた長さより大きいか等しいと判定した場合、前記フィンガープリント計算モジュールにより生成された前記フィンガープリントをデータ項目としてデータ受信装置に送信するか、又は前記判定モジュールが、前記データ要素の前記長さが前記予め定められた長さより小さく、更に前記フィンガープリント長さと等しくないと判定した場合、データ項目として前記データ要素を前記データ受信装置へ送信するか、又は前記判定モジュールが、前記データ要素の長さが、前記予め定められた長さより小さく、更に前記フィンガープリント長さと等しいと判定した場合、前記データ要素の長さが前記予め定められた長さになるまで前記データ要素に0を追加することにより得られた、前記追加されたデータ要素を、データ項目として前記データ受信装置へ送信するように構成された、データ送信モジュールと、
    を備え、
    前記予め定められた長さは、前記フィンガープリント長さより大きい
    ータ送信装置。
  7. 前記フィンガープリント計算モジュールは、
    データ送信装置とデータ受信装置の両者でサポートされるフィンガープリントアルゴリズムのセットに関して前記データ受信装置とネゴシエートするように構成された、アルゴリズムネゴシエーションユニットと、
    データ要素に対してフィンガープリント計算の実行が必要な場合にデータ要素を計算するために、両者でサポートされる前記フィンガープリントアルゴリズムのセットから1つのフィンガープリントアルゴリズムを選択するように構成されたアルゴリズム選択ユニットと、
    前記アルゴリズム選択ユニットにより選択された前記アルゴリズムを用いてフィンガープリント生成を必要とするデータ要素に対するフィンガープリント計算を実行するように構成された、フィンガープリント計算ユニットと、
    を含み、
    前記フィンガープリント計算を実行する際に、前記データ要素のアルゴリズム型は識別情報で指示される、
    請求項6に記載のデータ送信装置。
  8. データ送信装置により送信されたデータ項目を受信するように構成された、データ受信モジュールと、
    前記データ受信モジュールにより受信された前記データ項目が、フィンガープリントであるかデータ要素であるかを既定の規則に基づいて判定するように構成された、データ判定モジュールと、
    データ要素又はフィンガープリントを格納するように構成されたデータ格納モジュールと、
    した前記データ項目がフィンガープリントであることを前記データ判定モジュールが判定した場合に、前記受信したフィンガープリントを前記格納されたフィンガープリントと比較し、比較結果に従って後続処理を実装するように構成され、又は、した前記データ項目がデータ要素であることをデータ判定モジュールが判定した場合に、前記受信したデータ要素を格納されたデータ要素と比較し、比較結果に従って後続処理を実装するように構成された、データ処理モジュールと、
    を含み、
    前記データ受信モジュールにより受信された前記データ項目がフィンガープリントであるかデータ要素であるかを前記既定規則に基づいて判定することが、
    前記データ項目の長さが、フィンガープリント計算の後にフィンガープリントの長さに等しいかどうかを判定することを含み、
    前記データ項目の長さが、前記フィンガープリントの長さに等しい場合には、前記データ項目はフィンガープリント計算によって得られたフィンガープリントであると判定され、
    前記データ項目の長さが、前記フィンガープリントの長さに等しくない場合には、更に、前記データ項目の長さが、予め定められた長さと等しいか否かが判定され、
    前記データ項目の長さが、前記予め定められた長さと等しくない場合、前記データ項目はデータ要素であると判定され、
    前記データ項目の長さが、前記予め定められた長さと等しい場合、前記データ項目は、前記フィンガープリント長さとなるように切り捨てられ、切り捨てられたデータ項目が、前記データ要素として判定され、
    前記予め定められた長さは、前記フィンガープリント長さより大きい
    データ受信装置。
  9. 前記データ処理モジュールは、
    前記受信したデータ項目がフィンガープリントであることを前記データ判定モジュールが判定した場合に、前記受信したフィンガープリントと格納されたフィンガープリントとを比較し、比較結果に従って後続処理を実装するように構成された、フィンガープリント処理ユニットと、
    前記受信したデータ項目がデータ要素であることを前記データ判定モジュールが判定した場合に、前記受信したデータ要素と格納されたデータ要素とを比較し、比較結果に従って後続処理を実装するように構成された、データ処理ユニットと、
    を含む、
    請求項8に記載のデータ受信装置。
  10. 前記フィンガープリント処理ユニットは、
    前記受信したデータ項目がフィンガープリントであることを前記データ判定モジュールが判定した場合に、前記受信したフィンガープリントを前記格納されたフィンガープリントと比較する様に構成されたフィンガープリント比較サブユニットであって、前記2つのフィンガープリントが同一である場合には前記データ受信装置内に格納されている前記データ要素は更新の必要がなく、前記2つのフィンガープリントが異なる場合には前記データ送信装置の前記データ要素は変更されていることが示されることを特徴とする、フィンガープリント比較サブユニットと、
    衝突検知戦略を検査し、前記データ送信装置が 前記データ要素を送信する必要があるか否かを判定するように構成された、判定サブユニットであって、前記衝突検知戦略が前記データ受信装置上のデータ要素に基づく場合には、前記データ送信装置は前記データ要素を送信する必要がないことを特徴とする、判定サブユニットと、
    前記2つのフィンガープリントが異なり、かつ前記衝突検知戦略が前記データ送信装置上のデータ要素に基づいている場合に、前記データ送信装置に前記データ要素の送信を指示するように構成された、指示サブユニットと、
    前記格納されたデータ要素を前記受信したデータ要素に更新するように構成された、データ更新サブユニットと、
    を含む、請求項9に記載のデータ受信装置。
  11. 前記データ処理ユニットは、
    前記受信したデータ要素がデータ要素であることを前記データ判定モジュールが判定した場合に、前記受信したデータ要素を前記格納されたデータ要素と比較する様に構成されたデータ比較サブユニットであって、前記2つのデータ要素が同一である場合にはデータ受信側に格納されているデータ要素は更新の必要がなく、前記2つのデータ要素が異なる場合には前記データ送信装置の前記データ要素は変更されていることが示されることを特徴とするデータ比較サブユニットを含み、
    また、前記データ処理ユニットは更に、
    前記衝突検知戦略を検査し、前記データ受信装置に格納された前記データ要素を更新する必要があるか否かを判定するように構成された、判定サブユニットであって、前記衝突検知戦略が前記データ受信装置上のデータ要素に基づく場合には、前記データ受信装置上の前記データ要素は更新の必要がないことを特徴とする判定サブユニットと、
    前記2つのフィンガープリントが異なり、かつ前記衝突検知戦略が前記データ送信装置上のデータ要素に基づいている場合に、前記データ受信装置内に格納された前記データ要素を前記受信したデータ要素に更新するように構成された、データ更新サブユニットと、
    を含む、
    請求項10に記載のデータ受信装置。
  12. フィンガープリント技術の実現システムであって、
    請求項6又は7記載のデータ送信装置と、
    請求項8〜請求項11の何れか1項記載のデータ受信装置と、
    を含む、フィンガープリント技術の実現システム。
JP2010543362A 2008-01-24 2008-12-30 フィンガープリント技術の実現方法、装置、及びシステム Active JP5416135B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN200810026009.4 2008-01-24
CN2008100260094A CN101494658B (zh) 2008-01-24 2008-01-24 指纹技术的实现方法、装置及系统
PCT/CN2008/073851 WO2009094889A1 (en) 2008-01-24 2008-12-30 Method, apparatus and system for realizing fingerprint technology

Publications (2)

Publication Number Publication Date
JP2011510572A JP2011510572A (ja) 2011-03-31
JP5416135B2 true JP5416135B2 (ja) 2014-02-12

Family

ID=40912257

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010543362A Active JP5416135B2 (ja) 2008-01-24 2008-12-30 フィンガープリント技術の実現方法、装置、及びシステム

Country Status (5)

Country Link
US (1) US8706746B2 (ja)
EP (1) EP2249246B1 (ja)
JP (1) JP5416135B2 (ja)
CN (1) CN101494658B (ja)
WO (1) WO2009094889A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101950301A (zh) * 2010-09-26 2011-01-19 北京飞天诚信科技有限公司 数据处理的方法及装置
WO2013132408A1 (en) * 2012-03-04 2013-09-12 Jeffries Adam Data systems processing
CN104008321A (zh) * 2014-05-28 2014-08-27 惠州Tcl移动通信有限公司 移动终端的基于指纹识别用户权限的判别方法和判断系统
CN111026740B (zh) * 2019-12-03 2022-07-12 厦门市美亚柏科信息股份有限公司 基于数据指纹的数据对账方法及系统
CN114024777B (zh) * 2022-01-05 2022-03-25 北京顶象技术有限公司 一种检测设备指纹是否碰撞的方法及装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263348B1 (en) * 1998-07-01 2001-07-17 Serena Software International, Inc. Method and apparatus for identifying the existence of differences between two files
US7412462B2 (en) * 2000-02-18 2008-08-12 Burnside Acquisition, Llc Data repository and method for promoting network storage of data
US20060089954A1 (en) * 2002-05-13 2006-04-27 Anschutz Thomas A Scalable common access back-up architecture
JP3848209B2 (ja) * 2002-05-23 2006-11-22 株式会社東芝 データ転送装置、データ転送方法及びプログラム
US7055008B2 (en) * 2003-01-22 2006-05-30 Falconstor Software, Inc. System and method for backing up data
US7676506B2 (en) * 2003-06-20 2010-03-09 Innopath Software, Inc. Differential file compression of software image versions
US20050060643A1 (en) * 2003-08-25 2005-03-17 Miavia, Inc. Document similarity detection and classification system
US7454443B2 (en) * 2003-08-26 2008-11-18 Tamir Ram Method, system, and program for personal data management using content-based replication
CN100349399C (zh) * 2004-02-20 2007-11-14 胡祥义 一种基于加密算法技术的软件防盗版方法
DE102004046746B4 (de) * 2004-09-27 2007-03-01 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Verfahren zum Synchronisieren von Zusatzdaten und Basisdaten
GB0424479D0 (en) * 2004-11-05 2004-12-08 Ibm Generating a fingerprint for a document
US7844774B2 (en) * 2005-11-16 2010-11-30 Sun Microsystems, Inc. Extensible fingerprinting functions and content addressed storage system using the same
US7613739B2 (en) * 2005-11-17 2009-11-03 Research In Motion Limited Method and apparatus for synchronizing databases connected by wireless interface
CN100357901C (zh) * 2005-12-21 2007-12-26 华为技术有限公司 一种主设备和备份设备之间数据核查的方法
CN101009516B (zh) * 2006-01-26 2011-05-04 华为技术有限公司 一种进行数据同步的方法、系统及装置
US7478113B1 (en) * 2006-04-13 2009-01-13 Symantec Operating Corporation Boundaries
US7860825B2 (en) * 2006-05-08 2010-12-28 Palm, Inc. Method for synchronizing software application and user data for asynchronous client-server and peer to peer computer networks
CN1971562A (zh) * 2006-11-29 2007-05-30 华中科技大学 面向对象存储系统中的对象分布方法
US7827146B1 (en) * 2007-03-30 2010-11-02 Symantec Operating Corporation Storage system

Also Published As

Publication number Publication date
EP2249246A1 (en) 2010-11-10
CN101494658A (zh) 2009-07-29
EP2249246A4 (en) 2011-03-02
US8706746B2 (en) 2014-04-22
US20100287169A1 (en) 2010-11-11
WO2009094889A1 (en) 2009-08-06
EP2249246B1 (en) 2015-04-22
JP2011510572A (ja) 2011-03-31
CN101494658B (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
US10924281B2 (en) Method and apparatus for inter-blockchain transmission of authenticable message
US8533314B2 (en) Method and system for content categorization
WO2021082073A1 (zh) 存储分区动态选择方法、系统、计算机设备及存储介质
CN109951546B (zh) 基于智能合约的事务请求处理方法、装置、设备和介质
JP5416135B2 (ja) フィンガープリント技術の実現方法、装置、及びシステム
WO2021212798A1 (zh) 耳机升级方法、装置、耳机控制方法、耳机组和存储介质
KR20090003405A (ko) 파일 업로드 시스템 및 방법
WO2022068235A1 (zh) 基于信息的属性生成随机数的信息处理方法、装置及设备
CN111698097B (zh) 一种证书认证方法及装置
US11616698B2 (en) Method, processor, and system for processing data packages
CN109688204B (zh) 基于ndn网络的文件下载方法、节点、终端
CN113225348B (zh) 请求防重放校验方法和装置
US20180091461A1 (en) Method and device for securing network communications using self-erasing messages
JP2004280827A (ja) 不要メッセージおよび受信者側が送信を要求していないメッセージの低減
CN113254203B (zh) 服务降级处理方法及装置
WO2017092350A1 (zh) 提高缓存命中率的方法及装置
CN118250341B (zh) 表单请求处理方法、装置、设备及存储介质
CN105376142B (zh) 电子邮件处理方法和装置
US20170155731A1 (en) Method and device for increasing cache hit ratio
CN118364016A (zh) 一种接口缓存方法及装置
CN117633903A (zh) 基于区块链网络的数据处理方法、相关设备及产品
CN117354301A (zh) 文件下载方法、装置、设备及存储介质
JP2005275481A (ja) ファイル管理システム、ファイル管理方法及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20121107

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130220

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131008

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131114

R150 Certificate of patent or registration of utility model

Ref document number: 5416135

Country of ref document: JP

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