← Back to Patent Explorer
US5813017A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for reducing storage requirement in backup subsystems utilizing segmented compression and differencing

Assignee: International Business Machines Corp
•
Filing: 1996-09-03
•
Granted: 1998-09-22
•
Expires: 2016-09-03
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract 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.

Inventors

  • 👤 Robert J. T. Morris

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 22:28
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/07; G06F11/14; G06F11/1446; G06F11/1448; G06F11/1451; G06F11/1458; G06F11/1464; G06F16/00; G06F16/10; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99955

Claims Analysis

Total Claims: 48
Claim 1
Independent Claim 164 words
A method for storing information in a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server, a server backup program, a storage medium, and a copy of a versioned sequence of a file stored in the storage medium, said versioned sequence comprising a base version of a file in multiple compressed segments and a predetermined number of delta files, the client having a client backup program and a storage medium, the client and the backup server are connected to each other by a communication link, comprising the steps of: establishing a backup session between the client and the backup server; detecting, using the client backup program, a changed version of said file at the client; transmitting said changed version of said file, using the communication link, from the client to the backup subsystem; and differencing, using the backup subsystem, the changed version of said file and the base version of said file to create a delta file.
Claim 2
Independent Claim 164 words
A method for storing information in a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server, a server backup program, a storage medium, and a copy of a versioned sequence of a file stored in the storage medium, said versioned sequence comprising a base version of a file in multiple compressed segments and a predetermined number of delta files, the client having a client backup program and a storage medium, the client and the backup server are connected to each other by a communication link, comprising the steps of: establishing a backup session between the client and the backup server; detecting, using the client backup program, a changed version of said file at the client; transmitting said changed version of said file, using the communication link, from the client to the backup subsystem; and differencing, using the backup subsystem, the changed version of said file and the base version of said file to create a delta file.
Claim 3
Dependent Claim 30 words
A method as recited in claim 1 further including the step of: consulting a backup catalog at the backup subsystem to locate the versioned sequence of said file before differencing.
Claim 4
Dependent Claim 61 words
A method as recited in claim 2 further including the steps of: deleting the base version of said file in the backup subsystem after differencing; storing said delta file in the storage medium of the backup subsystem; and storing the changed version of said file as the new base version of said file on the storage medium of the backup subsystem.
Claim 5
Dependent Claim 37 words
A method as recited in claim 3 further including the step of deleting the oldest delta file in said versioned sequence of said file after storing the new base version of said file in the backup subsystem.
Claim 6
Dependent Claim 24 words
A method as recited in claim 3 wherein the changed version of said file is stored in a form of a multiple compressed segments.
Claim 7
Dependent Claim 51 words
A method as recited in claim 1 wherein the step of establishing a backup session comprises the steps of: transmitting a query, using the communication link, to the client by the backup subsystem; and receiving a backup session established signal, using the communication link, from the client by the backup subsystem.
Claim 8
Dependent Claim 15 words
A method as recited in claim 1 wherein said communication link is a transmission line.
Claim 9
Dependent Claim 15 words
A method as recited in claim 1 wherein said backup server is a personal computer.
Claim 10
Dependent Claim 14 words
A method as recited in claim 1 wherein said backup server is a workstation.
Claim 11
Dependent Claim 18 words
A method as recited in claim 1 wherein said backup subsystem storage medium comprises a magnetic storage device.
Claim 12
Dependent Claim 18 words
A method as recited in claim 1 wherein said backup subsystem storage medium comprises an optical storage device.
Claim 13
Dependent Claim 18 words
A method as recited in claim 1 wherein said backup subsystem storage medium comprises a tape storage device.
Claim 14
Dependent Claim 31 words
A method as recited in claim 1 wherein the step of transmitting a changed version of said file further includes transmitting the changed version of said file in an uncompressed format.
Claim 15
Dependent Claim 39 words
A method as recited in claim 13 wherein the step of differencing, using the backup subsystem, is further carried out using the multiple compressed segments of the base version of said file and the changed version of said file.
Claim 16
Dependent Claim 40 words
A method as recited in claim 1 wherein the step of transmitting the changed version of said file comprises the step of transmitting the multiple compressed segments of the changed version of said file one compressed segment at a time.
Claim 17
Dependent Claim 47 words
A method as recited in claim 15 further including the steps of: transmitting, using said communication link, a side file to the client from the backup subsystem; and utilizing, using client computer, said side file for compressing the changed version of said file into multiple compressed segments.
Claim 18
Independent Claim 154 words
A method for storing and transmitting information in a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server, a server backup program, a storage medium, and a copy of a versioned sequence of a file stored in the storage medium, said versioned sequence comprising a base version of a file in multiple compressed segments and a predetermined number of delta files, the client and the server are in communication with each other by a communication link, comprising the steps of: establishing a backup session between the client and the backup subsystem; detecting a changed version of said file at the client; differencing, using the client, the changed version of said file and the base version of said file at the client to create a delta file; transmitting said delta file, using the communication link, to the backup subsystem; and storing said delta file in the backup subsystem.
Claim 19
Independent Claim 154 words
A method for storing and transmitting information in a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server, a server backup program, a storage medium, and a copy of a versioned sequence of a file stored in the storage medium, said versioned sequence comprising a base version of a file in multiple compressed segments and a predetermined number of delta files, the client and the server are in communication with each other by a communication link, comprising the steps of: establishing a backup session between the client and the backup subsystem; detecting a changed version of said file at the client; differencing, using the client, the changed version of said file and the base version of said file at the client to create a delta file; transmitting said delta file, using the communication link, to the backup subsystem; and storing said delta file in the backup subsystem.
Claim 20
Dependent Claim 54 words
A method as recited in claim 17 further including the steps of: generating the changed version of said file at the backup subsystem using said delta file and the base version of said file; and storing the changed version of said file as the new base version of said file in the backup subsystem.
Claim 21
Dependent Claim 35 words
A method as recited in claim 18 further including the step of deleting the base version of said file at the backup subsystem after generating the changed version of said file at the backup subsystem.
Claim 22
Dependent Claim 111 words
A method as recited in claim 17 wherein the step of differencing at the client further includes the steps of: checking the storage medium at the client to determine if a copy of the base version of said file is available in the client storage medium; requesting a copy of the base version of said file from the backup subsystem if a copy of the base version of said file is not available in the client storage medium; and receiving a copy of the base version of said file from the backup subsystem if a copy of the base version of said file is not available in the client storage medium.
Claim 23
Dependent Claim 15 words
A method as recited in claim 20 wherein the client storage medium is a cache.
Claim 24
Dependent Claim 29 words
A method as recited in claim 20 where a copy of the base version of said file is stored at the client storage medium in a multiple compressed segments.
Claim 25
Dependent Claim 38 words
A method as recited in claim 17 wherein the step of differencing, using the client, is further carried out using the multiple compressed segments of the base version of said file and the changed version of said file.
Claim 26
Dependent Claim 15 words
A method as recited in claim 17 wherein said communication link is a transmission line.
Claim 27
Dependent Claim 15 words
A method as recited in claim 17 wherein said backup server is a personal computer.
Claim 28
Dependent Claim 14 words
A method as recited in claim 17 wherein said backup server is a workstation.
Claim 29
Dependent Claim 18 words
A method as recited in claim 17 wherein said backup subsystem storage medium comprises a magnetic storage device.
Claim 30
Dependent Claim 18 words
A method as recited in claim 17 wherein said backup subsystem storage medium comprises an optical storage device.
Claim 31
Dependent Claim 18 words
A method as recited in claim 17 wherein said backup subsystem storage medium comprises a tape storage device.
Claim 32
Dependent Claim 154 words
In a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a backup storage medium, and where the client comprises a client storage medium, the client and the backup server connected to each other by a communication link, a method for storing and transmitting information in said client-server environment, comprising the steps of: storing a versioned sequence of a file, using the backup storage medium, in the backup subsystem, said versioned sequence comprising a base version of a file in multiple compressed segments and a predetermined number of delta files; detecting a changed version of said file at the client; differencing, using the client, the changed version of the said file and the base version of said file to create a delta file at the client; transmitting, using the communication link, said delta file to the server; and storing said delta file in the backup subsystem.
Claim 33
Dependent Claim 154 words
In a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a backup storage medium, and where the client comprises a client storage medium, the client and the backup server connected to each other by a communication link, a method for storing and transmitting information in said client-server environment, comprising the steps of: storing a versioned sequence of a file, using the backup storage medium, in the backup subsystem, said versioned sequence comprising a base version of a file in multiple compressed segments and a predetermined number of delta files; detecting a changed version of said file at the client; differencing, using the client, the changed version of the said file and the base version of said file to create a delta file at the client; transmitting, using the communication link, said delta file to the server; and storing said delta file in the backup subsystem.
Claim 34
Dependent Claim 57 words
A method as recited in claim 30 further including the steps of: creating a changed version of said file at the backup subsystem using said delta file and the base version of said file; storing the changed version of said file at the backup subsystem; and deleting the base version of said file from the backup subsystem.
Claim 35
Dependent Claim 26 words
A method as recited in claim 31 wherein the step of storing the changed version of said file includes storing multiple compressed segments of said file.
Claim 36
Dependent Claim 37 words
A method as recited in claim 30 wherein the step of differencing, using the client, is carried out using the multiple compressed segments of the base version of said file and the changed version of said file.
Claim 37
Dependent Claim 33 words
A method as recited in claim 30 further including the step of storing the copy of the base version of said file in the client storage medium according to an established qualification criteria.
Claim 38
Dependent Claim 40 words
A method as recited in claim 30 further including the step of storing the changed version of the file in the client at the completion of comparing the changed version of said file and the base version of said file.
Claim 39
Dependent Claim 23 words
A method as recited in claim 30 further including the step of updating the base version of said file at a predetermined time.
Claim 40
Dependent Claim 131 words
In a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a storage medium, the client is connected to the backup server by a communication link, the backup subsystem including a copy of a versioned sequence of a file, said versioned sequence comprising a base file in a multiple compressed segments and a predetermined number of delta files, said client-server environment comprising: means for establishing a backup session between the client and the backup server; means for transmitting a changed version of said file, from the client to the backup subsystem; means for differencing, the changed version of said file and the base version of said file to create a delta file; and means for storing said delta file in the backup subsystem.
Claim 41
Dependent Claim 131 words
In a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a storage medium, the client is connected to the backup server by a communication link, the backup subsystem including a copy of a versioned sequence of a file, said versioned sequence comprising a base file in a multiple compressed segments and a predetermined number of delta files, said client-server environment comprising: means for establishing a backup session between the client and the backup server; means for transmitting a changed version of said file, from the client to the backup subsystem; means for differencing, the changed version of said file and the base version of said file to create a delta file; and means for storing said delta file in the backup subsystem.
Claim 42
Dependent Claim 50 words
A system as recited in claim 37, further comprising: means for deleting the base version of said file in the backup subsystem after differencing; and means for storing the changed version of said file as the new base version of said file on the storage medium of the backup subsystem.
Claim 43
Dependent Claim 169 words
In a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a storage medium, and where the client comprises a client storage medium, the client and the server connected to each other by a communication link, said client-server environment comprising: means for storing a versioned sequence of a file in the backup subsystem, said versioned sequence comprising a base version of a file in a multiple compressed segments and a predetermined number of delta files; means for storing a copy of the base version of said file in the client; means for detecting a changed version of said file at the client; means for differencing the changed version of said file and the base version of said file to create a delta file at the client; means for transmitting the delta file to the backup subsystem; and means for storing said delta file in the backup subsystem so the base version of said file can be updated at a predetermined time.
Claim 44
Dependent Claim 169 words
In a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a storage medium, and where the client comprises a client storage medium, the client and the server connected to each other by a communication link, said client-server environment comprising: means for storing a versioned sequence of a file in the backup subsystem, said versioned sequence comprising a base version of a file in a multiple compressed segments and a predetermined number of delta files; means for storing a copy of the base version of said file in the client; means for detecting a changed version of said file at the client; means for differencing the changed version of said file and the base version of said file to create a delta file at the client; means for transmitting the delta file to the backup subsystem; and means for storing said delta file in the backup subsystem so the base version of said file can be updated at a predetermined time.
Claim 45
Dependent Claim 60 words
A system as defined in claim 39 further comprising: means for creating a changed version of said file at the backup subsystem using said delta file and the base version of said file; means for storing the changed version of said file at the backup server; and means for deleting the base version of said file at the backup server.
Claim 46
Dependent Claim 48 words
A system as defined in claim 39 wherein the means for differencing the base version of said file with the changed version of said file comprises the means for differencing the multiple compressed segments of the base version of said file and the changed version of said file.
Claim 47
Independent Claim 121 words
A method for storing information in a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a copy of a versioned sequence of a file, said versioned sequence comprising a base version of said file in multiple compressed segments and a predetermined number of delta files, the client and the backup server are in communication with each other, comprising the steps of: detecting, using the client, a changed version of said file at the client; transmitting said changed version of said file from the client to the backup subsystem; and differencing, using the backup subsystem, the changed version of said file and the base version of said file to create a delta file.
Claim 48
Independent Claim 121 words
A method for storing information in a client-server environment having a client and a backup subsystem, the backup subsystem comprising a backup server and a copy of a versioned sequence of a file, said versioned sequence comprising a base version of said file in multiple compressed segments and a predetermined number of delta files, the client and the backup server are in communication with each other, comprising the steps of: detecting, using the client, a changed version of said file at the client; transmitting said changed version of said file from the client to the backup subsystem; and differencing, using the backup subsystem, the changed version of said file and the base version of said file to create a delta file.

References Cited (Backward Citations)

US4646229A Cited
US4686620A Cited
US4809170A Cited
US5005122A Cited
US4912637A Cited
US5089958A Cited
US5133065A Cited
US5276860A Cited
US5278979A Cited
US5347653A Cited
US5481722A Cited
US5263154A Cited
US5418945A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-09-21 2002-03-23 2002-09-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-09-21 2006-03-23 2006-09-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-09-21 2010-03-23 2010-09-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag