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

System and method for providing opportunistic file access in a network environment

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1995-06-07
•
Granted: 1997-05-06
•
Expires: 2015-06-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A file allocation and management system for a multi-user network environment is disclosed. At least one server and two or more clients are disposed along the network in communicating via a request/response transfer protocol. Files directed for shared usage among the clients along the network are stored at the server. Each client is adapted to communicate with the server through a plurality of identifier sockets, wherein a first identifier socket is configured for bi-directional communication and a second identifier socket is configured for uni-directional communications initiated by the server. Files normally stored at the server, under appropriate circumstances may be temporarily stored in an internal cache or other memory at each client location, when the file is in use.

Inventors

  • 👤 Hans Hurvig

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 04:49
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0813; G06F16/00; G06F16/10; G06F12/0866; G06F2212/00; G06F2212/31; G06F2212/311; Y; Y10; Y10S; Y10S707/00; Y10S707/953; Y10S707/959; Y10S707/99931; Y10S707/99938

Claims Analysis

Total Claims: 15
Claim 1
Independent Claim 194 words
A method for allocating and managing files in a multi-user network environment of the type having at least one server with a file directed for shared usage, and a plurality of clients interconnected with the server through a network link, each client having at least two identifier sockets, wherein a first identifier socket is configured for bi-directional communication between the client and the server and a second identifier socket is configured for unidirectional communications initiated by the server, the method comprising the steps of: transmitting by the client through said first identifier socket a request to the server for the file; determining by the server whether the file is available to the client for opportunistic access; transmitting by the server the file to the requesting client through the first identifier socket; notifying the client by the server whether the client has an opportunistic lock on the file or whether the file must be maintained at the server; and sending by the server a message to the client through the second identifier socket that the client must relinquish the opportunistic access to the file when the server determines that opportunistic access is no longer available.
Claim 2
Independent Claim 194 words
A method for allocating and managing files in a multi-user network environment of the type having at least one server with a file directed for shared usage, and a plurality of clients interconnected with the server through a network link, each client having at least two identifier sockets, wherein a first identifier socket is configured for bi-directional communication between the client and the server and a second identifier socket is configured for unidirectional communications initiated by the server, the method comprising the steps of: transmitting by the client through said first identifier socket a request to the server for the file; determining by the server whether the file is available to the client for opportunistic access; transmitting by the server the file to the requesting client through the first identifier socket; notifying the client by the server whether the client has an opportunistic lock on the file or whether the file must be maintained at the server; and sending by the server a message to the client through the second identifier socket that the client must relinquish the opportunistic access to the file when the server determines that opportunistic access is no longer available.
Claim 3
Dependent Claim 79 words
The method of claim 1 further comprising the steps of: transmitting by the client through the first identifier socket a notification request to the server that the client is relinquishing access to the file; determining by the server whether the relinquished file is available for opportunistic access by a second client accessing the file; and notifying the second client by the server through the second identifier socket of the second client that the file is available for opportunistic access.
Claim 4
Dependent Claim 37 words
The method of claim 1 further comprising the step of relinquishing by the client the opportunistic lock on the file by transmitting to the server any portions of the file that have been modified by the client.
Claim 5
Dependent Claim 57 words
The method of claim 1 wherein the step of determining whether the file is available to the client for opportunistic access includes the step of referencing an opportunistic file table maintained by the server comprising information related to which clients have open access to the file and whether the file is open for read-only or read-write access.
Claim 6
Dependent Claim 58 words
The method of claim 2 wherein the step of determining whether the file is available to a second client for opportunistic access includes the step of referencing an opportunistic file table maintained by the server comprising information related to which clients have open access to the file and whether the file is open for read-only or read-write access.
Claim 7
Dependent Claim 202 words
A file allocation and management system for a multi-user network environment of the type having at least one server which maintains a file for shared usage at the server and two or more clients that communicate in a request/response protocol, the system comprising: a plurality of identifier sockets at each client, wherein a first identifier socket is configured for bi-directional communication with the server, the bi-directional communication being initiated by a request from the client, and a second identifier socket is configured to receive unidirectional communications initiated by the server; a cache memory at each client, the cache memory being in communication with the server through the first identifier socket, wherein the file is transported between the cache memory and server through the first identifier socket; and a cache controller for controlling the file transport and storage within the cache memory, both the cache controller and the server being disposed to communicate so as to controllably transport the file between the cache memory and the server, wherein the file is transported between the cache memory and the server in dependance upon the number of clients having open access to the file, and whether the file is open for read-only or read-write access.
Claim 8
Dependent Claim 202 words
A file allocation and management system for a multi-user network environment of the type having at least one server which maintains a file for shared usage at the server and two or more clients that communicate in a request/response protocol, the system comprising: a plurality of identifier sockets at each client, wherein a first identifier socket is configured for bi-directional communication with the server, the bi-directional communication being initiated by a request from the client, and a second identifier socket is configured to receive unidirectional communications initiated by the server; a cache memory at each client, the cache memory being in communication with the server through the first identifier socket, wherein the file is transported between the cache memory and server through the first identifier socket; and a cache controller for controlling the file transport and storage within the cache memory, both the cache controller and the server being disposed to communicate so as to controllably transport the file between the cache memory and the server, wherein the file is transported between the cache memory and the server in dependance upon the number of clients having open access to the file, and whether the file is open for read-only or read-write access.
Claim 9
Dependent Claim 37 words
The file allocation and management system of claim 6 wherein the second identifier socket of the clients are configured to receive communication from the server related to whether the clients are permitted opportunistic access to the file.
Claim 10
Dependent Claim 32 words
The file allocation and management system of claim 7 wherein said communication from the server includes a request by the server for a client to release an opportunistic lock on the file.
Claim 11
Dependent Claim 43 words
The file allocation and management system of claim 8 wherein said client is configured to release the opportunistic lock on the file by flushing its cache and transmitting to the server any portions of the file that have been modified by the client.
Claim 12
Dependent Claim 41 words
The file allocation and management system of claim 6 wherein said server maintains an opportunistic file table comprising information related to which clients have said open access to the file and whether the file is open for read-only or read-write access.
Claim 13
Dependent Claim 40 words
The file allocation and management system of claim 10 wherein said server determines if opportunistic access to the file is possible by one or more clients by referencing said opportunistic file table when a client relinquishes access to the file.
Claim 14
Dependent Claim 156 words
A client network driver usable in a multi-user network environment of the type having at least one server which maintains a file for shared usage at the server and two or more clients that communicate in a request/response protocol over a network link, the client network driver comprising: a client network interface operable to receive data packets comprising the file from the network link through a first identifier socket which is configured for bi-directional communication with the server, the bi-directional communication being initiated by a request from the client, and a controller operable to store and maintain the file received by the client network interface through the first identifier socket on a local storage device of the client, and further operable to flush the file from the local storage device in response to a unidirectional communication initiated by the server through a second identifier socket directing the client to release an opportunistic lock on the file.
Claim 15
Dependent Claim 156 words
A client network driver usable in a multi-user network environment of the type having at least one server which maintains a file for shared usage at the server and two or more clients that communicate in a request/response protocol over a network link, the client network driver comprising: a client network interface operable to receive data packets comprising the file from the network link through a first identifier socket which is configured for bi-directional communication with the server, the bi-directional communication being initiated by a request from the client, and a controller operable to store and maintain the file received by the client network interface through the first identifier socket on a local storage device of the client, and further operable to flush the file from the local storage device in response to a unidirectional communication initiated by the server through a second identifier socket directing the client to release an opportunistic lock on the file.

References Cited (Backward Citations)

US4399504A Cited
US4887204A Cited
US5202971A Cited
US5560008A Cited
US5261051A Cited
US5410697A Cited
US5349642A Cited
US5452447A Cited
US5493728A Cited
US5513314A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-05-05 2000-11-04 2001-05-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-05-05 2004-11-04 2005-05-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-05-05 2008-11-04 2009-05-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag