Patents Assigned to NetApp
-
Patent number: 9043287Abstract: It is determined that a first data block contains the same data as a second data block. The first data block is associated with a first extent and the second data block is associated with a second extent. In response to determining that the first data block contains the same data as the second data block, the second data block is associated with the first extent and the first data block is disassociated with the second extent.Type: GrantFiled: November 22, 2013Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Subramaniam Periyagaram, Sandeep Yadav, Blake Lewis, Rickard E. Faith, Ashish Prakash, Ram Kesavan, Ananthan Subramanian
-
Patent number: 9043555Abstract: Provided is a method and system for reducing duplicate buffers in buffer cache associated with a storage device. Reducing buffer duplication in a buffer cache includes accessing a file reference pointer associated with a file in a deduplicated filesystem when attempting to load a requested data block from the file into the buffer cache. To determine if the requested data block is already in the buffer cache, aspects of the invention compare a fingerprint that identifies the requested data block against one or more fingerprints identifying a corresponding one or more sharable data blocks in the buffer cache. A match between the fingerprint of the requested data block and the fingerprint from a sharable data block in the buffer cache indicates that the requested data block is already loaded in buffer cache. The sharable data block in buffer cache is used instead thereby reducing buffer duplication in the buffer cache.Type: GrantFiled: February 25, 2009Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Rahul Khona, Subramaniam Periyagaram, Sandeep Yadav, Dnyaneshwar Pawar
-
Patent number: 9043279Abstract: A method and system for allocating shared storage using one or more classification schemes is provided. One allocation method receives a storage request for provisioning storage from a class storage group configurable to share storage with more than one filesystems. Part of fulfilling this request includes associating a class and at least one corresponding storage allocation constraint with the storage request. The one or more storage allocation constraints can be used subsequently to determine if there is a sufficient amount of shared storage in the class storage group to fulfill the request. Accordingly, aspects of the present invention use at least one storage allocation constraint in determining if the storage allocation constraint for the class associated with the storage request allows allocation of shared storage to fulfill the request. When the storage allocation constraint allows, one implementation performs a provisioning of storage from the shared storage in class storage group.Type: GrantFiled: August 31, 2009Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Sakir Yucel, Chatree Sangpachatanaruk
-
Patent number: 9043284Abstract: A method and apparatus for retention of active data stored in memory using multiple indexing systems for data storage. An embodiment of a method for retention of active data in a storage server includes reading data into a first location of a main memory of the storage server. The data in the first location indexes data elements in a long-term data storage in a first manner. The method further provides for copying the data from the first location into a second location in the main memory of the storage server, where the data in the second location indexing the data elements in the long-term data storage in a second manner.Type: GrantFiled: July 3, 2012Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Sandeep Yadav, John Edwards, David Crunwald
-
Patent number: 9043542Abstract: Described is a technique for managing the content of a nonvolatile solid-state memory data cache to improve cache performance while at the same time, and in a complementary manner, providing for automatic wear leveling. A modified circular first-in first-out (FIFO) log/algorithm is generally used to determine cache content replacement. The algorithm is used as the default mechanism for determining cache content to be replaced when the cache is full but is subject to modification in some instances. In particular, data are categorized according to different data classes prior to being written to the cache, based on usage. Once cached, data belonging to certain classes are treated differently than the circular FIFO replacement algorithm would dictate. Further, data belonging to each class are localized to designated regions within the cache.Type: GrantFiled: November 22, 2013Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Jeffrey S. Kimmel, Randy Pafford, Rajesh Sundaram
-
Patent number: 9043573Abstract: Various systems and methods are described for configuring a logical data storage container. In one embodiment, an instruction to perform an operation to modify an attribute of the logical data storage container that is an abstraction of a plurality of pertinent storage containers is received. A translated instruction to perform a sub-operation associated with the operation is transmitted to each of a number of the plurality of pertinent storage containers. A level of success of the performing of the operation on the logical data storage container is detected based on a comparison of a threshold value to a level of success of the performing of the sub-operation on each of the number of the plurality of pertinent storage containers. A report of the detected level of success is communicated.Type: GrantFiled: June 7, 2012Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventor: Michael Reissner
-
Patent number: 9043545Abstract: Various systems and methods are described for configuring a data storage system. In one embodiment, a plurality of actual capacities of a plurality of storage devices of the data storage system are identified and divided into a plurality of capacity slices. The plurality of capacity slices are combined into a plurality of chunks of capacity slices, each having a combination of characteristics of the underlying physical storage devices. The chunks of capacity slices are then mapped to a plurality of logical storage devices. A group of the plurality of logical storage devices is then organized into a redundant array of logical storage devices.Type: GrantFiled: January 4, 2013Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Jeffrey S. Kimmel, Tim Emami
-
Patent number: 9043811Abstract: Two or more virtual machines may be co-located on a same physical machine, and the virtual machines may communicate with each other. To establish efficient communication, memory mapping information for respective virtual machines can be exchanged between the respective virtual machines. An instance of a virtualized network interface can be established, and a direct communications channel can be mapped between respective virtualized network interfaces. Data packet routing information can be updated, such that data packets transferred between two of more co-located virtual machines can be transferred using the virtualized network interface communications channel.Type: GrantFiled: April 15, 2013Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Prashanth Radhakrishnan, Kiran Nenmeli Srinivasan
-
Patent number: 9043292Abstract: The technique introduced here includes a system and method for identifying and mapping duplicate data objects referenced by data objects. The technique illustratively utilizes a hierarchical tree of fingerprints for each data object to compare the data objects and identify duplicate data blocks referenced by the data objects. A progressive comparison of the hierarchical trees starts from a top layer of the hierarchical trees and proceeds toward a base layer. Between the compared data objects (i.e., the compared hierarchical trees), the technique maps matching fingerprints only at the top-most layer of the hierarchical trees at which the fingerprints match. Lower layer matching fingerprints are neither compared nor mapped. Data blocks corresponding to the matching fingerprints are then deleted. Such an identification and mapping technique substantially reduces the amount of mapping metadata stored in data objects that have been subject to deduplication.Type: GrantFiled: June 14, 2011Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Giridhar Appaji Nag Yasa, Nagesh Panyam Chandrasekarasastry
-
Patent number: 9043598Abstract: Systems and methods which facilitate secure multicast communications between any valid node of a cluster using authentication between a node joining the cluster and any single node which is validly part of the cluster are disclosed. In accordance with embodiments, a cluster key is utilized to provide security with respect to intra-cluster communications. The cluster key of embodiments is shared by a node which is already part of the cluster with a node joining the cluster only after these two nodes mutually authenticate one another. The mutual authentication handshake of embodiments implements a protocol in which a session key is calculated by both nodes, thereby providing a secure means by which a cluster key may be shared. Having the cluster key, each node of the cluster is enabled to securely communicate with any other node of the cluster, whether individually (e.g., unicast) or collectively (e.g., multicast), according to embodiments.Type: GrantFiled: May 5, 2014Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventor: Philip Bryan Clay
-
Patent number: 9043288Abstract: Methods and a processing system directed to a file system checker are described. A file system checker performs file system validation by validating a file system's nodes. Each node is associated with two kinds of data: metadata and referenced data. A file system checker may validate one node at a time or a group of nodes contemporaneously (e.g., in parallel). The file system checker uses a dual phase procedure. The first phase includes validating metadata. The second phase includes validating, as appropriate, node type or link count. Dual phase file system checking allows validation of a node without validating referenced data associated with downstream nodes. Where validation of a given node requires validating a downstream node, performing a first phase test on the downstream node is sufficient to validate the given node. Upon completion, the given node may be unlocked for access by external devices and users.Type: GrantFiled: October 27, 2008Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Garrett Arthur Kajmowicz, Richard Jernigan
-
Patent number: 9043277Abstract: Methods and systems that permit file protocols and object protocols to co-exist using a file namespace and an object namespace in a unified storage system are disclosed. Data stored in the unified storage system are file-objects that preserve the behaviors expected by both file clients and object clients.Type: GrantFiled: November 22, 2013Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventor: David Slik
-
Patent number: 9043567Abstract: Machine implemented method and system for generating a disaster recovery copy of an expandable storage volume having a namespace for storing information for accessing data objects stored at a data constituent volume is provided. A transfer operation for transferring a point in time copy of the expandable storage volume from a first location to a second location is generated. Information regarding the expandable storage volume from the first location is retrieved and a destination expandable storage volume is resized to match components of the expandable storage volume at the first location. Thereafter, the point in time copy of the expandable storage volume is transferred from the first location to the second location and configuration information regarding the point in time copy is copied from the first location to the second location.Type: GrantFiled: March 28, 2012Date of Patent: May 26, 2015Assignee: NETAPP, INC.Inventors: Kiran K. Modukuri, Logan R. Jennings
-
Patent number: 9042263Abstract: Methods and systems for collecting, analyzing, and presenting traffic loads in each part of a storage area network are described. These methods and systems account for various resource types, logical access paths, and relationships among different storage environment components. Data traffic flow is managed in terms of resource planning and consumption. The aggregated information is stored, and may be used to estimate future data traffic loads or determine deviations between projected and actual traffic load status from which adjustments may be made to better predict and manage future data traffic load.Type: GrantFiled: April 7, 2008Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Raphael Yahalom, Assaf Levy
-
Patent number: 9043530Abstract: Among other things, one or more techniques and/or systems are provided for storing data within a hybrid storage aggregate comprising a lower-latency storage tier and a higher-latency storage tier. In particular, frequently accessed data, randomly accessed data, and/or short lived data may be stored (e.g., read caching and/or write caching) within the lower-latency storage tier. Infrequently accessed data and/or sequentially accessed data may be stored within the higher-latency storage tier. Because the hybrid storage aggregate may comprise a single logical container derived from the higher-latency storage tier and the lower-latency storage tier, additional storage and/or file system functionality may be implemented across the storage tiers. For example, deduplication functionality, caching functionality, backup/restore functionality, and/or other functionality may be provided through a single file system (or other type of arrangement) and/or a cache map implemented within the hybrid storage aggregate.Type: GrantFiled: April 9, 2012Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Rajesh Sundaram, Douglas Paul Doucette, David Grunwald, Jeffrey S. Kimmel, Ashish Prakash
-
Patent number: 9043802Abstract: Embodiments provide various techniques for dynamic adjustment of a number of threads for execution in any domain based on domain utilizations. In a multiprocessor system, the utilization for each domain is monitored. If a utilization of any of these domains changes, then the number of threads for each of the domains determined for execution may also be adjusted to adapt to the change.Type: GrantFiled: January 8, 2014Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Gokul Nadathur, Manpreet Singh, Grace Ho
-
Patent number: 9042227Abstract: A computer program product having a computer readable medium tangibly recording computer program logic for providing feedback in a network, the computer program product including code to receive first data and second data over the network at a receiving device, code to increment a first counter and a second counter in response to the first data and second data, respectively, code to generate a plurality of feedback signals reflecting states of the first and second counters using at least three bits, the bits defining a set of code points mapped to the states of the first and second counters so that each individual code point represents a different one of the states and each one of the states is represented by one code point, and code to transmit the plurality of feedback signals to a sending device in the network.Type: GrantFiled: January 17, 2012Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventor: Richard M. Scheffenegger
-
Using logical block addresses with generation numbers as data fingerprints for network deduplication
Patent number: 9043430Abstract: The technique introduced here involves using a block address and a corresponding generation number as a “fingerprint” to uniquely identify a sequence of data within a given storage domain. Each block address has an associated generation number which indicates the number of times that data at that block address has been modified. This technique can be employed, for example, to determine whether a given storage server already has the data, and to avoid sending the data to that storage server over a network if it already has the data. It can also be employed to maintain cache coherency among multiple storage nodes.Type: GrantFiled: August 12, 2013Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Michael N. Condict, Steven R. Kleiman -
Patent number: 9043291Abstract: A system and method verifies and restores the consistency of inode to pathname mappings. In a first embodiment, an off-line verification procedure is modified to verify and correct the primary name inode to pathname mapping information within inodes of a file system. In a second embodiment, an on-line file system verification process is modified to verify inode to pathname mapping information upon the loading of each inode within the file system.Type: GrantFiled: January 28, 2010Date of Patent: May 26, 2015Assignee: NetApp, Inc.Inventors: Edward R. Zayas, Thomas Haynes, John Francis Gillono, Andy C. Kahn
-
Publication number: 20150143179Abstract: A system and method for performing a progressive fault injection process to verify software is provided. In some embodiments, the method comprises loading a software product into the memory of a testbed computing system, wherein the software product includes a function and a statement that calls the function. A data structure is updated based on an error domain of the function. The calling statement is executed for each of one or more error return codes of the error domain. For each iteration of the execution, a call of the function by the calling statement is detected, and, in response, an error return code of the one or more error return codes is provided in lieu of executing the function. The software product is monitored to determine a response to the provided error return code. In some embodiments, the error return code to provide is determined by querying the data structure.Type: ApplicationFiled: November 15, 2013Publication date: May 21, 2015Applicant: NETAPP, INC.Inventors: Rajesh Desai, Pranab Patnaik, Ranjit Raveendran