| US 7,590,808 B2 | ||
| Method and system for synchronizing storage system data | ||
| Wai Lam, Jericho, N.Y. (US); Ronald S. Niles, Teaneck, N.J. (US); and Xiaowei Li, Hauppauge, N.Y. (US) | ||
| Assigned to FalconStor, Inc., Melville, N.Y. (US) | ||
| Filed on Dec. 21, 2006, as Appl. No. 11/643,587. | ||
| Application 11/643587 is a division of application No. 10/633344, filed on Aug. 01, 2003, granted, now 7,155,585. | ||
| Prior Publication US 2007/0106852 A1, May 10, 2007 | ||
| Int. Cl. G06F 12/00 (2006.01); G06F 13/00 (2006.01) | ||
| U.S. Cl. 711—161 [711/100; 711/154; 711/162] | 64 Claims |

| 49. A system for synchronizing a first unit of data stored in a first storage system and a second unit of data stored in a
second storage system, comprising:
a first controller configured to:
generate a first digest that represents the first unit of data;
generate an initial value associated with the first unit of data; and
derive an encoded value using the first digest and the initial value;
a first interface configured to:
transmit the encoded value from the first storage system to the second storage system;
a second controller configured to:
generate a second digest that represents the second unit of data; and
derive a decoded value using the second digest to decode the encoded value; and
a second interface configured to:
transmit the decoded value from the second storage system to the first storage system;
wherein, the first controller is further configured to:
determine whether the first unit of data and the second unit of data are duplicates of one another by comparing the decoded
value and the initial value; and
wherein, the first controller is further configured to:
send a copy of the first unit of data from the first storage system to the second storage system, the copy being stored in
a memory in the second storage system, if the first unit of data is determined to be different from the second unit of data.
|