-
公开(公告)号:US10545831B2
公开(公告)日:2020-01-28
申请号:US15414817
申请日:2017-01-25
Applicant: Microsoft Technology Licensing, LLC
Inventor: David Kruse , Vladimir Petter , Lokesh Srinivas Koppolu , David Dion , Mathew George
Abstract: A request identifier is employed with various systems and methods in order to enable an application to pause execution during a failure and subsequently resume execution and communication with a storage system once the failure is resolved. An application residing on a node may attempt to access target data on a storage system. The application sends a request to access the target data. The request may be associated with a request identifier that identifies the application. When the storage system experiences a failure, the application receives a failure notification. The application pauses execution as a result of the notification. When the node reestablishes a connection to the storage system, the application resumes execution using the same request identifier. If the resume request is granted, the application is guaranteed that the target data was not modified during the failure.
-
公开(公告)号:US09654585B2
公开(公告)日:2017-05-16
申请号:US14694640
申请日:2015-04-23
Applicant: Microsoft Technology Licensing, LLC
Inventor: Senthil Rajaram , Neal R. Christiansen , Christian G. Allred , David M. Kruse , Mathew George , Nandagopal Kirubanandan , Sarosh C. Havewala
IPC: H04L12/28 , H04L29/08 , G06F17/30 , G06F12/0891 , H04J1/16
CPC classification number: H04L67/2852 , G06F12/0891 , G06F17/30008 , G06F17/30067 , G06F17/30171 , G06F17/30194 , G06F17/30575 , G06F17/30864 , G06F2212/6042
Abstract: Improved methods and systems for granular opportunistic locking mechanisms (oplocks) are provided for increasing file caching efficiency. Oplocks can be specified with a combination of three possible granular caching intentions: read, write, and/or handle. An oplock can be specified with an identifier that indicates a client/specific caller to avoid breaking the original oplock due to an incompatibility from other requests of the same client. An atomic oplock flag is added to create operations that allow callers to request an atomic open with an oplock with a given file.
-
公开(公告)号:US20170132066A1
公开(公告)日:2017-05-11
申请号:US15414817
申请日:2017-01-25
Applicant: Microsoft Technology Licensing, LLC
Inventor: David Kruse , Vladimir Petter , Lokesh Srinivas Koppolu , David Dion , Mathew George
IPC: G06F11/07
Abstract: A request identifier is employed with various systems and methods in order to enable an application to pause execution during a failure and subsequently resume execution and communication with a storage system once the failure is resolved. An application residing on a node may attempt to access target data on a storage system. The application sends a request to access the target data. The request may be associated with a request identifier that identifies the application. When the storage system experiences a failure, the application receives a failure notification. The application pauses execution as a result of the notification. When the node reestablishes a connection to the storage system, the application resumes execution using the same request identifier. If the resume request is granted, the application is guaranteed that the target data was not modified during the failure.
-
公开(公告)号:US20150229735A1
公开(公告)日:2015-08-13
申请号:US14694640
申请日:2015-04-23
Applicant: Microsoft Technology Licensing, LLC
Inventor: Senthil Rajaram , Neal R. Christiansen , Christian G. Allred , David M. Kruse , Mathew George , Nandagopal Kirubanandan , Sarosh C. Havewala
CPC classification number: H04L67/2852 , G06F12/0891 , G06F17/30008 , G06F17/30067 , G06F17/30171 , G06F17/30194 , G06F17/30575 , G06F17/30864 , G06F2212/6042
Abstract: Improved methods and systems for granular opportunistic locking mechanisms (oplocks) are provided for increasing file caching efficiency. Oplocks can be specified with a combination of three possible granular caching intentions: read, write, and/or handle. An oplock can be specified with an identifier that indicates a client/specific caller to avoid breaking the original oplock due to an incompatibility from other requests of the same client. An atomic oplock flag is added to create operations that allow callers to request an atomic open with an oplock with a given file.
-
公开(公告)号:US09665432B2
公开(公告)日:2017-05-30
申请号:US14454415
申请日:2014-08-07
Applicant: Microsoft Technology Licensing, LLC
Inventor: David Kruse , Vladimir Petter , Lokesh Srinivas Koppolu , David Dion , Mathew George
CPC classification number: G06F11/1438 , G06F11/0727 , G06F11/0751 , G06F11/0772 , G06F11/0793 , G06F11/1443 , G06F11/1479 , H04L67/42
Abstract: A request identifier is employed with various systems and methods in order to enable an application to pause execution during a failure and subsequently resume execution and communication with a storage system once the failure is resolved. An application residing on a node may attempt to access target data on a storage system. The application sends a request to access the target data. The request may be associated with a request identifier that identifies the application. When the storage system experiences a failure, the application receives a failure notification. The application pauses execution as a result of the notification. When the node reestablishes a connection to the storage system, the application resumes execution using the same request identifier. If the resume request is granted, the application is guaranteed that the target data was not modified during the failure.
-
公开(公告)号:US09438696B2
公开(公告)日:2016-09-06
申请号:US13946550
申请日:2013-07-19
Applicant: Microsoft Technology Licensing, LLC
Inventor: David Kruse , Ahmed Mohamed , Mathew George , Pradeep Madhavarapu , Sundar Subbarayan
IPC: G06F15/16 , H04L29/06 , H04L29/08 , G06F17/30 , H04L12/801
CPC classification number: H04L67/42 , G06F17/30194 , H04L29/08072 , H04L47/10 , H04L63/10 , H04L63/123 , H04L67/06 , H04L67/1097 , H04L67/14 , H04L67/147 , H04L69/02 , H04L69/14 , H04L69/18 , H04L69/24 , H04L69/329 , Y02D50/30
Abstract: Described is a data communication protocol, in which a client and server negotiate in a manner that does not require the client to retry negotiation when servers are not capable of the client-desired protocol. In one example implementation, the desired protocol is SMB 2.0 or greater. The protocol describes a create command with possibly additional context data attached for built-in extensibility, and a compound command comprising a plurality of related commands or unrelated commands. A multi-channel command requests data transfer on a separate data channel, a signed capability verification may be used to ensure that a secure connection is established, and the protocol provides the ability to transfer extended error data from the server in response to a request.
-
7.
公开(公告)号:US09246949B2
公开(公告)日:2016-01-26
申请号:US14569988
申请日:2014-12-15
Applicant: Microsoft Technology Licensing, LLC
Inventor: David Matthew Kruse , Mathew George , Iuliu Rus
IPC: H04L29/06
CPC classification number: H04L63/205 , H04L63/08
Abstract: Embodiments of the present disclosure provide for establishing an authenticated session between a client computing device and a remote computing device. In certain embodiments, a connection is established between the client computing device and the remote computing device. Once the connection is established, the client computing device sends a number of requests to the client computing device including a negotiate request, a setup request, and a validation request. In response to the requests, the client computing device receives a number of responses from the remote computing device including a negotiate response, setup response and a validation response. Once the responses have been received, a determination is made as to whether information contained in the validation response matches information contained in the negotiate response. If the information matches, an authenticated session is established between the remote computing device and the client computing device.
Abstract translation: 本公开的实施例提供在客户端计算设备和远程计算设备之间建立认证会话。 在某些实施例中,在客户端计算设备和远程计算设备之间建立连接。 一旦建立了连接,客户端计算设备向客户端计算设备发送多个请求,包括协商请求,建立请求和验证请求。 响应于该请求,客户端计算设备从远程计算设备接收包括协商响应,建立响应和验证响应的多个响应。 一旦接收到响应,就确定包含在验证响应中的信息是否匹配包含在协商响应中的信息。 如果信息匹配,则在远程计算设备和客户端计算设备之间建立认证会话。
-
公开(公告)号:US20150256640A1
公开(公告)日:2015-09-10
申请号:US14720152
申请日:2015-05-22
Applicant: Microsoft Technology Licensing, LLC
Inventor: Mathew George , David M. Kruse , James T. Pinkerton , Thomas E. Jolly
CPC classification number: H04L67/2842 , G06F12/0813 , G06F12/0815 , G06F12/0866 , G06F17/30132 , G06F17/30194 , G06F17/30203 , G06F21/6218 , G06F2212/264 , G06F2212/463 , G06F2221/2141 , H04L67/1097 , H04L67/42
Abstract: A lease system is described herein that allows clients to request a lease to a remote file, wherein the lease permits access to the file across multiple applications using multiple handles without extra round trips to a server. When multiple applications on the same client (or multiple components of the same application) request access to the same file, the client specifies the same lease identifier to the server for each open request or may handle the request from the cache based on the existing lease. Because the server identifies the client's cache at the client level rather than the individual file request level, the client receives fewer break notifications and is able to cache remote files in more circumstances. Thus, by providing the ability to cache data in more circumstances common with modern applications, the lease system reduces bandwidth, improves server scalability, and provides faster access to data.
Abstract translation: 这里描述了允许客户端向远程文件请求租赁的租赁系统,其中租赁允许使用多个句柄跨多个应用访问文件,而不需要对服务器进行额外的往返。 当同一客户端上的多个应用程序(或同一应用程序的多个组件)请求访问同一个文件时,客户机为每个打开的请求指定与服务器相同的租约标识符,或者可以根据现有租约处理来自缓存的请求 。 因为服务器在客户端级别而不是单独的文件请求级别识别客户端的缓存,所以客户端接收到更少的中断通知,并且能够在更多情况下缓存远程文件。 因此,通过提供在现代应用中更常见的情况下缓存数据的能力,租赁系统降低带宽,提高服务器可扩展性,并提供更快速的数据访问。
-
公开(公告)号:US12141099B2
公开(公告)日:2024-11-12
申请号:US17689824
申请日:2022-03-08
Applicant: Microsoft Technology Licensing, LLC
Inventor: Vladimirs Petters , Roopesh Battepati , David Kruse , Mathew George
IPC: G06F16/16 , G06F16/182
Abstract: Examples described herein generally relate to a scalable multi-tier storage system. An entry may be added and/or deleted within the storage system. To delete an entry, the storage system may determine whether the entry corresponds to the file or the directory based on directory metadata, and request deletion of the directory metadata associated with the entry from the directory volume based on determining that the entry corresponds to the directory, and further requesting deletion of the file from a file volume based on a determination that the entry corresponds to the file. To add a file, the storage system may generate directory metadata associated with the entry in the directory volume based on a determination that the entry corresponds to the directory, and may further allocate file metadata in the file volume based on a determination that the entry corresponds to the file.
-
公开(公告)号:US11868477B2
公开(公告)日:2024-01-09
申请号:US17813057
申请日:2022-07-18
Applicant: Microsoft Technology Licensing, LLC
Inventor: Mathew George , Rajsekhar Das , Vladimir Petter
IPC: G06F21/57 , G06F9/50 , G06F9/4401 , G06F21/62
CPC classification number: G06F21/575 , G06F9/4405 , G06F9/5016 , G06F9/5061 , G06F21/6281
Abstract: Some storage systems are configured with VDL (valid data length) type controls that are implemented on a per cluster basis and, in some instances, on a sub-cluster basis, rather than simply a per file basis. In some instances, per-cluster VDL metadata for the storage clusters is stored and referenced at the edge data volume nodes of a distributed network for the storage system rather than, and/or without, storing or synchronizing the per-cluster VDL metadata at a master node that manages the corresponding storage clusters for the different data volume nodes. Sequence controls are also provided and managed by the master node and synchronized with the edge data volume nodes to further control access to data contained in the storage clusters.
-
-
-
-
-
-
-
-
-