Hashing Patents (Class 711/216)
  • Patent number: 8364933
    Abstract: A computer implemented method searches a unified translation lookaside buffer. Responsive to a request to access the unified translation lookaside buffer, a first order code within a first entry of a search priority configuration register is identified. A unified translation lookaside buffer is then searched according to the first order code for a hashed page entry. If the hashed page entry is not found when searching a unified translation lookaside buffer according to the first order code, a second order code is identified within a second entry of the search priority configuration register. The unified translation lookaside buffer is then searched according to the second order code for the hashed page entry.
    Type: Grant
    Filed: December 18, 2009
    Date of Patent: January 29, 2013
    Assignee: International Business Machines Corporation
    Inventors: Benjamin Herrenschmidt, Jason Michael Hopp, Kenichi Tsuchiya, Maciej Piotr Tyrlik
  • Patent number: 8356020
    Abstract: A lookup is performed using multiple levels of compressed stride tables in a multi-bit Trie structure. An input lookup key is divided into several strides including a current stride of S bits. A valid entry in a current stride table is located by compressing the S bits to form a compressed index of D bits into the current stride table. A compression function logically combines the S bits to generate the D compressed index bits. An entry in a prior-level table points to the current stride table and has a field indicating which compression function and mask to use. Compression functions can include XOR, shifts, rotates, and multi-bit averaging. Rather than store all 2S entries, the current stride table is compressed to store only 2D entries. Ideally, the number of valid entries in the current stride table is between 2D?1 and 2D for maximum compression. Storage requirements are reduced.
    Type: Grant
    Filed: August 13, 2008
    Date of Patent: January 15, 2013
    Assignee: Green Investment Fund, L.L.C.
    Inventor: Millind Mittal
  • Patent number: 8352692
    Abstract: A system and method for storing data in a peer-to-peer network. A computer system includes interconnected hosts configured to store data segments. A first host stores a first subset of the data segments received from other hosts. The first host maintains a portion of a distributed hash table corresponding to the first subset of data segments and de-duplicates the first subset of the data segments against the remaining data segments. The distributed hash table comprises entries corresponding to the data segments, each entry including a data segment fingerprint that unambiguously identifies the corresponding data segment. The first host selects and joins a group of hosts that maintains the distributed hash table. The first host conveys data to the selected group indicating its availability to own additional entries in the distributed hash table.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: January 8, 2013
    Assignee: Symantec Corporation
    Inventor: Kevin Jordan
  • Patent number: 8345685
    Abstract: A device and a method for processing a data packet. The method includes: receiving a key, applying multiple hash functions to provide multiple hashed values; accessing a group of hash tables using the multiple hashed values; associating between the key and an accessed vacant entry of an hash table out of the group of has tables. The device includes a communication controller connected to at least one memory bank; wherein the communication controller is adapted to receive a key associated with a data packet, apply multiple hash functions to provide multiple hashed values; access a group of hash tables stored within the at least one memory bank, using the multiple hashed values; and determine a data packet processing operation in response to a content of accessed entries of the multiple hash tables.
    Type: Grant
    Filed: June 9, 2006
    Date of Patent: January 1, 2013
    Assignee: Ethernety Networks Ltd
    Inventors: Yuval Shavitt, Shai Eshet
  • Patent number: 8335890
    Abstract: Embodiments of the invention relate to associating a source string with a target content unit stored on a content addressable storage (CAS) system. This may be accomplished, in some embodiments, by storing on the CAS system an associative content unit that includes the source string in its binding part and includes the target content unit in its non-binding part.
    Type: Grant
    Filed: November 21, 2011
    Date of Patent: December 18, 2012
    Assignee: EMC Corporation
    Inventors: Mark O'Connell, Michael Kilian
  • Publication number: 20120317395
    Abstract: A CAS data storage method and apparatus comprising: receiving input data including a succession of data items with corresponding logical addresses at a source CAS data storage space for storage therein and for replication at a destination CAS data storage space, generating a hash key for each data item at the source storage space, comparing respective hash keys with hash keys stored at a hash key storage table, to determine whether respective further data items are already present at the destination storage device; transferring respective data items to the destination storage space if no match is made to a hash key stored at the hash key storage table, but not transferring respective further data items if a match is made to a hash key stored at the hash key storage table, thereby transferring to the destination storage space only unique data items.
    Type: Application
    Filed: June 13, 2012
    Publication date: December 13, 2012
    Applicant: XtremlO Ltd.
    Inventors: Yaron SEGEV, Renen HALLAK, Shahar FRANK
  • Patent number: 8332616
    Abstract: The present invention is directed toward methods and systems for data de-duplication. More particularly, in various embodiments, the present invention provides systems and methods for data de-duplication that may utilize a vectoring method for data de-duplication wherein a stream of data is divided into “data sets” or blocks. For each block, a code, such as a hash or cyclic redundancy code may be calculated and stored. The first block of the set may be written normally and its address and hash can be stored and noted. Subsequent block hashes may be compared with previously written block hashes.
    Type: Grant
    Filed: June 6, 2011
    Date of Patent: December 11, 2012
    Inventors: George Saliba, Theron White
  • Patent number: 8332617
    Abstract: An encryption for a distributed global online backup system with global two-stage deduplication in the absence of an indexing database where data blocks are encrypted using their SHA-1 signatures as encryption keys.
    Type: Grant
    Filed: October 7, 2011
    Date of Patent: December 11, 2012
    Assignee: Imation Corp.
    Inventors: Thomas M. Gelson, Alexander Stoev
  • Patent number: 8326599
    Abstract: A computer-implemented system and a method for pruning a library of bi-phrases, suitable for use in a machine translation system are provided. The method includes partitioning a bi-phrase library into a set of sub-libraries. The sub-libraries may be of different complexity such that, when pruning bi-phrases from the plurality of sub-libraries is based on a common noise threshold, a complexity of bi-phrases is taken into account in pruning the bi-phrases.
    Type: Grant
    Filed: April 21, 2009
    Date of Patent: December 4, 2012
    Assignee: Xerox Corporation
    Inventors: Nadi Tomeh, Nicola Cancedda, Marc Dymetman
  • Patent number: 8327060
    Abstract: A mechanism for live migration of virtual machines (VMs) with memory optimizations is disclosed. A method of embodiments of the invention includes receiving a hash value for each of one or more memory pages of a migrating VM from a source host machine, obtaining a hash value for each of one or more memory pages hosted by a target host machine, and comparing the received hash values with the obtained hash values for matches. The method further comprises for each of the received hash values that do not match any of the obtained hash values, sending a negative acknowledgment to the source host machine for that hash value, and for each of the received hash values that do match any of the obtained hash values, using a memory page associated with the matching hash value at the target host machine for the migrating VM.
    Type: Grant
    Filed: November 30, 2009
    Date of Patent: December 4, 2012
    Assignee: Red Hat Israel, Ltd.
    Inventor: Itamar Heim
  • Patent number: 8321648
    Abstract: A technique for routing data for deduplication in a storage server cluster includes computing, for each node in the cluster, a value collectively representative of the data stored on the node, such as a “geometric center” of the node. New or modified data is routed to the node which has stored data identical or most similar to the new or modified data, as determined based on those values. Each node stores a plurality of chunks of data, where each chunk includes multiple deduplication segments. A content hash is computed for each deduplication segment in each node, and a similarity hash is computed for each chunk from the content hashes of all segments in the chunk. A geometric center of a node is computed from the similarity hashes of the chunks stored in the node.
    Type: Grant
    Filed: October 26, 2009
    Date of Patent: November 27, 2012
    Assignee: NetApp, Inc
    Inventor: Michael N. Condict
  • Patent number: 8316213
    Abstract: Systems and methods for managing mapping information for objects maintained in a distributed storage system are provided. The distributed storage system can include a keymap subsystem that manages the mapping information according to object keys. Requests for specific object mapping information are directed to specific keymap coordinators within the keymap subsystem based on a consistency based hashing schema. The hashing schema is updated and distributed to other components within the distributed storage system based on a defined distribution model.
    Type: Grant
    Filed: July 31, 2009
    Date of Patent: November 20, 2012
    Assignee: Amazon Technologies, Inc.
    Inventors: James Christopher Sorenson, III, Gunavardhan Kakulapati, Jason G. McHugh, Allan H. Vermeulen
  • Patent number: 8312250
    Abstract: Described embodiments provide a media controller that determines the size of a cache of data being transferred between a host device and one or more sectors of a storage device. The one or more sectors are segmented into a plurality of chunks, and each chunk corresponds to at least one sector. The contents of the cache are managed in a cache hash table. At startup of the media controller, a buffer layer module of the media controller initializes the cache in a buffer of the media controller. During operation of the media controller, the buffer layer module determines a number of chunks allocated to the cache. Based on the number of chunks allocated to the cache, the buffer layer module updates the size of the of the cache hash table.
    Type: Grant
    Filed: March 12, 2010
    Date of Patent: November 13, 2012
    Assignee: LSI Corporation
    Inventors: Carl Forhan, Timothy Lund
  • Patent number: 8311976
    Abstract: A management apparatus generates leaf page information including one or more records. The management apparatus generates root page information including falsification check information for checking falsification of child page information in position of a child of root page information or a record in position of a child of the root page information, and a serial number of the child page information in the position of the child of the root page information. The management apparatus also generates node page information including falsification check information for checking falsification of child page information in position of a child of node page information or a record in position of a child of the node page information positioned between the root page information and the leaf page information, and a serial number of the child page information in the position of the child of the node page information.
    Type: Grant
    Filed: March 22, 2010
    Date of Patent: November 13, 2012
    Assignee: Brother Kogyo Kabushiki Kaisha
    Inventor: Kentaro Ushiyama
  • Patent number: 8301847
    Abstract: Various embodiments of the present invention manage concurrent accesses to a resource in a parallel computing environment. A plurality of locks is assigned to manage concurrent access to a plurality of parts of a resource. A usage of at least one of the plurality of parts of the resource is monitored. The assignment of the plurality of locks to the plurality of parts of the resource is modified based on the usage that has been monitored.
    Type: Grant
    Filed: February 22, 2011
    Date of Patent: October 30, 2012
    Assignee: International Business Machines Corporation
    Inventors: Paul M. Dantzig, Robert O. Dryfoos, Sastry S. Duri, Arun Iyengar
  • Patent number: 8295861
    Abstract: An apparatus, and an associated methodology, for facilitating paging of a mobile station pursuant to a two-step paging procedure. A unique identifier of the mobile station that is to be paged is hashed into a first group of hashed values and at least a second group of hashed values. The first group of hashed values are used by page message generator to generate a page on a first paging channel. And, the second group of values are used by a page message generator to generate a page on a second paging channel. All of the bits of the unique identifier are sent to page the mobile station. The mobile station determines therefrom whether the mobile station has been paged.
    Type: Grant
    Filed: January 9, 2008
    Date of Patent: October 23, 2012
    Assignee: Research In Motion Limited
    Inventors: William Daniel Willey, Zhijun Cai
  • Patent number: 8295286
    Abstract: Internet Protocol address prefixes are hashed into hash tables allocated memory blocks on demand after collisions occur for both a first hash and a single rehash. The number of memory blocks allocated to each hash table is limited, with additional prefixes handled by an overflow content addressable memory. Each hash table contains only prefixes of a particular length, with different hash tables containing prefixes of different lengths. Only a subset of possible prefix lengths are accommodated by the hash tables, with a remainder of prefixes handled by the content addressable memory or a similar alternate address lookup facility.
    Type: Grant
    Filed: December 31, 2003
    Date of Patent: October 23, 2012
    Assignee: STMicroelectronics, Inc.
    Inventors: Suresh Rajgopal, Lun-bin Huang, Nicholas Julian Richardson
  • Publication number: 20120265962
    Abstract: A method for data storage includes, in a storage device that communicates with a host over a storage interface for executing a storage command in a memory of the storage device, estimating an expected data under-run between fetching data for the storage command from the memory and sending the data over the storage interface. A data size to be prefetched from the memory, in order to complete uninterrupted execution of the storage command, is calculated in the storage device based on the estimated data under-run. The storage command is executed in the memory while prefetching from the memory data of at least the calculated data size.
    Type: Application
    Filed: April 5, 2012
    Publication date: October 18, 2012
    Applicant: ANOBIT TECHNOLOGIES LTD.
    Inventor: Arie Peled
  • Patent number: 8291183
    Abstract: Data de-duplication (“de-dupe”) allows IT organizations to replace aging tape systems with disk-based backup solutions and minimize the storage allocated to backup and data protection. The effectiveness of de-dupe technology is dependent on the data being protected. Data streams with little data repetitiveness provide disappointing results when processed through a block-level de-dupe engine. To avoid this problem, Assisted Mainframe De-Dupe (AMDD) technology can insure that filesystem block-level de-dupe products efficiently de-dupe tape backup streams received from IBM™and/or compatible mainframes. By pre-processing backup tape volumes before sending the data to storage, AMDD insures that large amounts of unchanged data lines up on de-dupe block boundaries each time the data is sent to the de-dupe process engine.
    Type: Grant
    Filed: January 15, 2010
    Date of Patent: October 16, 2012
    Assignee: EMC Corporation
    Inventors: Larry McCloskey, Bruce F. Offhaus, Thomas McCafferty
  • Patent number: 8289971
    Abstract: A method of transmitting data between a plurality of inter-connected elements. The method comprises receiving a message from a first element, said message comprising a routing key plus optionally a data payload. The routing key is processed to identify a plurality of said inter-connected elements, and data is transmitted to said identified plurality of inter-connected elements.
    Type: Grant
    Filed: November 21, 2006
    Date of Patent: October 16, 2012
    Assignee: Cogniscience Limited
    Inventor: Stephen Byram Furber
  • Publication number: 20120260060
    Abstract: A memory device includes a hash table storing a hash value, a bit value, and a page address for each of a plurality of pages, a memory cell unit configured to store the pages and output contents corresponding to the page addresses of the pages having a same hash value, and a controller including a comparator configured to compare the contents output from the memory cell unit and change at least one bit value associated with a respective one of the pages upon determining that the contents of the pages are the same.
    Type: Application
    Filed: April 2, 2012
    Publication date: October 11, 2012
    Inventors: JOO YOUNG HWANG, Hak Soo Yu
  • Publication number: 20120260021
    Abstract: The present disclosure includes devices and methods for data deduplication. One such method includes receiving a write command, transforming data associated with the write command, determining if a transformation value of the data exists in a transformation table, and responsive to a determination that the transformation value does not exist in the transformation table, writing the data associated with the write command to a memory device.
    Type: Application
    Filed: April 8, 2011
    Publication date: October 11, 2012
    Applicant: MICRON TECHNOLOGY, INC.
    Inventor: John C. Rudelic
  • Patent number: 8281151
    Abstract: Various approaches for extracting client's data from a storage provider are presented. In one approach, an auditor is initialized with a verification data set that confirms that an initial version of a data set stored by the storage provider is intact. The auditor extracts a second version of the data set from the storage provider; the second version hides information specified by the data set from the auditor. The auditor determines whether the second version matches the initial version. The second version is returned to the client if the initial version matches the second version. The auditor is prevented from recovering the information specified by the data set using the state information, and the client need not store any state information related to the initial and second versions needed to recover the information specified by the data set. If the initial version does not match the second version, the auditor outputs data indicative of data corruption.
    Type: Grant
    Filed: October 1, 2008
    Date of Patent: October 2, 2012
    Assignee: Hewlett-Packard Development Company L. P.
    Inventors: Mehul A. Shah, Ram Swaminathan
  • Patent number: 8275755
    Abstract: Systems and methods enabling search of a repository for the location of data that is similar to input data, using a defined measure of similarity, in a time that is independent of the size of the repository and linear in a size of the input data, and a space that is proportional to a small fraction of the size of the repository. The similar data segments thus located are further analyzed to determine their common (identical) data sections, regardless of the order and position of the common data sections in the repository and input, and in a time that is linear in the segment size and in constant space.
    Type: Grant
    Filed: March 19, 2009
    Date of Patent: September 25, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael Hirsch, Haim Bitner, Lior Aronovich, Ron Asher, Eitan Bachmat, Shmuel T. Klein
  • Patent number: 8275756
    Abstract: Systems and methods enabling search of a repository for the location of data that is similar to input data, using a defined measure of similarity, in a time that is independent of the size of the repository and linear in a size of the input data, and a space that is proportional to a small fraction of the size of the repository. The similar data segments thus located are further analyzed to determine their common (identical) data sections, regardless of the order and position of the common data sections in the repository and input, and in a time that is linear in the segment size and in constant space.
    Type: Grant
    Filed: March 20, 2009
    Date of Patent: September 25, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael Hirsch, Haim Bitner, Lior Aronovich, Ron Asher, Eitan Bachmat, Shmuel T. Klein
  • Patent number: 8275782
    Abstract: Systems and methods enabling search of a repository for the location of data that is similar to input data, using a defined measure of similarity, in a time that is independent of the size of the repository and linear in a size of the input data, and a space that is proportional to a small fraction of the size of the repository. The similar data segments thus located are further analyzed to determine their common (identical) data sections, regardless of the order and position of the common data sections in the repository and input, and in a time that is linear in the segment size and in constant space.
    Type: Grant
    Filed: March 19, 2009
    Date of Patent: September 25, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael Hirsch, Haim Bitner, Lior Aronovich, Ron Asher, Eitan Bachmat, Shmuel T. Klein
  • Patent number: 8271500
    Abstract: Technologies are described herein for constructing a minimal perfect hash function. According to embodiments, a hash table is constructed by double hashing each of the strings in a set of strings. A computed double hash value is utilized to identify an empty location in the hash table for each string. A signature for each string is stored in the empty location of the hash table identified for the string. In order to obtain a minimal perfect hash value for an input string, the input string is iteratively double hashed until a location is identified in the hash table that contains a signature corresponding to the input string. The minimal perfect hash value is an integer value identifying the location in the hash table that contains the signature corresponding to the input string.
    Type: Grant
    Filed: September 11, 2007
    Date of Patent: September 18, 2012
    Assignee: Microsoft Corporation
    Inventors: Kumar Hemachandra Chellapilla, Anton Mityagin
  • Patent number: 8271750
    Abstract: A data processing system includes a data store having storage locations storing entries which can be used for a variety of purposes, such as operand value prediction, branch prediction, etc. An entry profile store stores profile data for more candidate entries than there are storage locations within the data store. The profile data is used to determine replacement policy for entries within the data store. The profile data can include hash values used to determine whether predictions associated with candidate entries were correct without having to store the full predictions within the profile data.
    Type: Grant
    Filed: January 18, 2008
    Date of Patent: September 18, 2012
    Assignee: ARM Limited
    Inventors: Sami Yehia, Marios Kleanthous
  • Patent number: 8271731
    Abstract: An apparatus and a method operating on data at a server node of a data grid system with distributed cache is described. A coordinator receives a request to change a topology of a cache cluster from a first group of cache nodes to a second group of cache nodes. The request includes a cache node joining or leaving the first group. A key for the second group is rehashed without blocking access to the first group while rehashing.
    Type: Grant
    Filed: February 26, 2010
    Date of Patent: September 18, 2012
    Assignee: Red Hat, Inc.
    Inventor: Manik Surtani
  • Patent number: 8266116
    Abstract: Methods and apparatus for dual hash tables are disclosed. An example method includes logically dividing a hash table data structure into a first hash table and a second hash table, where the first hash table and the second hash table are substantially logically equivalent. The example method further includes receiving a key and a corresponding data value, applying a first hash function to the key to produce a first index to a first bucket in the first hash table, and applying a second hash function to the key to produce a second index to a second bucket in the second hash table. In the example method the key and the data value are inserted in one of the first hash table and the second hash table based on the first index and the second index.
    Type: Grant
    Filed: August 28, 2007
    Date of Patent: September 11, 2012
    Assignee: Broadcom Corporation
    Inventors: Puneet Agarwal, Eric Baden, Jeff Dull, Bruce Kwan
  • Publication number: 20120226889
    Abstract: Aspects of the present invention are directed to system and methods for optimizing identification of locations within a search area using hash values. A hash value represents location information in a single dimension format. Computing points around some location includes calculating an identification boundary that surrounds the location of interest based on the location's hash value. The identification boundary is expanded until it exceeds a search area defined by the location and a distance. Points around the location can be identified based on having associated hash values that fall within the identification boundary. Hashing operations let a system reduce the geometric work (i.e. searching inside boundaries) and processing required, by computing straightforward operations on hash quantities (e.g. searching a linear range of geohashes), instead of, for example, point to point comparisons.
    Type: Application
    Filed: March 1, 2011
    Publication date: September 6, 2012
    Inventors: Dwight Merriman, Eliot Horowitz
  • Patent number: 8261020
    Abstract: In response to a request including a state object, which can indicate a state of an enumeration of a cache, the enumeration can be continued by using the state object to identify and send cache data. Also, an enumeration of cache units can be performed by traversing a data structure that includes object nodes, which correspond to cache units, and internal nodes. An enumeration state stack can indicate a current state of the enumeration, and can include state nodes that correspond to internal nodes in the data structure. Additionally, a cache index data structure can include a higher level table and a lower level table. The higher level table can have a leaf node pointing to the lower level table, and the lower level table can have a leaf node pointing to one of the cache units. Moreover, the lower level table can be associated with a tag.
    Type: Grant
    Filed: May 21, 2009
    Date of Patent: September 4, 2012
    Assignee: Microsoft Corporation
    Inventors: Muralidhar Krishnaprasad, Sudhir Mohan Jorwekar, Sharique Muhammed, Subramanian Muralidhar, Anil K. Nori
  • Patent number: 8255650
    Abstract: Systems and methods are provided for capturing a complete baseline image of the operating environment of a host computer system on an external storage device and for generating incremental backups of the operating environment as changes to the operating environment are identified to create an aggregate baseline image of the operating environment of the host computer system. The external storage device can be disconnected from the host computer system and connected to a remote host where the aggregate baseline image can be used launch a remote host environment on a virtual machine running on the remote host. The remote host environment allows a user to make changes to the remote host environment and the changes can be written back to external storage device as a delta image that is included in the aggregate baseline image. The aggregate baseline image can then be synchronized with the native host.
    Type: Grant
    Filed: August 23, 2010
    Date of Patent: August 28, 2012
    Assignee: Iomega Corporation
    Inventors: Brian R. Gruttadauria, Michael Fisher, Wang Xiaogang, Minqiang Wu
  • Patent number: 8255434
    Abstract: Method and apparatus for storing data in a reduced redundancy form. Binary Large Objects (BLOBs) are partitioned into subblocks according to a partitioning method, and the subblocks are stored in subblock clusters. Each BLOB is represented as a list of spans of subblocks which identifies a contiguous sequence of subblocks within a cluster. Storage redundancy can be reduced because the spans of two different BLOBs can refer to the same subblocks. An index may be used to map subblock hashes to subblock cluster numbers.
    Type: Grant
    Filed: September 7, 2010
    Date of Patent: August 28, 2012
    Inventor: Ross Neil Williams
  • Patent number: 8255201
    Abstract: Disclosed is a method of recognizing a process in a full-system Instruction Set Architecture (ISA) emulator, comprising the steps of: recognizing a process based on a base address of a page table thereof, recognizing the switch between the processes when said base address of the page table has changed, recognizing the termination of a recorded process when the base address of the page table of the process which tries to modify the page table is not equal to the base address of the page table of the recorded process in the page table. With the recognized process, the binary translation results indexed based on content can be saved into a corresponding process repository, thereby achieving the permanent saving of the translation results and the reuse of translation and optimization on the basis of a previously executed program. Consequently, the overall performance of the full-system Industry Standard Architecture emulator is enhanced.
    Type: Grant
    Filed: April 23, 2008
    Date of Patent: August 28, 2012
    Assignee: International Business Machines Corporation
    Inventors: Hua Yong Wang, Kun Wang, Honesty Young
  • Patent number: 8254571
    Abstract: A halting key derivation function is provided. A setup process scrambles a user-supplied password and a random string in a loop. When the loop is halted by user input, the setup process may generate verification information and a cryptographic key. The key may be used to encrypt data. During a subsequent password verification and key recovery process, the verification information is retrieved, a user-supplied trial password obtained, and both are used together to recover the key using a loop computation. During the loop, the verification process repeatedly tests the results produced by the looping scrambling function against the verification information. In case of match, the trial password is correct and a cryptographic key matching the key produced by the setup process may be generated and used for data decryption. As long as there is no match, the loop may continue indefinitely until interrupted exogenously, such as by user input.
    Type: Grant
    Filed: December 21, 2007
    Date of Patent: August 28, 2012
    Assignee: Voltage Security, Inc.
    Inventor: Xavier Boyen
  • Patent number: 8250081
    Abstract: A database structure (400) stores data representing a plurality of resource identifiers (200) such as URLs in a computing system. The URLs (200) are each associated with a respective category code (310). Each of resource identifiers (200) is hashed to provide a hash value (300) which is divided into at least first and second hash portions (301, 302). The first hash portions (301) index a main hash array (410) to select a main data block (421) in a main data section (420) holding a set of the second hash portions (302) and the respective category codes (310). For security and compactness, optionally the hash value (300) is further divided to provide a third hash portion (303) which is discarded and is not used to access the database (400).
    Type: Grant
    Filed: January 18, 2008
    Date of Patent: August 21, 2012
    Assignee: Websense U.K. Limited
    Inventor: Alistair Nash
  • Patent number: 8244957
    Abstract: A mechanism for dynamic placement of virtual machines (VMs) during live migration based on memory is disclosed. A method of embodiments of the invention includes determining candidate target host machines capable of receiving a VM to be migrated, obtaining a hash value for memory pages of the VM to be migrated, obtaining for each candidate target host machine hash values for shared memory pages utilized by one or more VMs hosted by the candidate target host machine, comparing for each candidate target host machine the hash values for the memory pages of the VM to be migrated with the hash values for the shared memory pages, and adjusting a score in a general selection algorithm for the candidate target host machine with the most identical matches of the hash values for the shared memory pages with the hash values for the memory pages of the VM to be migrated.
    Type: Grant
    Filed: February 26, 2010
    Date of Patent: August 14, 2012
    Assignee: Red Hat Israel, Ltd.
    Inventors: Izik Eidus, Uri Lublin, Michael Tsirkin
  • Patent number: 8244909
    Abstract: A method, apparatus and networking equipment for performing flow hashing is provided. The method may include obtaining, at a network node, a key for a packet; forming, at the network node, a first pseudorandom number as a function of a first polynomial generator and the key; forming, at the network node, a second pseudorandom number as a function of a second polynomial generator and the key; combining, at the network node, the first and second pseudorandom numbers to form a third pseudorandom number; and selecting, at the network node, as a function of the third pseudorandom number, a path to which to forward the packet.
    Type: Grant
    Filed: June 18, 2009
    Date of Patent: August 14, 2012
    Assignee: Google Inc.
    Inventors: Peter Hanson, Glen Anderson
  • Patent number: 8224792
    Abstract: Method, system, and computer program product embodiments for facilitating deduplication product testing in a computing environment are provided. In one such embodiment, data to be processed through the deduplication product testing is arranged into a single, continuous stream. At least one of a plurality of random modifications are applied to the arranged data in a self-similar pattern exhibiting scale invariance. A plurality of randomly sized subsets of the arranged data modified with the self-similar pattern is mapped into each of a plurality of randomly sized deduplication test files.
    Type: Grant
    Filed: August 28, 2009
    Date of Patent: July 17, 2012
    Assignee: International Business Machines Corporation
    Inventor: Bruce McNutt
  • Patent number: 8225072
    Abstract: Systems and methods for pre-fetching of data in a memory are provided. By pre-fetching stored data from a slower memory into a faster memory, the amount of time required for data retrieval and/or processing may be reduced. First, data is received and pre-scanned to generate a sample fingerprint. Fingerprints stored in a faster memory that are similar to the sample fingerprint are identified. Data stored in the slower memory associated with the identified stored fingerprints is copied into the faster memory. The copied data may be compared to the received data. Various embodiments may be included in a network memory architecture to allow for faster data matching and instruction generation in a central appliance.
    Type: Grant
    Filed: May 20, 2011
    Date of Patent: July 17, 2012
    Assignee: Silver Peak Systems, Inc.
    Inventors: David Anthony Hughes, John Burns
  • Publication number: 20120173845
    Abstract: A distributed caching system for storing and serving information modeled as a graph that includes nodes and edges that define associations or relationships between nodes that the edges connect in the graph.
    Type: Application
    Filed: September 7, 2011
    Publication date: July 5, 2012
    Inventor: Venkateshwaran Venkataramani
  • Publication number: 20120173844
    Abstract: A method and apparatus for determining a cache line in an N-way set associative cache are disclosed. In one example embodiment, a key associated with a cache line is obtained. A main hash is generated using a main hash function on the key. An auxiliary hash is generated using an auxiliary hash function on the key. A bucket in a main hash table residing in an external memory is determined using the main hash. An entry in a bucket in an auxiliary hash table residing in an internal memory is determined using the determined bucket and the auxiliary hash. The cache line in the main hash table is determined using the determined entry in the auxiliary hash table.
    Type: Application
    Filed: December 30, 2010
    Publication date: July 5, 2012
    Inventors: MAGHAWAN PUNDE, Deepak Lala
  • Patent number: 8205065
    Abstract: A system for deduplicating data comprises a card operable to receive at least one data block and a processor on the card that generates a hash for each data block. The system further comprises a first module that determines a processing status for the hash and a second module that discards duplicate hashes and their data blocks and writes unique hashes and their data blocks to a computer readable medium. In one embodiment, the processor also compresses each data block using a compression algorithm.
    Type: Grant
    Filed: March 30, 2009
    Date of Patent: June 19, 2012
    Assignee: Exar Corporation
    Inventor: John Edward Gerard Matze
  • Patent number: 8185717
    Abstract: A system includes a processor with a memory map specifying a user mode region with virtual address translation by a memory management unit and a kernel mode region with direct virtual address translation. The processor executes an application in the user mode region where virtual addresses are not unique. A probe receives trace information from the processor. A host system receives the trace information from the probe. The host system includes a data structure associating a process name, a process identification and a set of instruction counters. Each instruction counter is incremented upon the processing of a designated virtual address within the trace information. A profiling module processes information associated with the process name and set of instruction counters to identify a performance problem in the application.
    Type: Grant
    Filed: July 20, 2009
    Date of Patent: May 22, 2012
    Assignee: MIPS Technologies, Inc.
    Inventor: Bruce J. Ableidinger
  • Publication number: 20120124282
    Abstract: A device for scalable block data storage and retrieval uses content addressing. Data storage devices store data blocks, and are connected over a network to computing modules. The modules comprise control modules and data modules and carry out content addressing for both storage and retrieval. The network defines separate control paths via the control modules and data paths via the data modules.
    Type: Application
    Filed: November 15, 2010
    Publication date: May 17, 2012
    Applicant: XtremlO Ltd.
    Inventors: Shahar FRANK, Erez Webman, Renen Hallak, Kobi Luz, Irit Yadin-Lempel, Yaron Segev
  • Patent number: 8180744
    Abstract: A particular data value is represented as a group of segments stored in corresponding entries of a data structure. Additional data values represented by corresponding groups of segments are written into the data structure. A probability of overwriting segments representing the particular data value increases as a number of the additional data values increase. A correct version of the particular data value is retrieved even though one or more segments representing the particular data value has been overwritten.
    Type: Grant
    Filed: October 1, 2008
    Date of Patent: May 15, 2012
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Vinay Deolalikar, Kave Eshghi
  • Patent number: 8176275
    Abstract: De-duplication operations are applied to mirror volumes. Data stored to a first volume is mirrored to a second volume. The second volume is a virtual volume having a plurality of logical addresses, such that segments of physical storage capacity are allocated for a specified logical address as needed when data is stored to the specified logical address. A de-duplication operation is carried out on the second volume following a split from the first volume. A particular segment of the second volume is identified as having data that is the same as another segment in the second volume or in the same consistency group. A link is created from the particular segment to the other segment and the particular segment is released from the second volume so that physical storage capacity required for the second volume is reduced.
    Type: Grant
    Filed: August 5, 2011
    Date of Patent: May 8, 2012
    Assignee: Hitachi, Ltd.
    Inventor: Yoshiki Kano
  • Patent number: 8176338
    Abstract: Methods are provided for detecting the processing status of data blocks in systems having intermittent connections. A hash value is used at times in place of a block's data content, thereby reducing processing of the block. Hash values may be maintained locally. Blocks collected locally may be stored locally at least until a connection to a server becomes available again. Systems and configured storage media are also provided.
    Type: Grant
    Filed: March 31, 2009
    Date of Patent: May 8, 2012
    Assignee: Symantec Corporation
    Inventor: Russell R. Stringham
  • Patent number: 8171004
    Abstract: Surrogate hashing is described, including initializing one or more variables in a collection, evaluating an address associated with a host, comparing the address to the collection to determine if the address is stored in the collection, and processing the address to hash a file identified by the address if the address is not stored in the collection or determining if another address is indicated by the address if the address is stored in the collection.
    Type: Grant
    Filed: April 5, 2007
    Date of Patent: May 1, 2012
    Assignee: Pinehill Technology, LLC
    Inventor: Charles Kaminski, Jr.