Patents by Inventor John K. Edwards

John K. Edwards 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: 11169972
    Abstract: A technique to name data is disclosed to allow preservation of storage efficiency over a link between a source and a destination in a replication relationship as well as in storage at the destination. The technique allows the source to send named data to the destination once and refer to it by name multiple times in the future, without having to resend the data. The technique also allows the transmission of data extents to be decoupled from the logical containers that refer to the data extents. Additionally, the technique allows a replication system to accommodate different extent sizes between replication source and destination while preserving storage efficiency.
    Type: Grant
    Filed: January 23, 2019
    Date of Patent: November 9, 2021
    Assignee: NetApp Inc.
    Inventors: Blake Lewis, John K. Edwards, Vijay Deshmukh, Kapil Kumar, Rajesh Desai
  • Publication number: 20210149576
    Abstract: A computer-implemented method comprises receiving, at a management container, an indication of a first set of service level objectives for a storage volume; based on the indication, the management container creating the storage volume, wherein the creating the storage volume includes dynamically selecting one or more storage devices from a plurality of storage devices and dynamically allocating, for each respective storage device of the one or more selected storage devices, a number of parcels at the respective storage device to use for the storage volume; in response to data being written to the storage volume, determining, by one or more service containers associated with the one or more selected storage devices, a particular parcel of the allocated parcels to write data to; and writing, by a particular service container of the one or more service containers that is associated with the particular parcel, an encrypted version of the data to the particular parcel.
    Type: Application
    Filed: November 19, 2019
    Publication date: May 20, 2021
    Inventors: John K. Edwards, John Joseph Glen, Todor Ivanov Mollov
  • Publication number: 20210149767
    Abstract: A computer-implemented method comprising: maintaining a tree of an active volume and a tree for each of a plurality of points in time (PiTs) of the volume; wherein each of the trees includes a plurality of map blocks and a plurality of data blocks; wherein each map block references blocks by media pointers; locating a data object that belongs to a snapshot associated with particular PiT of the plurality of PiTs, by: traversing the tree for the particular PiT, starting from a top block of tree for the particular PiT, by using the media pointers, until a map entry in one of the plurality of map blocks in the tree for the particular PiT includes a first indicator or a second indictor; wherein the first indicator indicates that the data object is located; wherein the second indictor indicates an implicit sharing of the data object.
    Type: Application
    Filed: November 19, 2019
    Publication date: May 20, 2021
    Inventors: John K. Edwards, John Joseph Glen, Todor Ivanov Mollov
  • Publication number: 20210117120
    Abstract: A computer-implemented method comprising: receiving, at an endpoint management engine, input arguments that indicate a plurality of endpoint types to be involved in a data movement operation, wherein the plurality of endpoint types includes a source endpoint type associated with a first type of data storage system (DSS), and a destination endpoint type associated with a second type of DSS; in response to the input arguments, the endpoint management engine making at least one call to an API; in response to the at least one call to the API: associating a source endpoint of the source endpoint type with a source DSS, wherein the source DSS is the first type of DSS; associating a destination endpoint of the destination endpoint type with a destination DSS, wherein the destination DSS is the second type of DSS; and the endpoint management engine causing the data movement operation to be performed between the source DSS and the destination DSS.
    Type: Application
    Filed: October 22, 2019
    Publication date: April 22, 2021
    Inventors: John K. Edwards, Michael L. Federwisch, Steven R. Klieman
  • Patent number: 10896257
    Abstract: In an embodiment, a secure boot method comprises writing a wrapped data encryption key (DEK) and a wrapped key encryption key (KEK) onto a label of a wrapped operating system image prior to uploading the wrapped operating system image to a virtual data center using one or more computing devices.
    Type: Grant
    Filed: March 23, 2018
    Date of Patent: January 19, 2021
    Assignee: VMware, Inc.
    Inventors: Jason A. Lango, Adam Cain, Nitin Bahadur, John K. Edwards, Kevin George, William McGovern, Andrew G. Tucker
  • Publication number: 20190155793
    Abstract: A technique to name data is disclosed to allow preservation of storage efficiency over a link between a source and a destination in a replication relationship as well as in storage at the destination. The technique allows the source to send named data to the destination once and refer to it by name multiple times in the future, without having to resend the data. The technique also allows the transmission of data extents to be decoupled from the logical containers that refer to the data extents. Additionally, the technique allows a replication system to accommodate different extent sizes between replication source and destination while preserving storage efficiency.
    Type: Application
    Filed: January 23, 2019
    Publication date: May 23, 2019
    Inventors: Blake Lewis, John K. Edwards, Vijay Deshmukh, Kapil Kumar, Rajesh Desai
  • Patent number: 10223375
    Abstract: A technique to name data is disclosed to allow preservation of storage efficiency over a link between a source and a destination in a replication relationship as well as in storage at the destination. The technique allows the source to send named data to the destination once and refer to it by name multiple times in the future, without having to resend the data. The technique also allows the transmission of data extents to be decoupled from the logical containers that refer to the data extents. Additionally, the technique allows a replication system to accommodate different extent sizes between replication source and destination while preserving storage efficiency.
    Type: Grant
    Filed: September 20, 2011
    Date of Patent: March 5, 2019
    Assignee: NetApp, Inc.
    Inventors: Blake Lewis, John K. Edwards, Vijay Deshmukh, Kapil Kumar, Rajesh Desai
  • Publication number: 20180373879
    Abstract: In an embodiment, a secure boot method comprises writing a wrapped data encryption key (DEK) and a wrapped key encryption key (KEK) onto a label of a wrapped operating system image prior to uploading the wrapped operating system image to a virtual data center using one or more computing devices.
    Type: Application
    Filed: March 23, 2018
    Publication date: December 27, 2018
    Inventors: Jason A. Lango, Adam Cain, Nitin Bahadur, John K. Edwards, Kevin George, William McGovern, Andrew G. Tucker
  • Patent number: 9953168
    Abstract: In an approach, a secure boot process includes two phases. In the first phase an on premises device generates a data encryption key (DEK) with which to encrypt an operating system image and a key encryption key (KEK) with which to wrap the DEK. The on-premises device then utilizes a key management service to wrap the KEK with an account root key and writes the wrapped DEK and wrapped KEK onto a label of the encrypted operating system image. The encrypted operating system image is then uploaded to a virtual data center and merged with an intermediary guest manager image. When the encrypted machine image is used to generate a virtual machine instance, the intermediary guest manager utilizes the key management service to unwrap the KEK. The unwrapped KEK is then used to unwrap the wrapped DEK which is then used to launch the encrypted guest operating system.
    Type: Grant
    Filed: June 26, 2017
    Date of Patent: April 24, 2018
    Assignee: Bracket Computing, Inc.
    Inventors: Jason A. Lango, Adam Cain, Nitin Bahadur, John K. Edwards, Kevin George, William McGovern, Andrew G. Tucker
  • Patent number: 9733867
    Abstract: A storage administrator may maintain location information in separate layers. A data storage system may identify the location of particular data by identifying the virtual location of data, such as the logical extent to which the data belongs. Object stores may maintain mappings of virtual locations to physical locations, such as mappings of extent identifiers to virtual storage objects and mappings of virtual storage objects to storage unit locations. When particular data is relocated to a new location, a storage administrator may update mappings used to translate virtual locations to physical locations, such as an extent-object mapping or an object-storage unit mapping. References to the virtual locations, such as references to logical extent identifiers, may not be updated in response to the relocation of data.
    Type: Grant
    Filed: March 12, 2014
    Date of Patent: August 15, 2017
    Assignee: Bracket Computing, Inc.
    Inventors: Jason A. Lango, John K. Edwards, Nitin Muppalaneni
  • Patent number: 9578064
    Abstract: A computer-implemented process receives a request to utilize one or more virtual data center (VDC) resources at a virtual data center and determines a particular service level applicable to request. Based on the particular service level and mapping information that indicates associations between VDC resource utilization policies and service levels, the process determines a particular VDC resource utilization policy corresponding to the request and causes completion of the request according to the particular VDC resource utilization policy. Another process determines that a resource utilization performance is incompatible with a requested service level and selects a new resource utilization based in part on the resource utilization performance information and mapping information. The process causes data distributed according to a prior resource utilization policy to be distributed according to the new resource utilization policy in one or more resources at a virtual data center.
    Type: Grant
    Filed: March 30, 2016
    Date of Patent: February 21, 2017
    Assignee: Bracket Computing, Inc.
    Inventors: Jason A. Lango, John K. Edwards, Nitin Muppalaneni
  • Patent number: 9454332
    Abstract: A storage system provides highly flexible data layouts that can be tailored to various different applications and use cases. The system defines several types of data containers, including “regions”, “logical extents” and “slabs”. Each region includes one or more logical extents. Allocated to each logical extent is at least part of one or more slabs allocated to the region that includes the extent. Each slab is a set of blocks of storage from one or more physical storage devices. The slabs can be defined from a heterogeneous pool of physical storage. The system also maintains multiple “volumes” above the region layer. Each volume includes one or more logical extents from one or more regions. A foreign LUN can be assimilated into the system by defining slabs as separate portions of the foreign LUN. Layouts of the extents within the regions are not visible to any of the volumes.
    Type: Grant
    Filed: September 6, 2013
    Date of Patent: September 27, 2016
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Steven R. Kleiman
  • Patent number: 9430493
    Abstract: A write allocation technique extends a conventional write allocation procedure employed by a write anywhere file system of a storage system. A write allocator of the file system implements the extended write allocation technique in response to an event in the file system. The extended write allocation technique efficiently allocates blocks, and frees blocks, to and from a virtual volume (vvol) of an aggregate. The aggregate is a physical volume comprising one or more groups of disks, such as RAID groups, underlying one or more vvols of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol also has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space.
    Type: Grant
    Filed: October 24, 2014
    Date of Patent: August 30, 2016
    Assignee: NetApp, Inc.
    Inventor: John K. Edwards
  • Publication number: 20160212176
    Abstract: A computer-implemented process receives a request to utilize one or more virtual data center (VDC) resources at a virtual data center and determines a particular service level applicable to request. Based on the particular service level and mapping information that indicates associations between VDC resource utilization policies and service levels, the process determines a particular VDC resource utilization policy corresponding to the request and causes completion of the request according to the particular VDC resource utilization policy. Another process determines that a resource utilization performance is incompatible with a requested service level and selects a new resource utilization based in part on the resource utilization performance information and mapping information. The process causes data distributed according to a prior resource utilization policy to be distributed according to the new resource utilization policy in one or more resources at a virtual data center.
    Type: Application
    Filed: March 30, 2016
    Publication date: July 21, 2016
    Inventors: JASON A. LANGO, JOHN K. EDWARDS, NITIN MUPPALANENI
  • Patent number: 9335932
    Abstract: Performance information for storage units located at a virtual data center is determined by executing storage administrator logic whose execution is controlled by a management entity different than the virtual data center provider. Performance expectations are automatically determined based on the determined performance information. In response to determining that a particular storage unit is incompatible with performance expectations applicable to the particular storage unit, embodiments cause a reduction in utilization of the particular storage unit. Based on determined performance information, another embodiment determines that a performance pattern indicating a physical co-location of a first storage unit and a second storage unit has occurred.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: May 10, 2016
    Assignee: Bracket Computing, Inc.
    Inventors: Jason A. Lango, John K. Edwards
  • Patent number: 9306978
    Abstract: A computer-implemented process receives a request to utilize one or more virtual data center (VDC) resources at a virtual data center and determines a particular service level applicable to request. Based on the particular service level and mapping information that indicates associations between VDC resource utilization policies and service levels, the process determines a particular VDC resource utilization policy corresponding to the request and causes completion of the request according to the particular VDC resource utilization policy. Another process determines that a resource utilization performance is incompatible with a requested service level and selects a new resource utilization based in part on the resource utilization performance information and mapping information. The process causes data distributed according to a prior resource utilization policy to be distributed according to the new resource utilization policy in one or more resources at a virtual data center.
    Type: Grant
    Filed: March 15, 2013
    Date of Patent: April 5, 2016
    Assignee: Bracket Computing, Inc.
    Inventors: Jason A. Lango, John K. Edwards, Nitin Muppalaneni
  • Patent number: 9170883
    Abstract: A network storage server includes a tool for detecting and fixing errors while the network storage server remains online (available for servicing client requests), which includes enabling a user to approve or disapprove remedial changes before the changes are committed. The technique bypasses the usual consistency point process for new or modified data blocks representing potential remedial changes. At a consistency point, dirty data blocks representing the potential remedial changes are written to a change log file residing outside the volume. The modified data blocks are written in sequential order to logical blocks of the change log file. In response to a user input indicating that a potential change should be committed, the corresponding modified data blocks are read from the change log file in the order in which they were written to the change log file, and they are written to persistent storage in that order.
    Type: Grant
    Filed: June 17, 2014
    Date of Patent: October 27, 2015
    Assignee: NetApp, Inc.
    Inventors: Yong Cho, Maya Palem, Vignesh Sukumar, John K. Edwards, David Grunwald, Andy Kahn
  • Patent number: 9009168
    Abstract: An on-disk storage arrangement increases the number of persistent consistency point images (PCPIs) that may be maintained for a volume of a storage system. The on-disk storage arrangement comprises a novel volume information (volinfo) block representing a root of the volume; the volinfo block is stored at predefined locations on disk and comprises various system wide configuration data. The volinfo block further comprises a data structure configured to provide a level of indirection that increases the number of PCPIs maintainable by a file system executing on the storage system. To that end, the data structure may be organized as an array of pointers, wherein each pointer references a block containing a snapshot root, thereby enabling efficient access to each PCPI maintained by the file system.
    Type: Grant
    Filed: February 21, 2012
    Date of Patent: April 14, 2015
    Assignee: NetApp, Inc.
    Inventors: Emily Eng, Andy C. Kahn, John K. Edwards
  • Patent number: 8990539
    Abstract: A file system layout apportions an underlying physical volume into one or more virtual volumes (vvols) of a storage system. The underlying physical volume is an aggregate comprising one or more groups of disks, such as RAID groups, of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space. Notably, the block allocation structures of a vvol are sized to the vvol, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the vvols. The file system layout extends the file system layout of a conventional write anywhere file layout system implementation, yet maintains performance properties of the conventional implementation.
    Type: Grant
    Filed: November 12, 2013
    Date of Patent: March 24, 2015
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Blake H. Lewis, Robert M. English, Eric Hamilton, Peter F. Corbett
  • Publication number: 20150046504
    Abstract: A write allocation technique extends a conventional write allocation procedure employed by a write anywhere file system of a storage system. A write allocator of the file system implements the extended write allocation technique in response to an event in the file system. The extended write allocation technique efficiently allocates blocks, and frees blocks, to and from a virtual volume (vvol) of an aggregate. The aggregate is a physical volume comprising one or more groups of disks, such as RAID groups, underlying one or more vvols of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol also has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space.
    Type: Application
    Filed: October 24, 2014
    Publication date: February 12, 2015
    Inventor: John K. Edwards