Patents by Inventor John Keith Fullbright

John Keith Fullbright 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).

  • Patent number: 11880280
    Abstract: A plurality of data objects is generated from a data stream received for constructing a backup image. A stream size of the data stream is determined. For each multi-threaded put operation used to write a data object of the plurality of data objects to a cloud storage, a maximum number of threads is determined into which the data object can be separated into a number of parts for simultaneous transmission to the cloud storage. A part size of each part is determined. A number of multi-threaded put operations is determined for writing the plurality of data objects to the cloud storage based, at least in part, on the stream size, the maximum number of threads into which the data object can be separated, and the part size. The plurality of data objects is stored into the cloud storage using the number of multi-threaded put operations.
    Type: Grant
    Filed: August 26, 2022
    Date of Patent: January 23, 2024
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Duane Beaupre, Nilesh Pradeepkumar Maheshwari
  • Patent number: 11863625
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Grant
    Filed: February 21, 2023
    Date of Patent: January 2, 2024
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Publication number: 20230224363
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Application
    Filed: February 21, 2023
    Publication date: July 13, 2023
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Patent number: 11659035
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Grant
    Filed: June 1, 2022
    Date of Patent: May 23, 2023
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Publication number: 20220405173
    Abstract: A plurality of data objects is generated from a data stream received for constructing a backup image. A stream size of the data stream is determined. For each multi-threaded put operation used to write a data object of the plurality of data objects to a cloud storage, a maximum number of threads is determined into which the data object can be separated into a number of parts for simultaneous transmission to the cloud storage. A part size of each part is determined. A number of multi-threaded put operations is determined for writing the plurality of data objects to the cloud storage based, at least in part, on the stream size, the maximum number of threads into which the data object can be separated, and the part size. The plurality of data objects is stored into the cloud storage using the number of multi-threaded put operations.
    Type: Application
    Filed: August 26, 2022
    Publication date: December 22, 2022
    Inventors: John Keith Fullbright, Mark Duane Beaupre, Nilesh PradeepKumar Maheshwari
  • Publication number: 20220294852
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Application
    Filed: June 1, 2022
    Publication date: September 15, 2022
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Patent number: 11442814
    Abstract: A plurality of data objects is generated from a data stream received for constructing a backup image. A stream size of the data stream is determined. For each multi-threaded put operation used to write a data object of the plurality of data objects to a cloud storage, a maximum number of threads is determined into which the data object can be separated into a number of parts for simultaneous transmission to the cloud storage. A part size of each part is determined. A number of multi-threaded put operations is determined for writing the plurality of data objects to the cloud storage based, at least in part, on the stream size, the maximum number of threads into which the data object can be separated, and the part size. The plurality of data objects is stored into the cloud storage using the number of multi-threaded put operations.
    Type: Grant
    Filed: July 3, 2019
    Date of Patent: September 13, 2022
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Duane Beaupre, Nilesh PradeepKumar Maheshwari
  • Patent number: 11375016
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Grant
    Filed: July 8, 2021
    Date of Patent: June 28, 2022
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Publication number: 20210337025
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Application
    Filed: July 8, 2021
    Publication date: October 28, 2021
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Patent number: 11070619
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Grant
    Filed: October 24, 2019
    Date of Patent: July 20, 2021
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Publication number: 20200059516
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Application
    Filed: October 24, 2019
    Publication date: February 20, 2020
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Patent number: 10484471
    Abstract: Technology is disclosed for bridging clouds of computing devices for compute and data storage. The technology can receive a virtual routing table (VRT), wherein the VRT indicates an association with a virtual local area network (VLAN) and defines neighbors for each route wherein at least one neighbor is defined for each of the two different cloud service providers, wherein the route definition creates a private transitive network between the neighbors; receive from a first node a first message destined for a second node; determine that the first message employs the route specified by the VRT; forward the first message to the second node; receive from a third node a second message destined for the second node; determine that the second message does not employ the route specified by the VRT; and fail to forward the second message to the second node.
    Type: Grant
    Filed: May 11, 2015
    Date of Patent: November 19, 2019
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Beaupre, Lee Gates
  • Publication number: 20190324864
    Abstract: A plurality of data objects is generated from a data stream received for constructing a backup image. A stream size of the data stream is determined. For each multi-threaded put operation used to write a data object of the plurality of data objects to a cloud storage, a maximum number of threads is determined into which the data object can be separated into a number of parts for simultaneous transmission to the cloud storage. A part size of each part is determined. A number of multi-threaded put operations is determined for writing the plurality of data objects to the cloud storage based, at least in part, on the stream size, the maximum number of threads into which the data object can be separated, and the part size. The plurality of data objects is stored into the cloud storage using the number of multi-threaded put operations.
    Type: Application
    Filed: July 3, 2019
    Publication date: October 24, 2019
    Inventors: John Keith Fullbright, Mark Duane Beaupre, Nilesh PradeepKumar Maheshwari
  • Patent number: 10372552
    Abstract: A plurality of data objects is generated from a data stream received for constructing a backup image. A stream size of the data stream is determined. For each multi-threaded put operation used to write a data object of the plurality of data objects to a cloud storage, a maximum number of threads is determined into which the data object can be separated into a number of parts for simultaneous transmission to the cloud storage. A part size of each part is determined. A number of multi-threaded put operations is determined for writing the plurality of data objects to the cloud storage based, at least in part, on the stream size, the maximum number of threads into which the data object can be separated, and the part size. The plurality of data objects is stored into the cloud storage using the number of multi-threaded put operations.
    Type: Grant
    Filed: January 13, 2016
    Date of Patent: August 6, 2019
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Mark Duane Beaupre, Nilesh PradeepKumar Maheshwari
  • Patent number: 9946609
    Abstract: A backup tool can manage multi-level backup into a cloud and restoration from the cloud. The backup tool can request a data source to stream backup data to the backup tool, and the backup tool can then generate data objects from the data stream for storing into the cloud. The backup tool generates the data objects in accordance with serialization of the data stream. The order of the data objects resulting from the data stream serialization is encoded into the names of the data objects. In addition, the backup tool encodes the backup level into the object names. With sequencing and backup level encoded into the data object names, the data objects can be stored in the cloud for later restoration.
    Type: Grant
    Filed: May 22, 2015
    Date of Patent: April 17, 2018
    Assignee: NetApp, Inc.
    Inventors: James Namboorikandathil Joseph, John Keith Fullbright, Vijay Srinath
  • Publication number: 20170315801
    Abstract: A project is created in an Integrated Development Environment (IDE) having storage management, wherein the project is associated with at least one developer to develop code artifacts in the project. Allocation, using the storage management of the IDE, is requested of storage for data created in the project during the development of the code artifacts by a plurality of tools of the IDE. Tracking data is maintained within the IDE that tracks a plurality of storage related requests by the plurality of tools of the IDE.
    Type: Application
    Filed: April 28, 2016
    Publication date: November 2, 2017
    Inventors: John Keith Fullbright, Robert Lee Barker, JR., Mark Duane Beaupre, Nilesh PradeepKumar Maheshwari
  • Publication number: 20170199887
    Abstract: A plurality of data objects is generated from a data stream received for constructing a backup image. A stream size of the data stream is determined. For each multi-threaded put operation used to write a data object of the plurality of data objects to a cloud storage, a maximum number of threads is determined into which the data object can be separated into a number of parts for simultaneous transmission to the cloud storage. A part size of each part is determined. A number of multi-threaded put operations is determined for writing the plurality of data objects to the cloud storage based, at least in part, on the stream size, the maximum number of threads into which the data object can be separated, and the part size. The plurality of data objects is stored into the cloud storage using the number of multi-threaded put operations.
    Type: Application
    Filed: January 13, 2016
    Publication date: July 13, 2017
    Inventors: John Keith Fullbright, Mark Duane Beaupre, Nilesh PradeepKumar Maheshwari
  • Publication number: 20160239388
    Abstract: A backup tool can manage multi-level backup into a cloud and restoration from the cloud. The backup tool can request a data source to stream backup data to the backup tool, and the backup tool can then generate data objects from the data stream for storing into the cloud. The backup tool generates the data objects in accordance with serialization of the data stream. The order of the data objects resulting from the data stream serialization is encoded into the names of the data objects. In addition, the backup tool encodes the backup level into the object names. With sequencing and backup level encoded into the data object names, the data objects can be stored in the cloud for later restoration.
    Type: Application
    Filed: May 22, 2015
    Publication date: August 18, 2016
    Inventors: James Namboorikandathil Joseph, John Keith Fullbright, Vijay Srinath
  • Publication number: 20160218991
    Abstract: Systems and methods provision isolated paths from virtual private clouds to corresponding storage virtual machines. In response to a determination that resources for a first tenant of the virtual private cloud are to be provisioned, a subnet for the virtual private cloud is created, where the subnet does not overlap with any other subnet on a network associated with the virtual private cloud. A first VLAN is created on a gateway communicably coupled to the storage server. A first storage virtual machine (SVM) associated with the tenant is created. One or more storage volumes of one or more storage devices are associated with the SVM, where the one or more storage volumes are not allocated to any other SVM.
    Type: Application
    Filed: January 23, 2015
    Publication date: July 28, 2016
    Inventors: Dekel Sharabi, Michael Yakobi, Hili Erel-Gichon, Tzachi Strugo, John Keith Fullbright, Mark Duane Beaupre
  • Patent number: 9383924
    Abstract: Techniques for reclaiming storage space are disclosed herein. According to one embodiment, a storage space reclamation method includes a storage host creating at least one temporary logical container of data in a storage volume managed by a file system of a host so that a predetermined portion of storage capacity of the storage volume is occupied. Access to the storage volume is provided by a network storage controller to the storage host. The storage host translates a host address range for the file system of each temporary logical container of data into a storage controller address range for the network storage controller. The storage host requests the network storage controller to deallocate blocks the locations of which are indicated by the storage controller address range, and then deletes the at least one temporary logical container of data.
    Type: Grant
    Filed: February 27, 2013
    Date of Patent: July 5, 2016
    Assignee: NETAPP, INC.
    Inventors: John Keith Fullbright, Clinton Douglas Knight