CN1276568A - Multi-protocol unified file lockout - Google Patents

Multi-protocol unified file lockout Download PDF

Info

Publication number
CN1276568A
CN1276568A CN 99109498 CN99109498A CN1276568A CN 1276568 A CN1276568 A CN 1276568A CN 99109498 CN99109498 CN 99109498 CN 99109498 A CN99109498 A CN 99109498A CN 1276568 A CN1276568 A CN 1276568A
Authority
CN
China
Prior art keywords
locking
file
message
agreement
customer equipment
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 99109498
Other languages
Chinese (zh)
Other versions
CN1154054C (en
Inventor
A·波尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NetApp Inc
Original Assignee
Network Appliance Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Network Appliance Inc filed Critical Network Appliance Inc
Priority to CNB991094980A priority Critical patent/CN1154054C/en
Publication of CN1276568A publication Critical patent/CN1276568A/en
Application granted granted Critical
Publication of CN1154054C publication Critical patent/CN1154054C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Abstract

The present invention discloses a method and system, which uses a multi-protocol locking management system for correct interoperation between more file servers or file locking protocols. Before file server allows any client device to access data or obtain locking, the inconsistency to the existing locking independent to existing locked initial client device and initial file server protocols or file locking protocols must be determined. The CIFS client device can obtain a "change monitor" locking for a directory in file system. The file server records the directory changes made by CIFS and non-CIFS client device and informs the CIFS client device of the changed "change monitor" locking.

Description

Multi-protocol unified file lockout
The present invention relates to the locking in the multi-protocol file server.
In an integrated computer network, need a plurality of customer equipment shared files.A kind of known method provides a NetWare file server in order to storage file, and it can receive and respond the file server requests from those customer equipments.Utilize a file server protocol that is file server and customer equipment are discerned and adhered to produce these file server requests.Because file is stored in the file server, so a plurality of customer equipment has had the chance of access file simultaneously.
A problem of the prior art is to have multiple different file server protocol, and for file operation, each agreement all has different semantic relations.It is known that the file server that can discern multiple file server protocol is provided, but this has different and be not very difficult under the situation of the semantic relation of compatibility mutually at a lot of file server protocols aspect file locking and the file-sharing.Incompatible locking semantic relation has difficulties aspect a plurality of different customer equipments in that a single file system is offered.If first customer equipment is deferred to first file server protocol (having the first file locking semantic relation), then utilize second customer equipment of second file server protocol (having different file locking semantic relations) will cause the application of first customer equipment seriously to be failed.The proper operation of every kind of file server protocol depends on the compatibility of other All Files server protocol and its file locking semantic relation.
For example, a kind of agreement breath NFS (" network file system(NFS) ") agreement that has been generally used for utilizing the equipment of Unix operating system (or its modification).By implementing " PC NFS ", utilize the equipment of Windows operating system (or its modification) also to utilize the NFS agreement.The NFS agreement is designed to stateless, thereby but not for respect to shared and locked or provide with the file that other form is defined to a customer equipment and to appoint a semantic relation.Otherwise a kind of to be generally used for utilizing the agreement of the equipment of Windows operating system be CIFS (" public the Internet file system ") agreement.The CIFS agreement has extensive enforceable file locking semantic relation, and this semantic relation is that the CIFS customer equipment is deferred to and adhered to.
In system known per, the NFS agreement has been increased an additional file locking agreement NLM (" network locked manager "), but the NFS agreement only is considered as consulting with the NLM locking.Reached when those utilize its NFS application that the purpose of file locking semantic relation is provided in this method, can't prevent that NFS from using those file locking semantic relations of ignorance, can not allow customer equipment to defer to the file locking semantic relation of multiple different file server protocols yet.
Therefore, preferably provide a kind of method and system that is used for putting teeth in the file locking semantic relation at the customer equipment that utilizes multiple different file server protocols.One embodiment of the present of invention can realize this effect, and wherein one group of unified file locking semantic relation is loaded into the kernel of a multi-protocol file server and forces to have utilized the customer equipment of any different file server protocols that this server discerns to be carried out.In most preferred embodiment; for the integrality of protected data in the process that resides in the shared-file system in the NetWare file server one of client access, carry out the specific file locking semantic relation of CIFS agreement so that allow NFS customer equipment and CIFS customer equipment to use mutually.
What the invention provides one kind of multiple different file server protocols correctly uses method and system mutually.The file server of the multiple different file server protocols of identification provides a kind of unified multi-protocols lock management system (comprising a kind of unified file locking semantic relation) of forcing all customer equipments and all file server protocols that is identified to be implemented.In most preferred embodiment, first file server protocol (as CIFS) puts teeth in File Open and file locking semantic relation and a kind of chance (opportunistic) file locking, and second file server protocol (as NFS and Additional Agreement NLM) then lacks the File Open semantic relation and only provides the file locking semantic relation for consulting bytes range (advisory byte-range).
Unified file locking semantic relation make file server allow any customer equipment to read or write data obtain a new file locking or the bytes range locking before determine whether with existing lockings of start customer equipment and predicate file server protocol or the file locking protocol-independents that are used for those existing lockings inconsistent.Attempt to read or write under the data conditions at the CIFS customer equipment, when customer equipment opened file, file server was carried out this inspection.Under the situation of a bytes range locking of CIFS client device requests, when the client device requests bytes range locked, file server was carried out this inspection.For the NFS customer equipment, when the actual transmission of customer equipment reads or writes request, or when indication of NFS client device requests read or write the NLM bytes range locking of this bytes range, file server was carried out this inspection.Implement file locking semantic relation protected file data and avoid the error that the NFS customer equipment causes.
In a second aspect of the present invention, a CIFS customer equipment can obtain one " oplock " (chance locking), the file locking of monopolizing that only allows a client to read or write this document when opening a file.When a customer equipment sends a non-CIFS (being NFS or NLM) agreement request for the file that is locked by chance, file server sends a chance locked interrupt message to the CIFS customer equipment, cleans any write operation that is buffered and the chance that may close this document for simultaneously the CIFS customer equipment.Allow NFS and NLM request to interrupt the chance locking and guaranteed in the protected file data integrity, to keep the availability of file data the NFS customer equipment.
In a third aspect of the present invention, a CIFS customer equipment can obtain " change monitoring " of a catalogue in the file system locked, so that when the file server notice changes (change to a catalogue is included in generation in this catalogue, deletion or Rename file, or file is moved into or shift out this catalogue) to this catalogue.File server is noted the change to catalogue of CIFS customer equipment and non-CIFS customer equipment, and gives those CIFS customer equipments with " change monitoring " lock notification of those changes.
Fig. 1 shows the first party block diagram of the system that comprises a multi-protocol file server.
Fig. 2 shows the second party block diagram of the system that comprises a multi-protocol file server.
Fig. 3 shows the process flow diagram of the method for a multi-protocol file server of operation.
Fig. 4 shows the process flow diagram of the method for the cross protocol lock manager in multi-protocol file server of operation.
Fig. 5 shows the process flow diagram of the method for the chance lock manager in multi-protocol file server of operation.
Fig. 6 shows the process flow diagram of the method for the Notification of Changes manager in multi-protocol file server of operation.
In the following description, with reference to the process steps and the data structure of the best most preferred embodiment of the present invention is described.The those skilled in the art will recognize that after having studied the application carefully the circuit that utilizes general processor or application specific processor or other to be applicable to particular procedure step described here and data structure can implement embodiments of the invention, and implement process steps described here and data structure does not need special experiment or further invention.
System architecture (client/server)
Fig. 1 shows the first party block diagram of the system that comprises a multi-protocol file server.
A system 100 comprises 110, one computer networks 120 of a file server and a plurality of customer equipment 130.
File server 110 comprises a processor 111 and massage storage 112.Massage storage 112 can store and retrieve one group and have the file 113 that is used to store with data retrieved.Processor 111 can receive a series of request messages 121 from network 120, and those message are carried out grammatical analysis as order and data, handle on the massage storage 112 file 113 and according to those orders and data transmission response message.
File server 110 is connected with network 120 with customer equipment 130 and utilizes the message 121 that transmits on network 120 to communicate.Message 121 comprises that customer equipment 130 responds to the file system that customer equipment 130 sends to file system requests and the file server 110 that file server 110 sends.
System architecture (file locking semantic relation)
Fig. 2 shows the second party block diagram of the system that comprises a multi-protocol file server.
System 100 comprises one group of customer equipment 130, comprising Unix customer equipment 201, PC NFSWindows customer equipment 202 and CIFS Windows customer equipment 203.Unix customer equipment 201 is carried out Unix operating system and is utilized the Unix/NFS file server protocol.PC NFS Windows customer equipment 202 is carried out Windows operating system and is utilized PC NFS file server protocol.CIFS Windows customer equipment 203 is carried out Windows operating system and is utilized the CIFS file server protocol.
Unix customer equipment 201 and PC NFS Windows customer equipment 202 utilize NFS file server protocol and file server 110 to communicate, and confirm this agreement by a NFS file server protocol routine analyzer 211 in this document server 110.CIFS Windows customer equipment 203 utilizes CIFS file server protocol and file server 110 to lead to speech, confirms this agreement by a CIFS file server protocol routine analyzer 212 in this document server 110.111 pairs of processors have utilized the message of NFS file server protocol or CIFS file server protocol to carry out grammatical analysis and handled by a chance lock manager 220.
220 visits of chance lock manager have the file 113 of CIFS chance locking.Describe its operation in detail with reference to Fig. 3 and Fig. 5 later on.Chance lock manager element 220 is connected with a cross protocol lock manager 230.
Cross protocol lock manager 230 is being managed the file locking semantic relation of file server 110.The information of its processing and record and following four types lock-related---CIFS bytes range locking 241, CIFS file locking 242, PC NFS (NLM) file locking 243 and NLM bytes range locking 244.Describe its operation in detail with reference to Fig. 3 and Fig. 4 later on.
Different file locking semantic relations
As shown in Figure 2, can receive file server requests message 140 from Unix customer equipment 201, PC NFS Windows customer equipment 202 or CIFSWindows customer equipment 203, and can use NFS file server protocol or CIFS file server protocol.Except using different file server protocols, the different file locking models that provided by file server 110 also are provided every type customer equipment 130.
Particularly, the NFS file server protocol is used to carry out the file system operation with any type of File Open or closing of a file semantic relation.These NFS file system operations comprise the read or write of file data or file system processing (that is, the read and write of catalogue being operated).The file system processing comprises establishment file or catalogue, Rename file or catalogue, file is moved on to another catalogue or cancellation (deletion) file or catalogue from file system from a catalogue.
The NLM Additional Agreement is used to obtain and remove the bytes range locking of file.These bytes range lockings can be by " read lock ", and it suppresses other retinue (compliant) application program (for example in other customer equipment 130) and carries out write operation to specific bytes range.The locking of these bytes range also can " be write locking ", it suppress other retinue's application program from or carry out read or write to specific bytes range.
The CIFS file server protocol was used for before attempting that but the data of those files 113 are appointed read or write, and the execute file opening operation also obtains file locking about the file 113 that will be opened.When opening file, CIFS customer equipment 130 can be stipulated required access module (read-only a, write or read-write) and in order to required refusal pattern that other customer equipment 130 of attempting to open identical file 113 is exerted an influence (do not refuse, read refusal, write refusal or whole refusals).Then, the CIFS file system operation only need be checked the access module of the File Open that obtains.CIFS customer equipment 130 can also be stipulated the bytes range locking to the bytes range in the file of being opened by customer equipment 130.What bytes range locking or one were also referred to as " writing locking " monopolizes locking (have and read-write access pattern and whole refusal refusal patterns), or be also referred to as " read lock " non-is monopolized locking (have the read-only access pattern and write the refusal pattern of refusing).
File server 110 has determined to make up the locking mode of access module and refusal pattern.As used herein, phrase " locking mode " is meant a kind of unified locking mode that is produced by file server 110, and it has made up a kind of access module and a kind of refusal pattern.
When opening file, CIFS customer equipment 130 can also obtain an oplock (chance locking), and it makes the CIFS customer equipment 130 that opens file have exclusive access to this document, as long as another customer equipment 130 does not attempt to use this document.From the needs of customer equipment 130, oplock provides the exclusivity to this document higher degree, and passes through the visit of another customer equipment 130, can interrupt monopolizing of oplock.
File server 110 is prepared for utilizing NFS (having or do not have Additional Agreement NLM) or CIFS to carry out correct mutual usefulness between customer equipment 130.For correct mutual usefulness is provided, file server 110 provides a kind of unified file locking semantic relation.In most preferred embodiment, unified file locking semantic relation has following effect:
File server 110 prevents that 201 execution of Unix customer equipment from will cover the NFS write operation that has been opened and has just been had the data in the file 113 of writing refusal or all CIFS client's uses of the refusal patterns of refusal.
File server 110 prevents that Unix customer equipment 201 and PC NFS Windows customer equipment 02 from carrying out will be caused cancelling or one of rename has been opened and the NFS file system operation of the file 113 that just used by a CIFS client.
When Unix customer equipment 201 or PC NFS Windows customer equipment 202 produce one to the file 113 that can be locked by a CIFS client computer cancel, during the NFS request of rename or write data, file server 110 will be carried out CIFS chances locking semantic relations to file 113.File server 110 sends a chance locked interrupt message 140 to the customer equipment 130 that keeps the chance locking, and receives a response message from this customer equipment 130.If this customer equipment 130 has been closed this document 113, the then permission of NFS request can continue and obtain file server 110.
When the NFS of a Unix customer equipment 201 or a read data from the file 113 that just can locked by a CIFS client computer of PC NFS Windows customer equipment 202 generations asks, file server 110 will be carried out CIFS chances locking semantic relations to file 113.File server 110 sends a chance locked interrupt message 140 to the customer equipment 130 that keeps the chance locking, and receives a response message from this customer equipment 130.If this customer equipment 130 has been closed this document 113 or its compose buffer has been refreshed into file server 110, the then permission of NFS request can continue and obtain file server 110.
File server 110 test from the file open request of CIFS Windows customer equipment 203 with from the NLM file locking request of PCNFS Windows customer equipment 202 compatible property about their specific locking modes.Here use phrase NLM " file locking " to replace known phrase NLM and " share locking ", this phrase is described in following document: " X/Open CAE Specification:Protocols for X/OpenInterworking XNFS; Issue 4 (X/Open Document Number C218) ", and here as a reference with this document.Access module and refusal pattern that file server 110 is asked by combination are determined specific locking mode.
For these effects are provided, file server 110 is carried out following lock management operation:
When receiving a CIFS file open request message 140, file server 110 tests conflict with existing C IFS and NLM file locking and with the file open request of existing NLM bytes range locking violation.In order to reach the purpose of comparing with the file locking of new request, file server 110 is considered as having non-refusal refusal pattern with existing NLM bytes range locking and has a read-only access pattern non-ly monopolizes locking and read-the write access pattern monopolize locking.
When receiving a CIFS bytes range lock-request message 140, the bytes range locking request of file server 110 tests and existing C IFS and NLM bytes range locking violation.
When receiving a NLM bytes range lock-request message 140, file server 110 tests and existing C IFS and NLM bytes range locking violation and the bytes range locking request of conflicting with existing C IFS file locking.
When a PC NFS customer equipment 130 receives NLM file locking request messages 140 (being used to simulate a file open request message 140), file server 110 tests conflict with existing C IFS and NLM file locking and with the NLM file locking request of existing NLM bytes range locking violation.In order to reach the purpose of comparing with the NLM file locking of new request, file server 110 is considered as having non-refusal refusal pattern with existing NLM bytes range locking and has a read-only access pattern non-ly monopolizes locking and read-the write access pattern monopolize locking.
Method of operating (multi-protocol file server)
Fig. 3 shows the method flow diagram of a multi-protocol file server of operation.
The method 300 of a multi-protocol file server of operation comprises one group of process steps and flow point (flow point) of being carried out by file server 110 collaborative at least one customer equipment 130.
In flow point 310, file server 110 prepares to receive file server requests message 140.
In step 311, file server 110 receives and Study document server requests message 140.File server 110 determines that it still is the CIFS file server protocol that file server requests message 140 has been utilized NFS file server protocol, NLM file locking agreement.If this document server requests message 140 has been used NFS file server protocol or NLM file locking agreement, then method 300 proceeds to step 312.If this document server requests message 140 has been used the CIFS file server protocol, then method 300 proceeds to step 313.
In step 312, file server 110 determines whether request messages 140 comprise one in order to carry out the NFS file server requests of a file system operation (as read or write data, or revise catalogue).Replacedly, file server 110 determines whether request message 140 comprises one in order to obtain the NLM file locking request of a NLM bytes range locking.Under any situation, method 300 proceeds to flow point 320.
In step 313, file server 110 determines that file server requests message 140 is to be used to carry out a CIFS read or write to obtain a CIFS bytes range locking, still is used to carry out a CIFS File Open operation.In file server requests message 140 is to be used to obtain a CIFS bytes range locking or to be used to carry out under the situation of a CIFS File Open operation, and method 300 proceeds to flow point 320.If file server requests message 140 is used to carry out a CIFS read or write, then method proceeds to flow point 330.Land reform this document server requests message 140 is a CIFS " Notification of Changes " requests, and then method proceeds to flow point 350 (request is further detailed to Notification of Changes with reference to Fig. 6).
In flow point 320, file server 110 is prepared the file locking state of 140 requested operation of file server requests message and file 113 is compared.The file locking state of file 113 comprises the existing file locking and the bytes range locking of file 113.
In step 321, file server 110 is determined that file 113 is themes of file server requests message 140 and is determined whether this document 113 is locked by chance.If file 113 is locked by chance, then method 300 proceeds to step 322.If file 113 is not locked by chance, then method 300 proceeds to step 323.
In step 322, file server 110 interrupts the chance locking, as described here.Further describe the execution of step 322 later on reference to Fig. 5.Interrupting the chance locking can cause the file locking state of file 113 to change.
In step 323, file server 110 utilizes a kind of unified file locking semantic relation, and the file locking state of institute's requested operation and file 113 is compared.In this step, institute's requested operation may be a NFS read or write, NFS or CIFS catalogue retouching operation, once obtain trial or a CIFS File Open operation of the locking of NLM file locking or bytes range.Later further describe the execution of step 323 and unified file locking semantic relation with reference to Fig. 4.If comparative result shows institute's requested operation and allows that then method 300 proceeds to step 324.If institute's requested operation is unallowed, then method 300 proceeds to step 325.
In step 324, file server 110 is carried out institute's requested operation.Method 300 proceeds to flow point 340.
In step 325, file server 110 refusals are carried out institute's requested operation and are responded an error message to customer equipment 130.Method 300 proceeds to flow point 340.
In flow point 330, file server 110 is prepared the file locking state of 140 requested operation of file server requests message and file 113 is compared.
In flow point 350, file server 110 prepares to carry out the Notification of Changes operation, as described here.
In step 351, a CIFS customer equipment 130 is file locking of a catalog request (utilizing a file system requests message 140 to open this catalogue), and the change that the file locking of this catalogue is changed into this catalogue monitors locking.Further describe the execution of this step 351 later on reference to Fig. 6.
In flow point 340, file server 110 responds to file server requests message 140, is done about the method 300 of this document server requests message 140.
Method of operating (cross protocol lock manager)
Fig. 4 shows the method flow diagram of the cross protocol lock manager in multi-protocol file server of operation.
The method 400 of operating the cross protocol lock manager in the multi-protocol file server comprises one group of process steps and flow point of being carried out by file server 110 collaborative at least one customer equipment 130 described later.
In flow point 410, file server 110 is prepared and will institute's requested operation be compared with the file locking state of file 113 in file server requests message 140.
File server 110 utilizes a kind of unified file locking semantic relation, so that simulate the file locking from any solicit operation of any file server protocol in the same way.This is unified the file locking semantic relation and has identified a unified file locking collection, and every kind of file locking comprises a kind of access module and a kind of refusal pattern that is used for all other customer equipments 130 that is used to ask customer equipment 130.
In most preferred embodiment, access module can be following three kinds of possibilities---read-only a, write or read-write.Similarly, in most preferred embodiment, the refusal pattern can be following four kinds may one of---non-refusal, read refusal, write refusal or whole refusals.
After first customer equipment 130 has obtained file locking to a file 113, if by will be by the file server 110 determined locking modes of second customer equipment 130 request and the file locking state consistency of file 113, then second customer equipment 130 be merely able to visit this document 113.For example, 130 acquisitions of first customer equipment are to write the file locking of refusal to the refusal pattern of a file 113.The 2nd NFS customer equipment 130 can be attempted file 113 is carried out write operation or the 2nd CIFS customer equipment 130 can attempt to open file 113 with a kind of access module of write access that comprises.(if be not a chance locking to the file locking of this document 113, as described later), file server 110 will be refused the request of second customer equipment 130 under any situation.
As described, file server 110 is according to second customer equipment, 130 employed file server protocols, and execute file locks the comparison of the visit of being asked with second customer equipment 130 in different:
If second customer equipment 130 uses the CIFS file server protocol to open file 113, then file server 110 is checked the file locking state of file 113 when opening file.
If second customer equipment 130 uses the NFS file server protocol to come file 113 is read or write, then file server 110 is checked the file locking state of file 113 when carrying out the actual file system operation.This also is applicable to have the file system operation of eliminating the effect of this document from first customer equipment 130, for example moves, the operation of elimination or Rename file 113.
If second customer equipment 130 uses the CIFS file server protocols to ask a bytes range locking, then file server 110 is checked the file locking state with the file 113 of other CIFS or NLM bytes range locking violation in the locking of request byte scope.File server 110 is not checked in request byte scope locking and the conflicting of other CIFS file locking, because check when opening file.
If second customer equipment 130 uses the NLM agreement to ask a bytes range locking, then file server 110 is in request byte scope locking, checks the file locking state with existing C IFS or NLM bytes range locking violation and the file 113 that conflicts with existing C IFS file locking.
In step 421, file server 110 determines whether to exist more than one file lockings relevant with file 113.If then method 400 proceeds to step 422.If not, then method proceeds to step 411.
In step 422, file server 110 will be the file locking relevant with file 113 be combined in the equivalent file locking of being correlated with file 113.In order to carry out this step 422, file server 110 one of cross-searching in table 1 comprises every kind of accumulation file locking of depositing file locking earlier, is accumulated in together up to all file lockings of depositing earlier.
Table 1 shows a locking map table in the multi-protocol file server with unified file locking semantic relation.
??????????????????????????????????????????Existing?file?lock?mode
New Lock Mode ??NULL ?A:R ?D:DR ??A:W ??D:DR ??A:RW ??D:DN ??A:R ??D:DR ??A:W ??D:DR ??A:RW ??D:DR ??A:R ??D:DW ??A:W ??D:DW ??A:RW ??D:DW ??A:Any ??D:DA
??NULL ??NULL????????A:R??????????A:W?????????A:RW????????A:R????????A:W?????????A:RW????????A:R???????A:W???????A:RW??????A:Any ??????????????D.DN??????????D.DN?????????D.DN?????????D.DR????????D.DR?????????D.DR?????????D:DW??????D:DW??????D:DW??????D.DA ??A:R????????A:R??????????A:RW????????A:RW????????A:R????????A:RW????????A:RW????????A:R???????A:RW??????A:RW??????A:Any ??D:DN???????D:DN?????????D:DN????????D:DN????????D:DR???????D:DR????????D:DR????????D:DW??????D:DW??????D:DW??????D:DA ??A:W????????A:RW?????????A:W?????????A:RW????????A:RW???????A:W?????????A:RW????????A:RW??????A:W???????A:RW??????A:Any ??D:DN???????D:DN?????????D:DN????????D:DN????????D:DR???????D:DR????????D:DR????????D:DW??????D:DW??????D:DW??????D:DA ??A:RW???????A:RW?????????A:RW????????A:RW????????A:RW???????A:RW????????A:RW????????A:RW??????A:RW??????A:RW??????A:Any ??D:DN???????D:DN?????????D:DN????????D:DN????????D:DR???????D:DR????????D:DR????????D:DW??????D:DW??????D:DW??????D:DA ??A:R????????A:R??????????A:RW????????A:RW????????A:R????????A:RW????????A:RW????????A:Any?????A:Any?????A:Any?????A:Any ??D:DR???????D:DR?????????D:DR????????D:DR????????D:DR???????D:DR????????D:DR????????D:DA??????D:DA??????D:DA??????D:DA ??A:W????????A:RW?????????A:W?????????A:RW????????A:RW???????A:W?????????A:RW????????A:Any?????A:Any?????A:Any?????A:Any ??D:DR???????D:DR?????????D:DR????????D:DR????????D:DR???????D:DR????????D:DR????????D:DA??????D:DA??????D:DA??????D:DA ??A:RW???????A:RW?????????A:RW????????A:RW????????A:RW???????A:RW????????A:RW????????A:Any?????A:Any?????A:Any?????A:Any ??D:DR???????D:DR?????????D:DR????????D:DR????????D:DR???????D:DR????????D:DR????????D:DA??????D:DA??????D:DA??????D:DA ??A:R????????A:R??????????A:RW????????A:RW????????A:Any??????A:Any???????A:Any???????A:R???????A:RW??????A:RW??????A:Any ??D:DW???????D:DW?????????D:DW????????D:DA????????D:DA???????D:DA????????D:DA????????D:DW??????D:DW??????D:DW??????D:DA ??A:W????????A:RW?????????A:W?????????A:RW????????A:Any??????A:Any???????A:Any???????A:RW??????A:W???????A:RW??????A:Any ??D:DW???????D:DW?????????D:DW????????D:DW????????D:DA???????D:DA????????D:DA????????D:DW??????D:DW??????D:DW??????D:DA ??A:RW???????A:RW?????????A:RW????????A:RW????????A:Any??????A:Any???????A:Any???????A:RW??????A:RW??????A:RW??????A:Any ??D:DW???????D:DW?????????D:DW????????D:DA????????D:DA???????D:DA????????D:DA????????D:DW??????D:DW??????D:DW??????D:DA ??A:Any??????A:Any????????A:Any???????A:Any???????A:Any??????A:Any???????A:Any???????A:Any?????A:Any?????A:Any?????A:Any ??D:DA???????D:DA?????????D:DA????????D:DA????????D:DA???????D:DA????????D:DA????????D:DA??????D:DA??????D:DA??????D:DA
??A:R ??D:DN
??A:W ??D:DN
??A:RW ??D:DN
??A:R ??D:DR
??A:W ??D:DR
??A:RW ??D:DR
??A:R ??D:DW
??A:W ??D:DW
??A:RW ??D:DW
??A:Any ??D:DA
Table 1
The locking transformation matrix
A-access module (R=reads, and W=writes, and RW=reads-writes, any among Any=R or W or the RW)
D-refusal pattern (the non-refusal of DN=, DR=are read refusal, and DW=writes refusal, and DA=all refuses)
In step 411, file server 110 is determined the character of institute's requested operation in the file server requests message 140.If institute's requested operation is a CIFS File Open operation, then method 400 proceeds to step 423.If institute's requested operation is a NFS file server operation, then method 400 proceeds to step 43 1.If institute's requested operation is a CIFS request or a NLM request to the bytes range locking, then file system 110 proceeds to step 441.
In step 423, the File Open that the file locking that file server 110 is will be relevant with file 113 and second customer equipment 130 are asked compares.In order to carry out this step 423, new access module and refusal pattern that file server 110 cross-searching in table 2 is deposited file locking earlier and asked, and the new access module and the refusal pattern that allow or refuse to be asked according to the continuous item in the table.
If new access module and refusal pattern that file server 110 permissions are asked, then method 400 execution in step 424.If new access module and refusal pattern that file server 110 refusal is asked, then method 400 execution in step 424 not.
Table 2 shows the cross-index of the trial file locking in the multi-protocol file server with unified file locking semantic relation.
???????????????????????????????????????Pre-existing?file?lock
????New ????Mode ????Being ????Requ- ????ested ????NULL ????A:R ????D:DN ????A:R ????D:DR ????A:R ????D:DW ????A:W ????D:DN ????A:W ????D:DR ????A:W ????D:DW ????A:RW ????D:DN ????A:RW ????D:DR ????A:RW ????D:DW A:Any D:DA
????NULL ????√ ????√ ????√ ????√ ????√ ????√ ????√ ????√ ????√ ????√ ????√
????A:R ????D:DN ????√ ????√ ????× ????√ ????√ ????× ????√ ????√ ????× ????√ ????×
????A:R ????D:DR ????√ ????× ????× ????× ????√ ????× ????√ ????√ ????× ????√ ????×
????A:R ????D:DW ????√ ????√ ????× ????√ ????× ????× ????× ????× ????× ????× ????×
????A:W ????D:DN ????√ ????√ ????√ ????× ????√ ????√ ????× ????√ ????√ ????× ????×
????A:W ????D:DR ????√ ????× ????× ????× ????√ ????√ ????× ????× ????× ????× ????×
????A:W ????D:DW ????√ ????√ ????√ ????× ????× ????× ????× ????× ????× ????× ????×
????A:RW ????D:DN ????√ ????√ ????× ????× ????√ ????× ????× ????√ ????× ????× ????×
????A:RW ????D:DR ????√ ????× ????× ????× ????√ ????× ????× ????× ????× ????× ????×
????A:RW ????D:DW ????√ ????√ ????× ????× ????× ????× ????× ????× ????× ????× ????×
????A:Any ????D:DA ????√ ????× ????× ????× ????× ????× ????× ????× ????× ????× ????×
Table 2
Multi-protocols locking compatibility matrix
A=access module D=refuses pattern
√-Xin request will be authorized to *-the Xin request will be rejected
As shown in table 2, deposit file locking earlier for every pair and have a kind of relevant predicting relation with the new access module and the refusal pattern that allow or refusal is asked with new access module of being asked and refusal pattern.
If conflicting between the new request of existing CIFS file locking of file server 110 checkings and an execute file opening operation, then access module and refusal pattern cross-searching existing C IFS file locking in new file open request, being asked.
If the existing file locking of file server 110 checkings with one in order to conflicting between the new NFS request of execute file read or write, then the locking mode that the access module cross-searching of being asked is added up to (combination of existing file locking) is to carry out new request.
If the locking of the existing file locking of file server 110 checkings or bytes range with one to conflicting between the new request of NLM bytes range locking, then a kind of existing file locking of locking mode cross-searching and bytes range that is equivalent to new NLM bytes range locking request locked.In order to compare with existing file locking, the locking of NLM bytes range that file server 110 will newly be asked is considered as non-refusal refusal pattern, and be considered as having the read-only access pattern non-monopolize locking (being also referred to as " read lock ") and have read-the write access pattern monopolize locking (being also referred to as " writing locking ").In order to compare with existing bytes range locking, the NLM bytes range locking that file server 110 will newly be asked is considered as having the read-only access pattern and writes the read lock of refusal refusal pattern, and is considered as having the locking of writing of read and write access pattern and whole refusal refusal patterns.
Method 400 proceeds to flow point 450 then.
In step 431, the file locking state of file server 110 comparison documents 113 and by second customer equipment, 130 requested operation.In order to carry out this step 431, file clothes server 110 is refusal pattern and institute's requested operation of this document locking relatively, and allows or refusal institute requested operation according to comparative result.
Method 400 proceeds to flow point 450 then.
At step 44l, the file locking state of file server 110 comparison documents 113 and the NLM bytes range locking of asking by second customer equipment 130.In most preferred embodiment, only CIFS bytes range locking request is checked in locking to bytes range, because they need a CIFS File Open operation of checking the existing file locking in the past.In order to carry out this step 441, file server 110 file locking state that cross-searching is deposited earlier in table 3 and the bytes range of being asked lock, and according to the bytes range that continuous item allows or refusal the is asked locking in showing.
If the new NLM bytes range that file server 110 allows to be asked locks, then method 400 execution in step 442.If the new bytes range locking that file server ll0 refusal is asked, then method 400 execution in step 442 not.
Table 3 shows the cross-index that existing file locks and new NLM bytes range of asking locks in the multi-protocol file server with unified file locking semantic relation.
?????????????????????????????????????????Existing?lock?mode
??None ??A:R ??D:DN ????A:R ????D:DR ????A:R ????D:DW ????A:W ????D:DN ????A:W ????D:DR ????A:W ????D:DW ????A:RW ????D:DN ????A:RW ????D:DR ????A:RW ????D:DW ????A:Any ????D:DA
????Write ????Lock ????√ ????√ ????√ ????× ????√ ????√ ????× ????√ ????√ ????× ????×
????Read ????Lock ????√ ????√ ????× ????√ ????√ ????× ????√ ????√ ???× ???√ ???×
Table 3
The compatibility of new NLM bytes range locking and existing file locking
The A=access module, D=refuses pattern
√=new NLM bytes range locking request will be authorized to
The NLM bytes range locking request of *=new will be rejected
As shown in table 3, each locks existing file and NLM bytes range of new request locks the relevant predicting relation that all has the new bytes range locking that allows or refuse to be asked.
In step 442, file server 110 makes the new bytes range locking of being asked get in touch with file 113 as a new extra byte scope locking.
Method 400 proceeds to flow point 450.
In flow point 450, file server 110 has compared the file locking state of institute's requested operation and file 113 in the file server requests message 140, and allows or refusal institute requested operation.
Method of operating (chance lock manager)
Fig. 5 shows the method flow diagram of the chance lock manager in multi-protocol file server of operation.
The method 500 of operating the chance lock manager in the multi-protocol file server comprises one group of process steps and flow point of being carried out by file server 110 collaborative at least one customer equipment 130 described later.
In the file locking field under the Windows operating system environment, the chance locking is a known technology.This technology is for example being described in detail in the document of " Windows NT 4.0 " operating system of CIFS IETF regulation about having comprised, can be by being arranged in the File Transfer Protocol of main ftp microsoft.com, directory/developr/drg/CIFS, file cifs6.doc or cifs6.txt, from being positioned at Washington, the Microsoft of Redmond obtains the document, herein with it as a reference.
In flow point 510, file server 110 is prepared to receive a request of 113 of opening file from a CIFS first customer equipment 130.
In step 511, file server 110 receives the file open request to file 113 from a CIFS first customer equipment 130.A kind of access module and a kind of refusal pattern have been specified in this document request of opening.
In step 512, file server 110 is determined to allow this request, and authorizes a file locking with specified access module and refusal pattern to first customer equipment 130.
In step 513, if this customer equipment 130 has been asked the chance locking in file open request, then file server 110 licenses to first customer equipment 130 with the possibility that is higher than first customer equipment, 130 actual needs with the chance locking.
For example, when a CIFS first customer equipment 130 with the read-only access pattern with write refusal refusal pattern and open a file 113 the time, file server 110 is got in touch the file locking of the sort of type and file 113.File server 110 also make have read-the write access pattern and all the chances locking of refusal refusal patterns get in touch with files 113.
In flow point 520,110 pairs of file servers respond from request CIFS first customer equipment 130, that file 113 is carried out file locking.
Attempt to open file 113 at flow point 530, the second customer equipments 130.
In step 531, file server 110 or receive a file open request from the 2nd CIFS customer equipment 130 perhaps receives the request of a NLM file locking from a PC NFS customer equipment 130.
As a part of carrying out this step 531, chance locks and when occupant, first customer equipment 130 that this chance locks met with a response, file server 110 was hung up the execution by 130 requests of second customer equipment having been interrupted by the execution of second customer equipment, 130 requests.
In step 532, file server 110 interrupts the chance locking by sending " chance locked interrupt " message 140 to CIFS first customer equipment 130.
When second customer equipment 130 was a CIFS customer equipment 130, this within the consideration.When second customer equipment 130 was a NFS customer equipment 130, file server 110 postponed its response to NFS (or NLM) agreement request message 140, till CIFS first customer equipment 130 responds to " chance locked interrupt " message 140.
In step 533, CIFS first customer equipment 130 receives " chance locked interrupt " message 140 and can respond to message 140 with one of following dual mode:
CIFS first customer equipment 130 can close file 113 (thereby cancellation file locking relevant with File Open): or
All unsettled CIFS that CIFS first customer equipment 130 can clean file 113 write and the bytes range locking request, these the request in customer equipment 130 by partial cache (promptly, it can transmit the result of those file system operations to file server 110), and the pre-read data of the file 113 that obtained of deletion.Make pre-read data invalid owing to second customer equipment 130 may then write new data in file, thereby should delete pre-read data.
In step 534, file server 110 receives response from CIFS first customer equipment 130.
In step 535, file server 110 determines whether CIFS first customer equipment 130 keeps file 113 to open, if then the implicit locking mode that second customer equipment 130 is asked and the new file locking state of file 113 compare.If file server 110 determines to allow to proceed the request of second customer equipment 130, then method proceeds to flow point 540.If file server 110 determines not allowed to proceed the request of second customer equipment 130, refuse this request.
In flow point 540, file server 110 is prepared the request from second customer equipment 130 that permission is mentioned in step 531.
Method of operating (Notification of Changes manager)
Fig. 6 shows the method flow diagram of a Notification of Changes manager in the operation multi-protocol file server.
The Notification of Changes manager of operation in the multi-protocol file server method 600 comprise one group of process steps and flow point of carrying out by file server 110 collaborative at least one customer equipment 130.
In flow point 610, file server 110 prepares to receive file server requests message 140.
In step 611, file server 110 receives a file open request message 140 from a CIFS customer equipment 130, specifies a catalogue simultaneously on file server 110.File server 110 definite CIFS file lockings that should allow this document request of opening and authorize this catalogue to a CIFS customer equipment 130.
In step 612, file server 110 monitors locking from the Notification of Changes request message of the catalogue that reference of a CIFS customer equipment 130 receptions is opened will file locking that open catalogue be converted to change.
In step 613, the change that file server 110 will convert to the file locking of opening catalogue assigned catalogue monitors locking.
In flow point 620, " change monitors " locking has been set up with assigned catalogue and has been got in touch, and prepares to the change of a CIFS customer equipment 130 notices to this catalogue.
In step 621, file server 110 receives a file server requests message 140 from second customer equipment 130, request is changed (change type comprises file movement, file attribute change and the file modification time change between file generation, file delete, file rename, the catalogue) to the change of assigned catalogue thereby cause to first customer equipment, 130 notices.File server requests message 140 from second customer equipment 130 can be CIFS or NFS.Second customer equipment 130 can be any in Unix NFS customer equipment 201, PC NFS customer equipment 202 or the CIFS Windows customer equipment 203.
In step 622, file server 110 notices are occupied first customer equipment 130 to " change monitors " locking of the change described in the step 621, may comprise multinomial, wherein in each catalogue of all having stipulated to be monitored by the file that changed or the title and the change type of sub-directory.If the first such customer equipment 130 exists more than one, then file server 110 is notified the first all customer equipments.
In the file locking field under the WindowsNT operating system environment, Notification of Changes is a known technology.This technology is for example being described in detail in the document of " Windows NT 4.0 " operating system of CIFS IETF regulation about having comprised, can be by being arranged in the File Transfer Protocol of main ftp microsoft.com, directory/developr/drg/CIFS, file cifs6.doc or cifs6.txt, from being positioned at Washington, the Microsoft of Redmond obtains the document, herein with it as a reference.
In flow point 630, file server 110 will be to the Notification of Changes of assigned catalogue the one CIFS customer equipment 130 and preparing for next message 140.
Alternative embodiment
Although disclose most preferred embodiment, it is possible making the various improvement that still belong to the scope of the invention and design, and after having studied this instructions carefully, these improve for described those skilled in the art is lucid.
The technology appendix
Be included in the appended a technology appendix of the application with further information about of the present invention other.This technology appendix comprises 30 pages (comprising accompanying drawing) and quotes as a reference at this.

Claims (38)

1. the method for a file server of an operation, described method is included in one group of customer equipment that uses multiple different file server or file locking agreement and puts teeth in a kind of step of unifying the file locking semantic relation.
2. the method for claim 1 is characterized in that described unified file locking semantic relation comprises the chance locking with following function:
Use first agreement to ask by first customer equipment; And
Second customer equipment that is different from second agreement of described first agreement by use causes the interruption that described chance locks.
3. method as claimed in claim 2 is characterized in that described first agreement comprises CIFS.
4. method as claimed in claim 2 is characterized in that described second agreement comprises NFS or NLM.
5. the method for claim 1 is characterized in that described unified file locking semantic relation comprises step:
According to first message of using the first described agreement, will license to the first described customer equipment to a chance locking that selects files; And
According to second message of using the second described agreement, interrupt described chance locking.
6. method as claimed in claim 5 is characterized in that described interrupt step comprises step:
According to described second message, send a chance locked interrupt message to described first customer equipment;
Postpone the execution of the indicated file system requests of described second message;
From the response of described first customer equipment reception to described chance locked interrupt message; And
After described receiving step, handle and respond described second message.
7. the method for claim 1 is characterized in that described unified file locking semantic relation comprises that the change with following function monitors lockType:
Use first agreement to ask by first customer equipment; And
Second customer equipment that is different from second agreement of described first agreement by use causes a Notification of Changes.
8. method as claimed in claim 7 is characterized in that described first agreement comprises CIFS.
9. method as claimed in claim 7 is characterized in that described second agreement comprises NFS.
10. the method for claim 1 is characterized in that described unified file locking semantic relation comprises step:
According to first message of using the first described agreement, will monitor that locking licenses to the first described customer equipment to the change of a selected catalogue; And
According to using the second described agreement and, sending a Notification of Changes message to described first customer equipment about second message of described selected catalogue.
11. the method for claim 1 is characterized in that the described step that puts teeth in comprises:
Discern multiple different agreement;
According to the message of having used at least a described agreement, provide a kind of unified file locking semantic relation; And
Force all described customer equipments to implement described unified file locking semantic relation.
12. method as claimed in claim 11 is characterized in that described unified file locking semantic relation comprises:
According to first message of using the first described agreement, will license to the first described customer equipment to a chance locking; And
According to second message of using the second described agreement, interrupt described chance locking.
13. method as claimed in claim 12 is characterized in that described interrupt step comprises:
Send a chance locked interrupt message according to described second message to described first customer equipment;
Postpone to carry out a file system requests by described second message indication;
From the response of described first customer equipment reception to described chance locked interrupt message; And
After receiving step, handle and respond described second message.
14. method as claimed in claim 11 is characterized in that the described step that puts teeth in described unified file locking semantic relation comprises:
According to from first customer equipment and use first message of described first agreement to authorize a change to monitor locking; And
Send a Notification of Changes message according to second message of using described second agreement to described first customer equipment.
15. method as claimed in claim 11 is characterized in that the described step that puts teeth in described unified file locking semantic relation comprises:
A selected message of described unified file locking semantic relation is violated in identification; And
Described selected message is made a errored response corresponding to the agreement relevant with described selected message.
16. method as claimed in claim 11 is characterized in that the described step that puts teeth in described unified file locking semantic relation comprises:
Identification is used to obtain to a selected message according to the bytes range locking of the file of described selected agreement, and described bytes range locking has a kind of lockType; And
Test resulting described bytes range locking whether with conflict with a kind of existing locking phase that message generated of or other agreement by using.
17. method as claimed in claim 11 is characterized in that the described step that puts teeth in described unified file locking semantic relation comprises:
Identification is used to open a selected message according to the file of described selected agreement, and described selected message comprises a kind of request access module; And
With by using whether test utilize the described request access module to open described file to conflict with a kind of existing locking phase that message generated of or other agreement.
18. method as claimed in claim 17 is characterized in that
Described selected message comprises a kind of request refusal pattern; And
Comprise test utilize described request refusal pattern open described file whether with by the afoul step of using with a kind of or other agreement of existing locking that message generated.
19. method as claimed in claim 11 is characterized in that the described step that puts teeth in described unified file locking semantic relation comprises:
Identification is used for a selected message that a file according to described selected agreement is read or write, and described selected message comprises a kind of request access module; And
Whether with by using test conflicts with a kind of existing locking phase that message generated of or other agreement to reading or writing of described file.
20. the method for claim 1 is characterized in that the described step that puts teeth in comprises:
Receive first message of using first agreement, described first message can be used for locking an at least a portion that selects files;
Receive to use second message of second agreement, described second message can be used for asking the visit to described part;
Described visit that more described second message is asked and described locking, and if described locking be under an embargo, then refuse described visit.
21. method as claimed in claim 20 is characterized in that described first agreement comprises CIFS.
22. method as claimed in claim 20 is characterized in that described first agreement or described second agreement comprise NLM.
23. method as claimed in claim 20 is characterized in that described second agreement comprises NFS.
24. method as claimed in claim 20 is characterized in that
The step of described second message of described reception comprises being used to discern and is used to obtain to a step according to one second message of the bytes range locking of the file of described second agreement that described bytes range locking has a kind of lockType; And
Described comparison step comprise be used to test resulting described bytes range locking with described lockType whether with by the afoul step of using with a kind of or other agreement of existing locking that message generated.
25. method as claimed in claim 24 is characterized in that described testing procedure is corresponding to being used for described second protocol of messages.
26. method as claimed in claim 24 is characterized in that described testing procedure works under described first agreement constantly at File Open, constantly then works under described second agreement in visit.
27. method as claimed in claim 24 is characterized in that described testing procedure works under described first agreement constantly at File Open, constantly then works under described second agreement in locking request.
28. method as claimed in claim 20 is characterized in that
The step of described second message of described reception comprises being used to discern and is used to open a step according to one second message of the file of described second agreement that described second message comprises a kind of request access module; And
Described comparison step comprise be used to test utilize the described request access module visit described file whether with by the afoul step of using with a kind of or other agreement of existing locking that message generated.
29. method as claimed in claim 20 is characterized in that
The step of described second message of described reception comprises and is used to discern the step that is used for one second message that a file according to described second agreement is read or write; And
Described comparison step comprise be used to test by described second message visit described file whether with by the afoul step of using with a kind of or other agreement of existing locking that message generated.
30. method as claimed in claim 20 is characterized in that
The step of described first message of described reception comprises the step that is used for authorizing according to described first message chance locking; And
Described comparison step comprises the step of interrupting described chance locking according to described second message.
31. method as claimed in claim 30 is characterized in that described interrupt step comprises:
Send a chance locked interrupt message according to described second message to described first customer equipment;
Postpone to carry out a file system requests by described second message indication;
From the response of described first customer equipment reception to described chance locked interrupt message; And
After receiving step, handle and respond described second message.
32. method as claimed in claim 31 is characterized in that the described response of described chance locked interrupt message is comprised a chance locked interrupt acknowledge message or a closing of a file message.
33. ten thousand methods as claimed in claim 1 is characterized in that described file locking semantic relation comprises according to the access module of being asked by first customer equipment that uses first agreement and refusal pattern and a definite locking mode.
34. the method for claim 1 is characterized in that described file locking semantic relation comprises:
According to the access module of asking and refusal pattern and the first definite locking mode by first customer equipment that uses first agreement;
According to the message of second customer equipment of second agreement that is different from described first agreement from use and the second definite locking mode;
More described first locking mode of wherein said file server and described second locking mode.
35. method as claimed in claim 34 is characterized in that the described locking compatibility matrix that relatively comprises.
36. method as claimed in claim 34 is characterized in that the described locking transformation matrix that relatively comprises.
37. method as claimed in claim 34 is characterized in that described second locking mode is in response to a bytes range locking request.
38. method as claimed in claim 34 is characterized in that described second locking mode is in response to the request of a NLM file locking.
CNB991094980A 1999-06-04 1999-06-04 Multi-protocol unified file lockout Expired - Fee Related CN1154054C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB991094980A CN1154054C (en) 1999-06-04 1999-06-04 Multi-protocol unified file lockout

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB991094980A CN1154054C (en) 1999-06-04 1999-06-04 Multi-protocol unified file lockout

Publications (2)

Publication Number Publication Date
CN1276568A true CN1276568A (en) 2000-12-13
CN1154054C CN1154054C (en) 2004-06-16

Family

ID=5273946

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB991094980A Expired - Fee Related CN1154054C (en) 1999-06-04 1999-06-04 Multi-protocol unified file lockout

Country Status (1)

Country Link
CN (1) CN1154054C (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100386731C (en) * 2003-02-28 2008-05-07 微软公司 Method to delay locking of server files on edit
CN102332016A (en) * 2010-09-17 2012-01-25 微软公司 Catalogue chance lock
US8346768B2 (en) 2009-04-30 2013-01-01 Microsoft Corporation Fast merge support for legacy documents
US8352418B2 (en) 2007-11-09 2013-01-08 Microsoft Corporation Client side locking
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8417666B2 (en) 2008-06-25 2013-04-09 Microsoft Corporation Structured coauthoring
US8429753B2 (en) 2008-05-08 2013-04-23 Microsoft Corporation Controlling access to documents using file locks
CN103631915A (en) * 2013-11-29 2014-03-12 华为技术有限公司 Hybrid system file data processing method and system
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US8825594B2 (en) 2008-05-08 2014-09-02 Microsoft Corporation Caching infrastructure
CN104463010A (en) * 2014-10-31 2015-03-25 华为技术有限公司 File lock implementation method and device
CN105897865A (en) * 2016-03-29 2016-08-24 北京轻元科技有限公司 Protocol-independent network file service management system and method
CN106095594A (en) * 2016-06-01 2016-11-09 新浪网技术(中国)有限公司 The method of a kind of resource process, Apparatus and system
CN103631915B (en) * 2013-11-29 2016-11-30 华为技术有限公司 A kind of hybrid system file data processing method and system

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100386731C (en) * 2003-02-28 2008-05-07 微软公司 Method to delay locking of server files on edit
US10394941B2 (en) 2007-11-09 2019-08-27 Microsoft Technology Licensing, Llc Collaborative authoring
US8990150B2 (en) 2007-11-09 2015-03-24 Microsoft Technology Licensing, Llc Collaborative authoring
US8352418B2 (en) 2007-11-09 2013-01-08 Microsoft Corporation Client side locking
US9547635B2 (en) 2007-11-09 2017-01-17 Microsoft Technology Licensing, Llc Collaborative authoring
US10057226B2 (en) 2007-12-14 2018-08-21 Microsoft Technology Licensing, Llc Collaborative authoring modes
US20140373108A1 (en) 2007-12-14 2014-12-18 Microsoft Corporation Collaborative authoring modes
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
US9760862B2 (en) 2008-04-28 2017-09-12 Microsoft Technology Licensing, Llc Conflict resolution
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8429753B2 (en) 2008-05-08 2013-04-23 Microsoft Corporation Controlling access to documents using file locks
CN102016872B (en) * 2008-05-08 2014-04-09 微软公司 Controlling access to documents using file locks
US8825594B2 (en) 2008-05-08 2014-09-02 Microsoft Corporation Caching infrastructure
US8417666B2 (en) 2008-06-25 2013-04-09 Microsoft Corporation Structured coauthoring
US8346768B2 (en) 2009-04-30 2013-01-01 Microsoft Corporation Fast merge support for legacy documents
CN102332016B (en) * 2010-09-17 2013-08-28 微软公司 Catalogue chance lock
CN103399899B (en) * 2010-09-17 2017-04-12 微软技术许可有限责任公司 Directory oplock
CN103399899A (en) * 2010-09-17 2013-11-20 微软公司 Directory oplock
CN102332016A (en) * 2010-09-17 2012-01-25 微软公司 Catalogue chance lock
CN103631915B (en) * 2013-11-29 2016-11-30 华为技术有限公司 A kind of hybrid system file data processing method and system
CN103631915A (en) * 2013-11-29 2014-03-12 华为技术有限公司 Hybrid system file data processing method and system
WO2016065897A1 (en) * 2014-10-31 2016-05-06 华为技术有限公司 File lock implementation method and device
CN104463010A (en) * 2014-10-31 2015-03-25 华为技术有限公司 File lock implementation method and device
CN104463010B (en) * 2014-10-31 2018-06-19 华为技术有限公司 A kind of file lock implementation method and device
CN105897865A (en) * 2016-03-29 2016-08-24 北京轻元科技有限公司 Protocol-independent network file service management system and method
CN105897865B (en) * 2016-03-29 2019-01-11 北京轻元科技有限公司 A kind of network file service management system and method that agreement is unrelated
CN106095594A (en) * 2016-06-01 2016-11-09 新浪网技术(中国)有限公司 The method of a kind of resource process, Apparatus and system
CN106095594B (en) * 2016-06-01 2019-09-27 新浪网技术(中国)有限公司 A kind of method, apparatus and system of resource processing

Also Published As

Publication number Publication date
CN1154054C (en) 2004-06-16

Similar Documents

Publication Publication Date Title
US7143142B1 (en) Method and apparatus for appliance host supported network-based application delivery
RU2444056C1 (en) System and method of speeding up problem solving by accumulating statistical information
JP5809084B2 (en) Network security system and method
US8938781B1 (en) Systems and methods for managing user permissions
CN1379339A (en) Distribution type document system having no service apparatus
US6408298B1 (en) Methods and systems for copying and moving across virtual namespaces
KR101432317B1 (en) Translating role-based access control policy to resource authorization policy
US8881131B2 (en) Method and apparatus for populating a software catalogue with software knowledge gathering
CN1154054C (en) Multi-protocol unified file lockout
US7890626B1 (en) High availability cluster server for enterprise data management
CN1284099C (en) Electronic keying system and use method thereof
US20170353458A1 (en) System and method to allow third-party developer to debug code in customer environment
CN1035192A (en) License management method and system
WO2020168692A1 (en) Mass data sharing method, open sharing platform and electronic device
US20070234345A1 (en) Integrated multi-server installation
US7730535B1 (en) Constraint-based and attribute-based security system for controlling software component interaction
CN1773417A (en) System and method of aggregating the knowledge base of antivirus software applications
CN1299477A (en) File access control in a multi-protocol file server
US7308498B1 (en) System and method for automating a request for access to a restricted computer accessible resource
JP2008538031A (en) Systems, methods, and computer programs that simplify the setup of management and monitoring programs on servers (autonomous computing: management agents that use action policies for operations)
JP2008305405A (en) Multi-protocol unified file-locking
JP2009151751A (en) Method and system for creating and updating approved-file and trusted-domain database
EP1872216A2 (en) System and method for detecting peer-to-peer network software
CN1701315A (en) Database access control method, database access controller, agent processing server
US7536404B2 (en) Electronic files preparation for storage in a server

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: NETAPP incorporated company

Address before: American California

Patentee before: Network Appliance Inc.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040616

Termination date: 20180604