Patents by Inventor Stephen H. Strange

Stephen H. Strange 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: 8041924
    Abstract: A computer storage system is described. A range of volume block numbers (VBNs) is assigned to a volume. A range of storage device block numbers (DBNs) is assigned to each of a plurality of storage devices. A first mapping parameters are created to map a first range of VBN numbers to a first selected range of DBNs using a first portion of a new storage device. A second mapping parameters are created to map a second range of VBN numbers to a second range of DBNs on a second portion of the new storage device.
    Type: Grant
    Filed: December 17, 2009
    Date of Patent: October 18, 2011
    Assignee: NetApp, Inc.
    Inventors: Stephen H. Strange, Scott Schoenthal, Douglas P. Doucette, Srinivasan Viswanathan
  • Patent number: 8041736
    Abstract: A method and system manages ownership information about disks in a storage network without the need for an emulated, partner mode system. The method and system provides for ownership information, including a current owner and a home owner for resources, such as disks, to be stored on each disk in a storage system, as well as to be stored in memory on each storage system node in the network. A further aspect of the invention is a disk homeness application program interface (API), which provides commands that can be utilized by an administrator at a host computer to set, modify and disco play ownership information about each disk in the cluster. Upon a takeover, any node in the network can takeover one or more disks by reading the ownership information stored on the disks or in the tables.
    Type: Grant
    Filed: March 3, 2010
    Date of Patent: October 18, 2011
    Assignee: NetApp, Inc.
    Inventors: Steven S. Watanabe, Stephen H. Strange, Susan M. Coatney
  • Publication number: 20110191780
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Application
    Filed: March 15, 2011
    Publication date: August 4, 2011
    Applicant: NETAPP, INC.
    Inventors: Srinivasan Viswanathan, James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange
  • Patent number: 7979633
    Abstract: The invention features a method for controlling storage of data in a plurality of storage devices each including storage blocks, for example, in a RAID array. The method includes receiving a plurality of write requests associated with data, and buffering the write requests. A file system defines a group of storage blocks, responsive to disk topology information. The group includes a plurality of storage blocks in each of the plurality of storage devices. Each data block of the data to be written is associated with a respective one of the storage blocks, for transmitting the association to the plurality of storage devices.
    Type: Grant
    Filed: April 2, 2004
    Date of Patent: July 12, 2011
    Assignee: NetApp, Inc.
    Inventors: Steven R. Kleiman, Rajesh Sundaram, Douglas P. Doucette, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7930587
    Abstract: A system and method for performing a takeover procedure is disclosed. A plurality of storage system nodes is coupled in a cluster. One or more of the plurality of storage system nodes in the cluster is notified to takeover at least a portion of a writable storage device serviced by another storage system node in the cluster. In response to the notification, the portion of the writable storage device is assimilated into at least one of the notified storage system nodes.
    Type: Grant
    Filed: August 27, 2009
    Date of Patent: April 19, 2011
    Assignee: NetApp, Inc.
    Inventors: Susan M. Coatney, Kayuri Patel, Stephen H. Strange, Steven S. Watanabe
  • Patent number: 7930475
    Abstract: A method for storing data on a plurality of storage devices of a storage system is disclosed. The data is received as data blocks from a plurality of write requests. The data blocks are saved as buffered data for writing to the storage devices in a single write request. An indication is received indicating the available storage blocks on the plurality of storage devices which are available for writing. The buffered data is associated with selected storage blocks of the storage blocks which are available for writing. The buffered data is written to the selected storage blocks in a single write request.
    Type: Grant
    Filed: February 22, 2007
    Date of Patent: April 19, 2011
    Assignee: NetApp, Inc.
    Inventors: Steven R. Kleiman, Rajesh Sundaram, Douglas P. Doucette, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7926059
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Grant
    Filed: May 13, 2009
    Date of Patent: April 12, 2011
    Assignee: NetApp, Inc.
    Inventors: Srinivasan Viswanathan, James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange
  • Patent number: 7711683
    Abstract: A method and system manages ownership information about disks in a storage network without the need for an emulated, partner mode system. The method and system provides for ownership information, including a current owner and a home owner for resources, such as disks, to be stored on each disk in a storage system, as well as to be stored in memory on each storage system node in the network. A further aspect of the invention is a disk homeness application program interface (API), which provides commands that can be utilized by an administrator at a host computer to set, modify and display ownership information about each disk in the cluster. Upon a takeover, any node in the network can takeover one or more disks by reading the ownership information stored on the disks or in the tables.
    Type: Grant
    Filed: November 30, 2006
    Date of Patent: May 4, 2010
    Assignee: NetApp, Inc.
    Inventors: Steven S. Watanabe, Stephen H. Strange, Susan M. Coatney
  • Publication number: 20100095060
    Abstract: A computer storage system is described. A range of volume block numbers (VBNs) is assigned to a volume. A range of storage device block numbers (DBNs) is assigned to each of a plurality of storage devices. A first mapping parameters are created to map a first range of VBN numbers to a first selected range of DBNs using a first portion of a new storage device. A second mapping parameters are created to map a second range of VBN numbers to a second range of DBNs on a second portion of the new storage device.
    Type: Application
    Filed: December 17, 2009
    Publication date: April 15, 2010
    Inventors: Stephen H. Strange, Scott Schoenthal, Douglas P. Doucette, Srinivasan Viswanathan
  • Patent number: 7660966
    Abstract: A storage operating system is configured to assign volume block numbers (VBNs) to a volume. The system has a plurality of disks, and each disk of the plurality of disks is assigned disk block numbers (DBNs). A raidmap is configured to map the VBNs to the DBNs of the plurality of physical disks, the mapping for a particular disk stored in a disk label for the particular disk. The disk label for the particular disk is then written to the particular disk.
    Type: Grant
    Filed: August 2, 2006
    Date of Patent: February 9, 2010
    Assignee: NetApp, Inc.
    Inventors: Stephen H. Strange, Scott Schoenthal, Douglas P. Doucette, Srinivasan Viswanathan
  • Patent number: 7613947
    Abstract: A takeover system and method for high availability in the face of component failures for a multiple-node storage system cluster is provided. When a takeover is triggered either through a loss of cluster heartbeat, or through a user-initiated command, the system of the present invention is configured such that one or more surviving nodes asserts ownership on one or more of the failed node's disks such that all of the disks become locally owned by one of the surviving nodes. An assimilation of the disks into one or more aggregates is performed, and any duplicated file system identification numbers are corrected to avoid errors. As the disks thus appear to be locally owned by the surviving nodes, one or more newly assimilated aggregates are thus exposed to any N-module that interfaces with the surviving nodes.
    Type: Grant
    Filed: November 30, 2006
    Date of Patent: November 3, 2009
    Assignee: NetApp, Inc.
    Inventors: Susan M. Coatney, Kayuri Patel, Stephen H. Strange, Steven S. Watanabe
  • Patent number: 7596712
    Abstract: A method and system for efficiently accessing a pool of mass storage devices are described. In one embodiment of the invention, a primary storage server and a secondary storage server share a pool of mass storage devices. The secondary storage server is configured to provide read-only access to the storage pool of mass storage devices, while the primary storage server is configured to provide read and write access to the pool of mass storage devices.
    Type: Grant
    Filed: March 23, 2006
    Date of Patent: September 29, 2009
    Assignee: Network Appliance, Inc.
    Inventors: Abhijeet P. Gole, Joydeep Sen Sarma, Stephen H. Strange
  • Publication number: 20090222829
    Abstract: A data access request to a file system is decomposed into a plurality of lower-level I/O tasks. A logical combination of physical storage components is represented as a hierarchical set of objects. A parent I/O task is generated from a first object in response to the data access request. A child I/O task is generated from a second object to implement a portion of the parent I/O task. The parent I/O task is suspended until the child I/O task completes. The child I/O task is executed in response to an occurrence of an event that a resource required by the child I/O task is available. The parent I/O task is resumed upon an event indicating completion of the child I/O task. Scheduling of any child I/O task is not conditional on execution of the parent I/O task, and a state diagram regulates the child I/O tasks.
    Type: Application
    Filed: May 13, 2009
    Publication date: September 3, 2009
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7574623
    Abstract: A method and system for recovering data from a “sick” disk are described. One embodiment of the invention relates to a RAID-based storage system that predicts the failure of a disk (e.g., a “sick” disk) in a RAID disk group. Accordingly, the storage system allocates a target disk, selected from several spare disks, to replace the “sick” disk in the RAID disk group upon completion of a disk-to-disk copy operation. Once a target disk has been allocated, a disk-to-disk copy operation is initiated to copy data from the “sick” disk to the target disk, thereby preventing the need to reconstruct data on the “sick” disk if the “sick” disk actually fails. During the disk-to-disk copy operation, client-initiated disk access operations continue to be serviced. Upon completion of the disk-to-disk copy operation, the storage system reconfigures the RAID disk group by swapping the target disk with the “sick” disk.
    Type: Grant
    Filed: April 29, 2005
    Date of Patent: August 11, 2009
    Assignee: Network Appliance, Inc.
    Inventors: Atul Goel, Tomislav Grcanac, Stephen H. Strange, Rajesh Sundaram
  • Patent number: 7546302
    Abstract: A method and system performs a sendhome procedure for giving back resources to a node that had been restored after a takeover of that node's resources is provided. Critical operations that may be running are completed prior to the sendhome process. An ownership module consults information in an ownership table about each resource, e.g. a data container. A data container, such as a root aggregate of the waiting node is identified and sent back first, after which the node is booted. When the node has been successfully booted, the remaining aggregates are sent back one at a time until the full compliment of aggregates has been returned. A veto of the sendhome procedure can be invoked by a subsystem that is performing a critical operation prior to the sendhome of the root aggregate and each individual other aggregate.
    Type: Grant
    Filed: November 30, 2006
    Date of Patent: June 9, 2009
    Assignee: NetApp, Inc.
    Inventors: Susan M. Coatney, Steven S. Watanabe, Stephen H. Strange
  • Patent number: 7539991
    Abstract: The present invention implements an I/O task architecture in which an I/O task requested by the storage manager, for example a stripe write, is decomposed into a number of lower-level asynchronous I/O tasks that can be scheduled independently. Resources needed by these lower-level I/O tasks are dynamically assigned, on an as-needed basis, to balance the load and use resources efficiently, achieving higher scalability. A hierarchical order is assigned to the I/O tasks to ensure that there is a forward progression of the higher-level I/O task and to ensure that resources do not become deadlocked.
    Type: Grant
    Filed: March 21, 2002
    Date of Patent: May 26, 2009
    Assignee: NetApp, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7437727
    Abstract: The present invention implements an I/O task architecture in which an I/O task requested by the storage manager, for example a stripe write, is decomposed into a number of lower-level asynchronous I/O tasks that can be scheduled independently. Resources needed by these lower-level I/O tasks are dynamically assigned, on an as-needed basis, to balance the load and use resources efficiently, achieving higher scalability. A hierarchical order is assigned to the I/O tasks to ensure that there is a forward progression of the higher-level I/O task and to ensure that resources do not become deadlocked.
    Type: Grant
    Filed: March 21, 2002
    Date of Patent: October 14, 2008
    Assignee: Network Appliance, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7254813
    Abstract: The present invention implements an I/O task architecture in which an I/O task requested by the storage manager, for example a stripe write, is decomposed into a number of lower-level asynchronous I/O tasks that can be scheduled independently. Resources needed by these lower-level I/O tasks are dynamically assigned, on an as-needed basis, to balance the load and use resources efficiently, achieving higher scalability. A hierarchical order is assigned to the I/O tasks to ensure that there is a forward progression of the higher-level I/O task and to ensure that resources do not become deadlocked.
    Type: Grant
    Filed: March 21, 2002
    Date of Patent: August 7, 2007
    Assignee: Network Appliance, Inc.
    Inventors: James Leong, Rajesh Sundaram, Douglas P. Doucette, Scott Schoenthal, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7200715
    Abstract: The invention features a method for controlling storage of data in a plurality of storage devices each including storage blocks, for example, in a RAID array. The method includes receiving a plurality of write requests associated with data, and buffering the write requests. A file system defines a group of storage blocks, responsive to disk topology information. The group includes a plurality of storage blocks in each of the plurality of storage devices. Each data block of the data to be written is associated with a respective one of the storage blocks, for transmitting the association to the plurality of storage devices.
    Type: Grant
    Filed: March 21, 2002
    Date of Patent: April 3, 2007
    Assignee: Network Appliance, Inc.
    Inventors: Steven R. Kleiman, Rajesh Sundaram, Douglas P. Doucette, Stephen H. Strange, Srinivasan Viswanathan
  • Patent number: 7143235
    Abstract: A technique forecasts the behavior of a RAID subsystem when processing a proposed configuration management request that modifies a topology or attribute configuration, e.g., RAID groups and volume layout, of a storage array managed by the subsystem. In response to the proposed request, the RAID subsystem returns a set of projected result data instead of committing the request to the storage array configuration. An operator issues the proposed request in accordance with a novel view-only mode of a configuration management command. The view-only mode is manifested as an “-n” option that instructs a configuration thread of the RAID subsystem to return pre-committed results without actually committing the modification.
    Type: Grant
    Filed: March 21, 2003
    Date of Patent: November 28, 2006
    Assignee: Network Appliance, Inc.
    Inventors: Steven S. Watanabe, Stephen H. Strange, Scott Schoenthal