Patents by Inventor Shravan Gaonkar
Shravan Gaonkar has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Publication number: 20230083752Abstract: Systems, methods, and computer-readable media are provided for utilizing distributed erasure encoding in a redundant array of independent disks (RAID) system. An example method can include generating a plurality of virtual redundant array of independent disk (vRAID) stripes, each of the plurality of vRAID stripes including a segment having a plurality of data, each of the plurality of data including metadata, the metadata including a checksum of a corresponding data of the plurality of data, distributing the segment of each of the plurality of vRAID stripes over a plurality of virtual nodes, mapping at least one of logical files, volumes, or objects to the plurality of data chunks and the at least one parity chunk of the plurality of vRAID stripes to avoid write-hole issues, and verifying data integrity of the corresponding data of the plurality of data using the checksum of the corresponding data.Type: ApplicationFiled: September 15, 2021Publication date: March 16, 2023Inventors: Sandip Agarwala, Shravan Gaonkar
-
Patent number: 11599412Abstract: Systems, methods, and computer-readable media are provided for utilizing distributed erasure encoding in a redundant array of independent disks (RAID) system. An example method can include generating a plurality of virtual redundant array of independent disk (vRAID) stripes, each of the plurality of vRAID stripes including a segment having a plurality of data, each of the plurality of data including metadata, the metadata including a checksum of a corresponding data of the plurality of data, distributing the segment of each of the plurality of vRAID stripes over a plurality of virtual nodes, mapping at least one of logical files, volumes, or objects to the plurality of data chunks and the at least one parity chunk of the plurality of vRAID stripes to avoid write-hole issues, and verifying data integrity of the corresponding data of the plurality of data using the checksum of the corresponding data.Type: GrantFiled: September 15, 2021Date of Patent: March 7, 2023Assignee: Cisco Technology, Inc.Inventors: Sandip Agarwala, Shravan Gaonkar
-
Patent number: 11347694Abstract: In one embodiment, a device performs a plurality of iterations of write operations on portions of a file tree of a file system to a first storage cluster, each write operation flagging the written portion of the file tree with a generation identifier indicative of the associated iteration of the write operations. The device identifies a set of the written portions of the file tree as unsynchronized between the first storage cluster and a second storage cluster by performing a search for changes made to the written portions of the file tree between a generation identifier associated with the first storage cluster and a generation identifier associated with the second storage cluster. The device synchronizes the first and second storage clusters by sending, via a network, the unsynchronized portions of the file tree from the first storage cluster to the second storage cluster.Type: GrantFiled: July 26, 2019Date of Patent: May 31, 2022Assignee: Cisco Technology, Inc.Inventors: Shravan Gaonkar, Smit Shah, Sandip Agarwala, Arif Yakub Patel
-
Patent number: 11249899Abstract: Techniques for filesystem management for cloud object storage are described. In one embodiment, a method includes writing, by a filesystem layer, a plurality of entries to a log structured file tree, including filesystem metadata and filesystem data. The method includes performing a flush operation of the entries from the filesystem layer to one or more objects in a distributed cloud object storage layer. The method includes storing the filesystem metadata and the filesystem data to the one or more objects in the distributed cloud object storage layer. The method further includes storing flush metadata generated during each flush operation, including a flush sequence number associated with each flush operation. Each object of the one or more objects in the distributed cloud object storage layer is identified by a key that identifies the flush sequence number, an object identifier, and a rebirth identifier.Type: GrantFiled: September 19, 2018Date of Patent: February 15, 2022Assignee: CISCO TECHNOLOGY, INC.Inventors: Shravan Gaonkar, Mayuresh Vartak
-
Patent number: 11042519Abstract: Systems and methods provide for optimizing data deduplication. A physical storage node can determine a cost of performing each exclusive action of a set of exclusive actions associated with data deduplication for a predetermined number of epochs to populate an exclusive action cost matrix. The node can select an optimal exclusive action from among the set of exclusive actions based on the cost of performing each exclusive action. In response to a random number being below a threshold value, the node can determine a first cost of performing a randomly selected exclusive action from the set of exclusive actions and update the exclusive action cost matrix with the first cost. In response to the random number exceeding the threshold value, the node can determine a second cost of performing the optimal exclusive action and update the exclusive action cost matrix with the second cost.Type: GrantFiled: January 15, 2019Date of Patent: June 22, 2021Assignee: CISCO TECHNOLOGY, INC.Inventors: Sagar Shyam Dixit, Shravan Gaonkar
-
Patent number: 10915499Abstract: Techniques for filesystem durable write operations to cloud object storage are described. In one embodiment, a method includes receiving at least one of a read operation or a write operation from a filesystem layer. The read operation identifies content stored in a distributed content object storage layer that is to be retrieved and the write operation identifies content that is to be stored to the distributed content object storage layer. The method includes converting the read operation into a get operation or the write operation into a put operation. The method further includes storing an index that maps the read or write operation to the get or put operation and includes an association between the content identified by the filesystem layer to objects in the distributed content object storage layer. The method includes sending the get or put operation to the distributed content object storage layer for the identified content.Type: GrantFiled: August 8, 2018Date of Patent: February 9, 2021Assignee: Cisco Technology, Inc.Inventors: Shravan Gaonkar, Mayuresh Vartak
-
Patent number: 10911372Abstract: Techniques for implementing distributed quality of service controls for data transmissions between clusters in a clustered distributed storage system are described. In one embodiment, a method of distributed quality of service control includes establishing a control channel between a first plurality of nodes associated with a first cluster. The method also includes setting a quality of service (QoS) policy for the first plurality of nodes that establishes a QoS parameter for data transmitted over a shared network from the first cluster to a second cluster. The method further includes communicating messages between the first plurality of nodes over the control channel to signal an allocated portion of the QoS parameter for each node. The method also includes transmitting data by the first plurality of nodes of the first cluster to a second plurality of nodes of the second cluster over the shared network according to the allocated portion.Type: GrantFiled: March 29, 2018Date of Patent: February 2, 2021Assignee: Cisco Technology, Inc.Inventor: Shravan Gaonkar
-
Publication number: 20210026810Abstract: In one embodiment, a device performs a plurality of iterations of write operations on portions of a file tree of a file system to a first storage cluster, each write operation flagging the written portion of the file tree with a generation identifier indicative of the associated iteration of the write operations. The device identifies a set of the written portions of the file tree as unsynchronized between the first storage cluster and a second storage cluster by performing a search for changes made to the written portions of the file tree between a generation identifier associated with the first storage cluster and a generation identifier associated with the second storage cluster. The device synchronizes the first and second storage clusters by sending, via a network, the unsynchronized portions of the file tree from the first storage cluster to the second storage cluster.Type: ApplicationFiled: July 26, 2019Publication date: January 28, 2021Inventors: Shravan Gaonkar, Smit Shah, Sandip Agarwala, Arif Yakub Patel
-
Publication number: 20200226107Abstract: Systems and methods provide for optimizing data deduplication. A physical storage node can determine a cost of performing each exclusive action of a set of exclusive actions associated with data deduplication for a predetermined number of epochs to populate an exclusive action cost matrix. The node can select an optimal exclusive action from among the set of exclusive actions based on the cost of performing each exclusive action. In response to a random number being below a threshold value, the node can determine a first cost of performing a randomly selected exclusive action from the set of exclusive actions and update the exclusive action cost matrix with the first cost. In response to the random number exceeding the threshold value, the node can determine a second cost of performing the optimal exclusive action and update the exclusive action cost matrix with the second cost.Type: ApplicationFiled: January 15, 2019Publication date: July 16, 2020Inventors: Sagar Shyam Dixit, Shravan Gaonkar
-
Patent number: 10678699Abstract: Aspects of the subject technology relate to a system configured to receive a request for data associated with a key, identify the key in a first pre-filter in a set of cascading pre-filters for the cache memory, wherein the set of cascading pre-filters is arranged in an order, and store, in response to the key being in the first pre-filter, the key in a second pre-filter in the set of cascading pre-filters, wherein the second pre-filter is next in the order after the first pre-filter.Type: GrantFiled: July 26, 2018Date of Patent: June 9, 2020Assignee: CISCO TECHNOLOGY, INC.Inventors: Sandip Agarwala, Shravan Gaonkar, Ujwala Prabhakar Tulshigiri
-
Publication number: 20200089607Abstract: Techniques for filesystem management for cloud object storage are described. In one embodiment, a method includes writing, by a filesystem layer, a plurality of entries to a log structured file tree, including filesystem metadata and filesystem data. The method includes performing a flush operation of the entries from the filesystem layer to one or more objects in a distributed cloud object storage layer. The method includes storing the filesystem metadata and the filesystem data to the one or more objects in the distributed cloud object storage layer. The method further includes storing flush metadata generated during each flush operation, including a flush sequence number associated with each flush operation. Each object of the one or more objects in the distributed cloud object storage layer is identified by a key that identifies the flush sequence number, an object identifier, and a rebirth identifier.Type: ApplicationFiled: September 19, 2018Publication date: March 19, 2020Inventors: Shravan Gaonkar, Mayuresh Vartak
-
Publication number: 20200050682Abstract: Techniques for filesystem durable write operations to cloud object storage are described. In one embodiment, a method includes receiving at least one of a read operation or a write operation from a filesystem layer. The read operation identifies content stored in a distributed content object storage layer that is to be retrieved and the write operation identifies content that is to be stored to the distributed content object storage layer. The method includes converting the read operation into a get operation or the write operation into a put operation. The method further includes storing an index that maps the read or write operation to the get or put operation and includes an association between the content identified by the filesystem layer to objects in the distributed content object storage layer. The method includes sending the get or put operation to the distributed content object storage layer for the identified content.Type: ApplicationFiled: August 8, 2018Publication date: February 13, 2020Inventors: Shravan Gaonkar, Mayuresh Vartak
-
Publication number: 20200034305Abstract: Aspects of the subject technology relate to a system configured to receive a request for data associated with a key, identify the key in a first pre-filter in a set of cascading pre-filters for the cache memory, wherein the set of cascading pre-filters is arranged in an order, and store, in response to the key being in the first pre-filter, the key in a second pre-filter in the set of cascading pre-filters, wherein the second pre-filter is next in the order after the first pre-filter.Type: ApplicationFiled: July 26, 2018Publication date: January 30, 2020Inventors: Sandip Agarwala, Shravan Gaonkar, Ujwala Prabhakar Tulshigiri
-
Patent number: 10523786Abstract: I/O bandwidth reduction using storage-level common page information is implemented by a storage server, in response to receiving a request from a client for a page stored at a first virtual address, determining that the first virtual address maps to a page that is a duplicate of a page stored at a second virtual address or that the first and second virtual addresses map to a deduplicated page within a storage system, and transmitting metadata to the client mapping the first virtual address to a second virtual address that also maps to the deduplicated page. For one embodiment, the metadata is transmitted in anticipation of a request for the redundant/deduplicated page via the second virtual address. For an alternate embodiment, the metadata is sent in response to a determination that a page that maps to the second virtual address was previously sent to the client.Type: GrantFiled: June 22, 2018Date of Patent: December 31, 2019Assignee: NetApp Inc.Inventors: Deepak Raghu Kenchammana-Hosekote, Michael R. Eisler, Arthur F. Lent, Rahul Iyer, Shravan Gaonkar
-
Publication number: 20190306080Abstract: Techniques for implementing distributed quality of service controls for data transmissions between clusters in a clustered distributed storage system are described. In one embodiment, a method of distributed quality of service control includes establishing a control channel between a first plurality of nodes associated with a first cluster. The method also includes setting a quality of service (QoS) policy for the first plurality of nodes that establishes a QoS parameter for data transmitted over a shared network from the first cluster to a second cluster. The method further includes communicating messages between the first plurality of nodes over the control channel to signal an allocated portion of the QoS parameter for each node. The method also includes transmitting data by the first plurality of nodes of the first cluster to a second plurality of nodes of the second cluster over the shared network according to the allocated portion.Type: ApplicationFiled: March 29, 2018Publication date: October 3, 2019Inventor: Shravan Gaonkar
-
Patent number: 10169169Abstract: Creating and using highly available transaction logs in a distributed storage system is described, where the storage controller functions of the distributed storage system are separated from that of distributed storage system storage media. In an exemplary embodiment, a storage controller server receives a transaction entry at a first storage pool of the distributed storage system. The storage controller server further looks up a transaction log to store the transaction entry, where the transaction log is associated with a second storage pool. The storage controller server routes the transaction entry to the second storage pool, wherein the second storage pool stores the transaction entry.Type: GrantFiled: May 8, 2014Date of Patent: January 1, 2019Assignee: Cisco Technology, Inc.Inventors: Faraz Shaikh, Sandip Agarwala, Abhishek Chaturvedi, Shravan Gaonkar, Mallikarjunan Mahalingam, Smit Shah, Mayuresh Vartak, Praveen Vegulla, Krishna Yadappanavar
-
Publication number: 20180309852Abstract: I/O bandwidth reduction using storage-level common page information is implemented by a storage server, in response to receiving a request from a client for a page stored at a first virtual address, determining that the first virtual address maps to a page that is a duplicate of a page stored at a second virtual address or that the first and second virtual addresses map to a deduplicated page within a storage system, and transmitting metadata to the client mapping the first virtual address to a second virtual address that also maps to the deduplicated page. For one embodiment, the metadata is transmitted in anticipation of a request for the redundant/deduplicated page via the second virtual address. For an alternate embodiment, the metadata is sent in response to a determination that a page that maps to the second virtual address was previously sent to the client.Type: ApplicationFiled: June 22, 2018Publication date: October 25, 2018Inventors: Deepak Raghu KENCHAMMANA-HOSEKOTE, Michael R. EISLER, Arthur F. LENT, Rohul IYER, Shravan GAONKAR
-
Patent number: 10019459Abstract: A distributed storage system called StorFS that performs distributed data deduplication is described. In an exemplary embodiment, a storage controller server determines if there is duplicative data in a distributed storage system. In this embodiment, the storage controller server determines if an entity is duplicated in the distributed storage system in line with an incoming input/output operation. The storage controller server determines if the entity is duplicated in the distributed storage system by receiving the entity and looking up the entity in a data deduplication table. If the entity exists in the data deduplication table, the storage controller server updates the metadata for the entity to point to the duplicate entity.Type: GrantFiled: December 19, 2013Date of Patent: July 10, 2018Inventors: Sandip Agarwala, Shravan Gaonkar, Mallikarjunan Mahalingam, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar
-
Patent number: 10021218Abstract: I/O bandwidth reduction using storage-level common page information is implemented by a storage server, in response to receiving a request from a client for a page stored at a first virtual address, determining that the first virtual address maps to a page that is a duplicate of a page stored at a second virtual address or that the first and second virtual addresses map to a deduplicated page within a storage system, and transmitting metadata to the client mapping the first virtual address to a second virtual address that also maps to the deduplicated page. For one embodiment, the metadata is transmitted in anticipation of a request for the redundant/deduplicated page via the second virtual address. For an alternate embodiment, the metadata is sent in response to a determination that a page that maps to the second virtual address was previously sent to the client.Type: GrantFiled: March 17, 2016Date of Patent: July 10, 2018Assignee: NetApp Inc.Inventors: Deepak Raghu Kenchammana-Hosekote, Michael R. Eisler, Arthur F. Lent, Rahul Iyer, Shravan Gaonkar
-
Patent number: 9990257Abstract: One or more techniques and/or systems are provided for hosting a virtual machine from a snapshot. In particular, a snapshot of a virtual machine hosted on a primary computing device may be created. The virtual machine may be hosted on a secondary computing device using the snapshot, for example, when a failure of the virtual machine on the primary computing device occurs. If a virtual machine type (format) of the snapshot is not supported by the secondary computing device, then the virtual machine within the snapshot may be converted to a virtual machine type supported by the secondary computing device. In this way, the virtual machine may be operable and/or accessible on the secondary computing device despite the failure. Hosting the virtual machine on the secondary computing device provides, among other things, fault tolerance for the virtual machine and/or applications comprised therein.Type: GrantFiled: September 7, 2015Date of Patent: June 5, 2018Assignee: NetApp Inc.Inventors: Eric Paul Forgette, Deepak Kenchammana-Hosekote, Shravan Gaonkar, Arthur Franklin Lent