T 1536/17 (Differential restore/MICROSOFT TECHNOLOGY LICENSING) 14-07-2021
Download and more information:
Differential file and system restores from peers and the cloud
Amendments - added subject-matter
Amendments - main request (no)
Claims - clarity
Claims - main request (yes)
Inventive step - over document D1 (yes)
Remittal - special reasons for remittal
Amendment after summons - exceptional circumstances (yes)
I. The appeal lies from the decision of the examining division to refuse European patent application No. 10759248.7, which was filed as international application PCT/US2010/028957 and published as WO 2010/114777. In the decision under appeal the following documents were cited:
D1: US 2008/0162599 A1, published on 3 July 2008;
D2: US 2005/0240813 Al, published on 27 October 2005;
D3: US 2007/0100913 Al, published on 3 May 2007.
The examining division decided that the subject-matter of the independent claims of the main request and auxiliary request lacked inventive step over the disclosure of document D1 in combination with the common general knowledge of the skilled person.
II. In the statement of grounds of appeal, the appellant maintained both requests considered in the decision under appeal.
III. The appellant was summoned to oral proceedings. In a subsequent communication sent in advance of the oral proceedings, the board expressed its preliminary opinion that the independent system and method claims of both requests were unclear. The appellant was invited to indicate a basis for particular claim features in the application as filed. The board stated that it was not in a position to provide a complete assessment of inventive step in view of the problems of lack of clarity and added subject-matter, but it made a preliminary novelty analysis with regard to document D1, interpreting the claimed subject-matter in light of the description.
IV. With a letter of reply, the appellant filed new claims of a main and an auxiliary request.
V. Oral proceedings were held as scheduled, during which the appellant submitted an amended main request and an amended auxiliary request replacing its previous requests. At the end of the oral proceedings, the Chair announced the board's decision.
VI. The appellant's final requests were that the decision under appeal be set aside and that a patent be granted on the basis of the claims of the main request or of the auxiliary request, both requests filed during the oral proceedings before the board.
VII. Claim 1 of the main request reads as follows (itemisation added by the board):
(a)|"A system (100) for performing a differential restore of one or more files, comprising: a processor (1104) that executes machine-executable components stored on a computer-readable medium (1106,1114,1118,1122), the components comprising: |
(b)| a differential component (110,420) that identifies a locally available version of information to be restored, a desired version of the information to be restored, and respective segments corresponding thereto and |
(c)|identifies one or more segments that are different between the locally available version and the desired version at least in part by comparing respective signatures associated with the segments corresponding to the locally available version and signatures associated with the segments corresponding to the desired version, the signatures associated with the desired version being provided by a signature source (410); |
(d)| a segment location component (120,620) that determines one or more network locations (610,640,650,660) from which respective segments found to be different between the locally available version and the desired version are to be retrieved based on at least one of network loading, network location uptime, proximity of respective network locations to the segment location component, or bandwidth consumption associated with retrieving information at respective network locations,|
(e)|wherein the segment location component (120,620) comprises an index lookup component (622) that looks up the one or more network locations from which the respective segments are to be retrieved using an index (654) stored at a predetermined network location (610,640,650,660); and |
(f)| a restore component (130,630) that retrieves the respective segments found to be different between the locally available version and the desired version from the determined one or more network locations and restores the desired version using the retrieved segments, wherein |
(g)| a transmission is conducted only for the segments identified as different between the locally available version and the desired version, and |
(h)| the segments obtained from the one or more network locations are merged with segments present in the locally available version already located at a backup client of the system to obtain the fully restored version." |
VIII. Claim 8 of the main request reads as follows:
"A method of performing a differential restore of one or more files, comprising:
identifying (802) a locally available version of one or more files stored on at least one memory and a desired version to which the one or more files are to be restored;
identifying (804) respective segments of the desired version of the one or more files that differ from the locally available version thereof at least in part by comparing respective signatures associated with respective segments of the desired version of the one or more files to signatures associated with corresponding segments of the locally available version of the one or more files, the signatures associated with the desired version being provided by a signature source (410);
determining one or more network locations from which respective segments found to be different between the locally available version and the desired version are to be retrieved based on at least one of network loading, network location uptime, proximity of respective network locations to the segment location component, or bandwidth consumption associated with retrieving information at respective network locations;
selecting one or more network data stores at the network locations from which respective identified segments of the desired version of the one or more files are to be retrieved using a listing of segments stored at network locations within the network in corresponding network data stores at which the respective segments reside;
obtaining (804) the identified respective segments of the desired version of the one or more files from the one or more network data stores; and
restoring the desired version of the one or more files using the obtained respective segments, wherein
only those segments are transmitted that are identified as different between the locally available version and the desired version, and the segments obtained from the one or more network data stores are merged with segments present in the locally available version already located on the at least one memory to obtain the fully restored version."
IX. Claim 11 of the main request reads as follows:
"A machine-readable medium (1106, 1114, 1118, 1122) having stored thereon instructions which, when executed by a machine (1102), cause the machine (1102) to perform the method of any of claims 8 to 10."
X. In view of the outcome of the appeal proceedings, the dependent claims 2 to 7, 9 and 10 of the main request and the claims of the auxiliary request are not relevant for the present decision.
XI. The appellant's arguments, where relevant to this decision, are addressed in detail below.
Admissibility of the requests
1. The main and auxiliary requests are based on the corresponding previous requests which had been filed before the expiry of the period specified in the board's communication to address the objections raised for the first time in that communication.
The main and auxiliary requests were submitted during the oral proceedings before the board in order to address new minor objections raised by the board for the first time at the oral proceedings. Those are special circumstances under Article 13(2) RPBA 2020 which justify admitting the two requests. The main and auxiliary requests are thus admitted into the proceedings.
Main request
2. Clarity
2.1 Claim 1 defines a system for restoring a "desired version of the information" of one or more files. One or more network locations store segments of versions of the information to be restored and a backup client of the system stores segments of a locally available version (features (a), (c) and (h)). In order to create the desired version, a differential component of the system uses signatures to identify segments of data that are different between the locally available version and the desired version of the information to be restored, where the signatures are provided by a signature source (features (b) and (c)). A segment location component, which comprises an index lookup component, determines network locations from which the identified segments found to be different are to be retrieved based on criteria such as network loading (features (d) and (e)). A restore component retrieves the identified segments from the determined network locations, where only the segments identified as different are transmitted (features (f) and (g)). The segments obtained from the one of more network locations are then merged with the segments present in the locally available version to obtain the fully restored version (feature (h)).
2.2 In reply to the board's clarity objections, claim 8 has been redrafted to specify the method of performing a differential restore of one or more files including features essentially corresponding to those specified in system claim 1. Claim 8 specifies the method as comprising steps of identifying a locally available version and a desired version, identifying the segments of data that are different between the two versions of the information using signatures, determining network locations from which the identified segments are to be retrieved, selecting one or more data stores at those network locations, obtaining the identified segments from the selected network data stores, and restoring the desired version by merging the obtained segments with the segments present locally.
2.3 In its communication, the board was of the view that the feature "the signatures identifying segments present in a given version of information" of claims 1 and 8 was unclear. It was unclear how the "signatures associated with respective segments of the desired version of the one more more files" were determined. They could not be calculated from those segments, since the segments of the desired version were not available locally.
These objections have been overcome. Both claims have been amended to specify that the signatures associated with the desired version are provided by a signature source. Furthermore, it is clear from either claim that the signatures are compared to identify segments that are different between the locally available version and the desired version in order to obtain those segments of the desired version which are not locally available.
2.4 The term "unique" was used in the previous claims to express "different" (e.g. in "segments determined to be unique between the locally available version and the desired version"), which is not the usual meaning attributed to the term in the technical field. This objection no longer applies to claims 1 and 8 because the term "unique" is no longer used.
2.5 All other clarity objections raised in the board's communication likewise no longer apply to the current wording of independent claims 1 and 8.
2.6 Independent claim 11 defines a machine-readable medium by mere reference to the method claims.
2.7 Therefore, independent claims 1, 8 and 11 meet the requirements of Article 84 EPC.
3. Added subject-matter
3.1 Claim 1 relates to a system for performing a differential restore of one or more files including the features of original claim 1, features of original claim 2 specifying the identification of blocks that are different in the two versions by comparison of the respective signatures, the index lookup component specified in original claim 3, the determination of network locations from which to retrieve the segments of original claim 6, features describing the restore component of original claim 9 and features taken from the original description.
3.2 In particular, features (a), (b) and (f) are essentially based on original claim 1. The use of the terms "system for performing a differential restore", "locally available version" and "segment" instead of the respective terms "system for restoring information", "current version" and "block" of original claim 1 finds a basis for instance in paragraphs [0007], [0059] and [0026]. Feature (d) is based on original claims 1 and 6 and feature (e) is based on original claim 3.
3.3 Feature (c) specifies the identification of one or more segments that are different between the locally available and the desired versions by comparison of signatures as in original claims 1 and 2, and further specifies that the signatures associated with the desired version are provided by a signature source, which is disclosed in paragraph [0037].
3.4 Features (g) and (h) find a basis in paragraphs [0047] and [0048], from which it can be inferred that only the segments identified as different between the versions are transmitted by the restore component, and original claim 9, which specifies merging the segments to obtain the fully restored version.
3.5 Hence, the subject-matter of claim 1 is directly and unambiguously derivable from those passages of the application as originally filed and therefore complies with Article 123(2) EPC.
3.6 Independent claim 8 recites a method of performing a differential restore in terms of features corresponding to those of claim 1, except that it refers to "selecting [...] network stores [...] using a listing of segments" instead of "looking up [...] network locations [...] using an index", both used for the same purpose of selecting network locations/stores from which to retrieve the segments. This feature is based on original claim 12.
Therefore, claims 8 and 11 also fulfil the requirements of Article 123(2) EPC.
4. Inventive step over document D1
4.1 The examining division considered that the subject-matter of the independent claims of the requests then on file lacked inventive step over the disclosure of document D1 in combination with the common general knowledge of the skilled person.
4.2 Document D1 discloses a system for restoring application data using tracked changed blocks (abstract). An application server communicates with a backup server in a network (paragraph [0023], Figure 1). The backup system stores backup data, which is a copy of the application data, and file change data (FCD), which does not include the actual data but stores information about blocks that have been changed between two consecutive recovery points (paragraphs [0021] and [0022], Figure 1). The application server generates change tracking data. The change tracking data indicates the blocks which have been written since the last backup (abstract, paragraph [0025], Figure 1).
4.3 The decision under appeal does not explain in detail how the features of document D1 of the cited passages (abstract and paragraphs [0030] and [0036]) are mapped to claimed features, for instance which features of D1 were considered to correspond to the local system and "desired version" of claim 1. In the board's opinion, the application server of document D1 could be seen to correspond to the local system/backup client of claim 1, and the last back up associated with the recovery point in the embodiment of Figure 2 of D1, which is described in paragraphs [0025] to [0038], to correspond to the "desired version" of claim 1. The "current state of the application data 106 (PD1)" mentioned in paragraph [0033] is the "locally available version" and the backup server is a network location from which segments can be obtained.
The application server of D1 generates the change tracking data and file change data by comparing, block by block, the checksums of corresponding blocks of backup data at the backup server and application data at the application server (paragraphs [0030] and [0031]). Figure 2 illustrates a method for restoring the application data in case of a system failure. In step 220 of the embodiment of Figure 2 of D1, the application server uses the file change data and application data to generate a first file difference record (FDR). The first FDR is sent to the backup server, where it is used to construct a second copy of PD1 and a second FDR (paragraphs [0033] to [0036], steps 222 and 224). The second FDR is sent to the application server, where it is used to restore the application data to the last back up associated with the recovery point (paragraphs [0037] and [0038], steps 228 and 230).
4.4 This backup and data restoring system of document D1 is inherently different from that of the present invention. In document D1, the application server communicates with the backup server to obtain the data necessary to restore a version after a failure. But the application server does not itself identify and directly request retrieval of the necessary segments, as the local system does in the claimed invention. Instead, it is the backup server which, after preserving the current state of the data, determines the data necessary to restore the desired version and accordingly generates the second FDR to be used by the application server.
4.5 The solution of D1 is for a different purpose than that of the present invention. Document D1 discloses a solution for recovering after a failure taking into account that the status of the data in the application server may be corrupted. For that reason, the backup server regenerates the current state (step 224 in Figure 2 of D1) before generating the second FDR. Contrary to the system of claim 1 of the main request, the application server does not work autonomously to determine which segments it requires from the backup server. The skilled person starting from document D1 would therefore not consider distributing the backup server across network locations. Even if they did, the application server would not be in a position to determine which segments to get from which network locations because it would not have the information for doing that.
4.6 Therefore, document D1 is not an adequate starting point for assessing inventive step of the present invention and claim 1 of the main request is inventive over the disclosure of document D1 (Article 56 EPC), the same applying to independent claims 8 and 11.
5. Remittal
5.1 Under Article 11 RPBA 2020, a case is not to be remitted to the department whose decision was appealed unless special reasons present themselves for doing so. This provision has to be read in conjunction with Article 12(2) RPBA 2020, according to which it is the primary object of the appeal proceedings to review the decision under appeal in a judicial manner.
5.2 The independent claims of the main request overcome all the objections under Articles 84 and 123(2) EPC raised by the board. With regard to inventive step, the decision under appeal relied solely on document D1 for the inventive step assessment. However, the disclosure of document D1 does not render obvious the claimed subject-matter and is not an adequate starting point. Inventive step over other cited documents, including documents D2 and D3, has not yet been assessed in detail.
5.3 In order to decide on the question of inventive step, the board would therefore have to start anew the assessment of inventive step based on another document as starting point. In that way the board would be considering the question in both first- and last-instance proceedings, thereby effectively replacing the examining division in the task of assessing inventive step. That would be contrary to the primary object of the appeal proceedings to review the decision under appeal in a judicial manner. It follows that special reasons within the meaning of Articles 11 and 12(2) RPBA 2020 present themselves to remit the case for further prosecution.
5.4 Accordingly, the board decides to exercise its power under Article 111(1), second sentence, EPC and to remit the case to the examining division for further prosecution on the basis of the main request.
For these reasons it is decided that:
1. The decision under appeal is set aside.
2. The case is remitted to the examining division for further prosecution.