US005813017A [ii] Patent Number: 5,813,017  Date of Patent: *Sep. 22, 1998
 SYSTEM AND METHOD FOR REDUCING
STORAGE REQUIREMENT IN BACKUP
SUBSYSTEMS UTILIZING SEGMENTED
COMPRESSION AND DIFFERENCING
 Inventor: Robert J. T. Morris, Los Gatos, Calif.
 Assignee: International Business Machines Corporation, Armonk, N.Y.
[ * ] Notice: The term of this patent shall not extend beyond the expiration date of Pat. No. 5,574,906.
 Appl. No.: 707,263
 Filed: Sep. 3, 1996
Related U.S. Application Data
 Continuation of Ser. No. 328,204, Oct. 24, 1994, Pat. No. 5,574,906.
 Int. CI.6 G06F 17/30
 U.S. CI 707/204; 707/203
 Field of Search 707/200, 202,
 References Cited
U.S. PATENT DOCUMENTS
4,646,229 2/1987 Boyle 707/203
4,686,620 8/1987 Ng 707/10
4,809.170 2/1989 Leblang et al 395/703
4,912,637 3/1990 Sheedy et al 707/203
5,005,122 4/1991 Griffin et al 395/200.33
5,089.958 2/1992 Horton et al 395/182.03
5,133,065 7/1992 Cheffetz et al 395/181
5,263,154 11/1993 Eastridge et al 395/182.08
5,276.860 1/1994 Fortier et al 395/182.04
5,278,979 1/1994 Foster et al 707/203
5,347,653 9/1994 Flynn et al 707/203
5,418.945 5/1995 Carter et al 707/8
5,481,722 1/1996 Skinner 395/703
T. C. Bell et al., "Text Compression", Prentice Hall, pp. 206-235, no date.
M. J. Rochkind, "The Source Code Control System", IEEE Trans, on Software Engineering, vol. SE-1, No. 4, Dec. 1975, pp. 364-370.
IBM "AIX Commands Reference", vol. 1, pp. 1-618 through 1-621.
B. O'Donovan et al., .A distributed version control system for wide area networks., Software Engineering J., 5(5), pp. 255-262. Sep. 1990.
W. F. Tichy, .RCS-A System for Version Control., Software-Practice and Experience, 15(7), pp. 737-654, Jul. 1985.
Primary Examiner—-Thomas G. Black
Assistant Examiner—-Jack M. Choules
Attorney, Agent, or Firm—Paik Saber
In a client/server environment, a method and means for reducing the storage requirement in the backup subsystem and further reducing the load on the transmission bandwidth where base files are maintained on the server in a segmented compressed format. When a file is modified on the client, the file is transmitted to the server and compared with the segmented compressed base version of the file utilizing a differencing function but without decompressing the entire base file. A delta file which is the difference between the compressed base file and the modified version of the file is created and stored on a storage medium which is part of the backup subsystem. Alternatively, a copy of frequently accessed base files are maintained on the client in a compressed format. Whenever the client detects that a frequently accessed file has been modified, the modified version of the file is differenced against the base version of that file without decompressing the entire base file and a delta file is generated. The delta file is then transmitted to the server to be stored at the server for storage medium to be utilized either immediately or at a later time to update the base version of the modified file on the server.
42 Claims, 5 Drawing Sheets