IP Library Granted Patent US 6,928,467
Granted Patent B2
US 6,928,467 · App. 09/776,598 · Granted Aug 9, 2005

Apparatus and methods for providing data synchronization by facilitating data synchronization system design

Assignee: Inno Path Software, Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,928,467
App. No.
09/776,598
Granted
Aug 9, 2005
Kind
B2
Abstract

Object stores are used as building blocks to construct a system with variable complexity on a network. Typically, an object store comprises information (e.g., data) stored in object format, or objects. The objects and object stores are managed by an object version management mechanism that adapts to different object store types and optimizes resource consumption by each object store. Various data fields are used to indicate an object's version within an object store. Version information is used to compare the states among matching object replicas in matching object stores. Utilizing both the object store based system and the object version management mechanism, a data synchronization protocol is developed. The data synchronization protocol is capable of adapting to different types of object stores and the characteristics of network connection media to optimize data synchronization.

Claims (34)

1. A method for facilitating data synchronization, comprising the steps of:

(a) obtaining a list of encoding methods from a remote object store;

(b) extracting a first set of objects to be synchronized with said remote object store;

(c) packing said first set of objects, their associated identifiers and synchronization versions into a request synchronization message;

(d) sending said request synchronization message to said remote object store;

(e) receiving a response synchronization message from said remote object store, said response synchronization message indicating a number of updated objects at the remote object store; and

(f) resetting a corresponding set of synchronization versions to said updated objects.

2. The method of claim 1 , further comprising the steps of:

(1) checking object store replica information corresponding to said remote object store;

(2) sending a request message to said remote object store if any information is missing from said object store replica information;

(3) receiving a response from said remote object store; and

(4) registering said response in said object store replica information.

3. The method of claim 1 , further comprising the steps of:

(1) updating objects based on said request synchronization message at said remote object store; and

(2) sending a response synchronization message providing a number of objects received and processed.

4. The method of claim 1 , further comprising the step of:

adding a field in said request synchronization message indicating whether said request synchronization message is a last request to said remote object store.

5. A computer program product for facilitating data synchronization, comprising:

(a) logic code for obtaining a list of encoding methods from a remote object store;

(b) logic code for extracting a first set of objects to be synchronized with said remote object store;

(c) logic code for packing said first set of objects, their associated identifiers and synchronization versions into a request synchronization message;

(d) logic code for sending said request synchronization message to said remote object store;

(e) logic code for receiving a response synchronization message from said remote object store, said response synchronization message indicating a number of updated objects at the remote object store; and

(f) logic code for resetting a corresponding set of synchronization versions to said updated objects.

6. The computer program product of claim 5 , further comprising:

(1) logic code for checking object store replica information corresponding to said remote object store;

(2) logic code for sending a request message to said remote object store if any information is missing from said object store replica information;

(3) logic code for receiving a response from said remote object store; and

(4) logic code for registering said response in said abject store replica information.

7. The computer program product of claim 5 , further comprising:

(1) logic code for updating objects based on said request synchronization message at said remote object store; and

(2) logic code for sending a response synchronization message providing a number of objects received and processed.

8. The computer program product of claim 5 , further comprising:

logic code for adding a field in said request synchronization message indicating whether said request synchronization message is a last request to said remote object store.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 1, 2016
From: QUALCOMM TECHNOLOGIES, INC.
To: QUALCOMM INCORPORATED
Reel/Frame 039900/0760 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2016
From: INNOPATH SOFTWARE, INC.
To: QUALCOMM TECHNOLOGIES, INC.
Reel/Frame 038943/0852 →
RELEASE OF SECURITY INTEREST Recorded Apr 4, 2016
From: SILICON VALLEY BANK
To: INNOPATH SOFTWARE INC.
Reel/Frame 038335/0886 →
SECURITY AGREEMENT Recorded Mar 7, 2006
From: INNOPATH SOFTWARE, INC.
To: SILICON VALLEY BANK
Reel/Frame 017262/0479 →
CHANGE OF NAME Recorded Aug 25, 2004
From: DOONGO TECHNOLOGIES, INC.
To: INNOPATH SOFTWARE, INC.
Reel/Frame 015083/0148 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2001
From: PENG, LUOSHENG
To: DOONGO TECHNOLOGIES, INC.
Reel/Frame 011554/0014 →
Continuity (2)
Provisional Application 6017976100 · Feb 2, 2000
Related Publication 20010048728A1 · Dec 6, 2001