Hashing Patents (Class 711/216)
  • Patent number: 7565423
    Abstract: The present invention is directed to a system and method of performing a lookup, self-refreshing and prefetching against a DNS provider that includes a DNS cache and a DNS master. The DNS cache includes a set of address records which are presumptively fresh and the DNS master includes another set of address records which may be updated if their respective IP addresses are not deemed fresh or identified for update based on other factors. A hostname resolution request is first processed by the DNS cache and then by the DNS master to identify a valid IP address for a hostname. If no valid IP address is found, the DNS master retrieves a new IP address for the hostname from a third-party DNS server and then updates the addresses records in the DNS cache and master with the new IP address. Entries in the DNS master are updated from time to time increasing the likelihood that fresh addresses are predominately present and to update the DNS cache.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: July 21, 2009
    Assignee: Google Inc.
    Inventor: Eric Russell Fredricksen
  • Patent number: 7565343
    Abstract: Fixed-length data (560) contained in a database (560) are segmented into a number of pieces of data that are searchable at a time and searching is performed at high speed. As means for it, a pointer table (500), a secondary pointer table, a local table, and a fixed-length-data table are provided, and when more segmentation is required, a table having a numeric-value comparing function is further provided. As means for performing efficient configuration/management of the tables and for performing management that does not interfere with a search operation, an empty-house table (700), an empty-room table (720), a room-management table (740), and a structure-management table (760) may be provided.
    Type: Grant
    Filed: March 31, 2004
    Date of Patent: July 21, 2009
    Assignee: IPT Corporation
    Inventor: Shinpei Watanabe
  • Patent number: 7562214
    Abstract: Detection of an attack on a data processing system. An example method comprising, in the data processing system: providing an initial secret; binding the initial secret to data indicative of an initial state of the system via a cryptographic function; recording state changing administrative actions performed on the system in a log; prior to performing each state changing administrative action, generating a new secret by performing the cryptographic function on a combination of data indicative of the administrative action and the previous secret, and erasing the previous secret; evolving the initial secret based on the log to produce an evolved secret; comparing the evolved secret with the new secret; determining that the system is uncorrupted if the comparison indicates a match between the evolved secret and the new secret; and, determining that the system in corrupted if the comparison indicate a mismatch between the evolved secret and the new secret.
    Type: Grant
    Filed: March 26, 2004
    Date of Patent: July 14, 2009
    Assignee: International Business Machines Corporation
    Inventor: James F. Riordan
  • Publication number: 20090176515
    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: Application
    Filed: January 9, 2008
    Publication date: July 9, 2009
    Applicant: RESEARCH IN MOTION LIMITED
    Inventors: WILLIAM DANIEL WILLEY, ZHIJUN CAI
  • Publication number: 20090158006
    Abstract: A network switching device comprises hardware address table storage space, a priority comparison mechanism, and an address table management mechanism. The hardware address table storage space having a number of entries therein. Each one of the entries within the hardware address table storage space includes respective information designating a priority of a respective source network address. The priority comparison mechanism is configured for comparing the priority designating information of the received packet with the priority designating information of at least a portion of the entries within the hardware address table storage space in response to determining that a number of entries within the hardware address table storage space is equal to a capacity of the hardware address table storage space.
    Type: Application
    Filed: December 12, 2007
    Publication date: June 18, 2009
    Inventor: Scott Nam
  • Patent number: 7543132
    Abstract: A method and apparatus for improved performance for reloading translation look-aside buffers in multithreading, multi-core processors. TSB prediction is accomplished by hashing a plurality of data parameters and generating an index that is provided as an input to a predictor array to predict the TSB page size. In one embodiment of the invention, the predictor array comprises two-bit saturating up-down counters that are used to enhance the accuracy of the TSB prediction. The saturating up-down counters are configured to avoid making rapid changes in the TSB prediction upon detection of an error. Multiple misses occur before the prediction output is changed. The page size specified by the predictor index is searched first. Using the technique described herein, errors are minimized because the counter leads to the correct result at least half the time.
    Type: Grant
    Filed: June 30, 2004
    Date of Patent: June 2, 2009
    Assignee: Sun Microsystems, Inc.
    Inventors: Greg F. Grohoski, Ashley Saulsbury, Paul J. Jordan, Manish Shah, Rabin A. Sugumar, Mark Debbage, Venkatesh Iyengar
  • Patent number: 7539661
    Abstract: Accessed memory locations of a data table are assigned weights based on usage history, and a hash table chains the highest-weight key values to an abbreviated hash index. The hash table includes keys having at least a predetermined weight so that highly accessed keys are identified by hashing. Additionally, the keys chained to a given hash index are ordered based on their weight in order to optimize the overall data retrieval time. The weights assigned to accessed keys are updated over time so that the content of the hash table is adaptively updated to suit the current table look-up requirements.
    Type: Grant
    Filed: June 2, 2005
    Date of Patent: May 26, 2009
    Assignee: Delphi Technologies, Inc.
    Inventor: Ting Z. Wang
  • Publication number: 20090132784
    Abstract: Provided are a cache memory using a linear hash function and a method of operating the same. The cache memory includes: a first hash function module for converting a main memory address received from a central processing unit (CPU) into a first index value using a first hash function; a second hash function module for converting the main memory address into a second index value using a second hash function; a first comparator for comparing a tag value of a data block located at the first index value in the first bank with a tag value of the main memory address; and a second comparator for comparing a tag value of a data block located at the second index value in the second bank with the tag value of the main memory address.
    Type: Application
    Filed: March 28, 2008
    Publication date: May 21, 2009
    Inventors: Jung Keun Lee, Sang Woo Park
  • Publication number: 20090125701
    Abstract: A method and system that aggregates data associated with one or more entities from different data sources are provided. The data sources include documents, web pages, or images that have information about one or more entities. The information is extracted from the data sources based on criteria that define the entities. The extracted information is utilized to generate a hash identifier that corresponds to each entity and one or more storage locations. The one or more storage locations and associated hash identifiers are utilized to store the extracted information corresponding to the entities, and the extracted information for each entity is structured as a virtual page that is stored in an index having references to the data sources. The index storing the virtual pages is notified or updated when the associated data sources are modified.
    Type: Application
    Filed: January 8, 2009
    Publication date: May 14, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Dzmitry Suponau, Jay Girotto, Qiang Wu, Rohit Vishwas Wad, Yue Liu
  • Patent number: 7530115
    Abstract: Access to content addressable data on a network is facilitated using digital information storing devices or data repositories (“silos”) that monitor broadcast data requests over the network. A number of silos automatically monitor both data requests and data itself that are broadcast over a network. The silos selectively store data. Each silo responds to data requests broadcast over the network with data the silo has previously intercepted. A content addressable file scheme is used to enable the data repositories to reliably identify data being requested. When a data request is received, each silo evaluates whether it has all or a portion of the data being requested and responds to requests when it has the data. Requests for data are implemented by broadcasting a cryptographic hash data identifier of the data file needed. The data identifier is used by a silo to determine which data to receive and store.
    Type: Grant
    Filed: August 24, 2005
    Date of Patent: May 5, 2009
    Assignee: EMC Corporation
    Inventors: Paul R. Carpentier, Jan F. Van Riel, Tom Teugels
  • Publication number: 20090113166
    Abstract: In accordance with exemplary embodiments, a flash memory, such as a NAND flash memory, selectively updates blocks based on hash values associated with the blocks, wherein the hashing codes are generated for each block from the software image to be programmed into the flash memory. Selectively updating blocks in accordance with an embodiment of the present invention might reduce re-programming time and potentially destructive pre-mature aging of cells in the flash memory.
    Type: Application
    Filed: October 31, 2007
    Publication date: April 30, 2009
    Applicant: AGERE SYSTEMS INC.
    Inventors: Alexandra Houston, Martin Lohse, Thomas Ostendorf, Sujoy Ray, Kenneth Tuchman
  • Publication number: 20090113167
    Abstract: Data processing apparatus comprising: a chunk store containing specimen data chunks, a manifest store containing at least one manifest that represents at least a part of a data set and that comprises at least one reference to at least one of said specimen data chunks, a sparse chunk index containing information on only those specimen data chunks having a predetermined characteristic, the processing apparatus being operable to process input data into input data chunks and to use the sparse chunk index to identify at least one of said at least one manifest that includes at least one reference to one of said specimen data chunks that corresponds to one of said input data chunks having the predetermined characteristic.
    Type: Application
    Filed: October 22, 2008
    Publication date: April 30, 2009
    Inventors: Peter Thomas Camble, Gregory Trezise, Mark Lillibridge, Kave Eshghi, Vinay Deolalikar
  • Patent number: 7526607
    Abstract: A compression device recognizes patterns of data and compressing the data, and sends the compressed data to a decompression device that identifies a cached version of the data to decompress the data. In this way, the compression device need not resend high bandwidth traffic over the network. Both the compression device and the decompression device cache the data in packets they receive. Each device has a disk, on which each device writes the data in the same order. The compression device looks for repetitions of any block of data between multiple packets or datagrams that are transmitted across the network. The compression device encodes the repeated blocks of data by replacing them with a pointer to a location on disk. The decompression device receives the pointer and replaces the pointer with the contents of the data block that it reads from its disk.
    Type: Grant
    Filed: September 22, 2005
    Date of Patent: April 28, 2009
    Assignee: Juniper Networks, Inc.
    Inventors: Amit P. Singh, Balraj Singh, Vanco Burzevski
  • Patent number: 7526603
    Abstract: The disclosed invention presents a method and apparatus to a one dimensional prefix search problem. The problem consists looking up the best match to a word out of a table of one-dimensional prefixes. The invention addresses the problems with prior art of high power consumption, large silicon chip area for implementation and slow search speed. The prefix entries are divided in several subgroups. A function is described that can be efficiently implemented to determine which of these subgroups the presented word will find a best match in. Thus, it is necessary to search only this small subgroup of prefixes. This saves on power consumption as well as area. An efficient hardware embodiment of this idea which can search at a very high speed is also presented. The applications for this invention could include internet routing, telephone call routing and string matching.
    Type: Grant
    Filed: April 28, 2005
    Date of Patent: April 28, 2009
    Inventors: Shahram Abdollahi-Alibeik, Mayur Vinod Joshi
  • Publication number: 20090103715
    Abstract: Methods and apparatus, including computer program products, implementing and using techniques for generating a hash. A data store including multiple hashing tables is provided. A set of data is received on which the hash is to be based. The set of data includes one or more components. An identifier is received. The identifier identifies one or more hashing tables to use when generating the hash. The received one or more components are processed in accordance with rules defined in the identified one or more hashing tables. The processed components are combined into a final hash.
    Type: Application
    Filed: October 19, 2007
    Publication date: April 23, 2009
    Applicant: International Business Machines Corporation
    Inventor: Oskar Thorbjornsson
  • Patent number: 7523319
    Abstract: When data changes in LBAs of a disk storage, the IDs of changed LBAs are written to a cache, with the LBAs being hashed to render a hash result. The hash result and contents of the cache are written to a file on the disk, the cache flushed, and the hash result written back to the cache for hashing together with subsequent changed LBAs. The process repeats. In this way, the hash result in the most current file on the disk can be compared with the hash result in cache, and if the two match, it indicates that the files on the disk contain an accurate record of changed LBAs.
    Type: Grant
    Filed: November 16, 2005
    Date of Patent: April 21, 2009
    Assignee: Lenovo (Singapore) Pte. Ltd.
    Inventors: David Carroll Challener, Rod David Waltermann
  • Publication number: 20090100246
    Abstract: The present invention provides an information retrieving apparatus and method each of which stores predetermined information at addresses of a Main Table RAM associated with retrieval key data by substituting data indicative of each specific position of the retrieval key data in retrieval range defining data in which a range targeted for retrieval is defined by setting the retrieval range defining data as information indicative of the data being arbitrary data, with a fixed value defined in advance and performing conversion on the retrieval key data by predetermined hash functions; allows a mask Table to store position information indicative of the specific position; when retrieval key data targeted for retrieval is inputted, reads the position information from the mask Table and reads from the Main Table RAM through a data selector, the information stored at the addresses associated therewith by substituting the data indicative of each specific position indicated by the position information of the retrieval
    Type: Application
    Filed: September 10, 2008
    Publication date: April 16, 2009
    Applicant: OKI ELECTRIC INDUSTRY CO., LTD.
    Inventor: Teruaki UEHARA
  • Publication number: 20090094435
    Abstract: A cache system includes a cache having a plurality of cache units, a prediction table and a hashing module. The prediction table is utilized to store way information of at least one cache unit corresponding to at least one accessing address, and the hashing module generates a hashing value corresponding to a target accessing address and reads way information from the prediction table or writes the way information to the prediction table by using the hashing value as an index.
    Type: Application
    Filed: October 3, 2008
    Publication date: April 9, 2009
    Inventor: Yen-Ju Lu
  • Publication number: 20090089539
    Abstract: Systems and methods for detecting email content containment are disclosed. In one embodiment, a method comprises generating a first set of hash values corresponding to a first email document, wherein the first set includes a respective hash value corresponding to each of a plurality of character sequences of the first email document. The method further comprises generating a second set of hash values corresponding to a second email document, wherein the second set include a respective hash value corresponding to each of a plurality of character sequences of the second email document, and determining whether the first set of hash values is a subset of the second set of hash values.
    Type: Application
    Filed: March 31, 2008
    Publication date: April 2, 2009
    Inventors: Guy Barry Owen Bunker, Tsuen Wan Ngan
  • Patent number: 7509473
    Abstract: A system for mapping between logical addresses and storage units of a plurality of storage volumes which comprise a storage system. For each volume, logical addresses are mapped to storage units using a volume mapping table. Each volume mapping table is comprised of a plurality of segments. Each segment need not be contiguously allocated to another segment of the same table. Thus, each volume mapping table can be independently expanded or reduced without affecting other volume mapping tables. A hash function, a hash table, a segment table, and a redundancy group descriptor table may also be used to help manage the segments of the volume mapping tables.
    Type: Grant
    Filed: February 17, 2004
    Date of Patent: March 24, 2009
    Assignee: Adaptec, Inc.
    Inventors: Robert L. Horn, Virgil V. Wilkins
  • Patent number: 7509477
    Abstract: A method and system that aggregates data associated with one or more entities from different data sources are provided. The data sources include documents, web pages, or images that have information about one or more entities. The information is extracted from the data sources based on criteria that define the entities. The extracted information is utilized to generate a hash identifier that corresponds to each entity and one or more storage locations. The one or more storage locations and associated hash identifiers are utilized to store the extracted information corresponding to the entities, and the extracted information for each entity is structured as a virtual page that is stored in an index having references to the data sources.
    Type: Grant
    Filed: April 12, 2006
    Date of Patent: March 24, 2009
    Assignee: Microsoft Corporation
    Inventors: Dzmitry Suponau, Jay Girotto, Qiang Wu, Rohit Vishwas Wad, Yue Liu
  • Patent number: 7506157
    Abstract: Access to content addressable data on a network is facilitated using digital information storing devices or data repositories (“silos”) that monitor broadcast data requests over the network. A number of silos automatically monitor both data requests and data itself that are broadcast over a network. The silos selectively store data. Each silo responds to data requests broadcast over the network with data the silo has previously intercepted. A content addressable file scheme is used to enable the data repositories to reliably identify data being requested. When a data request is received, each silo evaluates whether it has all or a portion of the data being requested and responds to requests when it has the data. Requests for data are implemented by broadcasting a cryptographic hash data identifier of the data file needed. The data identifier is used by a silo to determine which data to receive and store.
    Type: Grant
    Filed: August 5, 2005
    Date of Patent: March 17, 2009
    Assignee: EMC Corporation
    Inventors: Paul R. Carpentier, Jan F. Van Riel, Tom Teugels
  • Patent number: 7506105
    Abstract: Generating a hashed value of the program counter in a data processing system. The hashed value can be used for prefetching in the data processing system. In some examples, the hashed value is used to identify whether a load instruction associated with the hashed value has an address that is part of a strided stream in an address stream. In some examples, the hashed value is a subset of bits of the bits of the program counter. In other examples, the hashed value may be derived in other ways from the program counter.
    Type: Grant
    Filed: May 2, 2005
    Date of Patent: March 17, 2009
    Assignee: Freescale Semiconductor, Inc.
    Inventors: Hassan F. Al-Sukhni, James C. Holt, Matt B. Smittle, Michael D. Snyder, Brian C. Grayson
  • Patent number: 7503076
    Abstract: Access to content addressable data on a network is facilitated using digital information storing devices or data repositories (“silos”) that monitor broadcast data requests over the network. A number of silos automatically monitor both data requests and data itself that are broadcast over a network. The silos selectively store data. Each silo responds to data requests broadcast over the network with data the silo has previously intercepted. A content addressable file scheme is used to enable the data repositories to reliably identify data being requested. When a data request is received, each silo evaluates whether it has all or a portion of the data being requested and responds to requests when it has the data. Requests for data are implemented by broadcasting a cryptographic has data identifier of the data file needed. The data identifier is used by a silo to determine which data to receive and store.
    Type: Grant
    Filed: September 26, 2003
    Date of Patent: March 10, 2009
    Assignee: EMC Corporation
    Inventors: Paul R. Carpentier, Jan F. Van Riel, Tom Teugels
  • Publication number: 20090064122
    Abstract: Evaluating computer driver update compliance including applying a hashing algorithm to the contents of a driver repository, yielding a first hash value, the driver repository containing installed drivers for a computer; dating the first hash value; storing the first hash value and the date of the first hash value; identifying a candidate update for a driver installed in the repository, the candidate update having an update date; again applying the hashing algorithm to the contents of the driver repository, yielding a second hash value; comparing the first hash value and the second hash value; if the first hash value and the second hash value match, comparing the date of the first hash value and the update date; and if the update date is later than the date of the first hash value, reporting that the candidate update has not yet been installed.
    Type: Application
    Filed: August 27, 2007
    Publication date: March 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventor: Julianne Bielski
  • Patent number: 7496955
    Abstract: Methods and devices are provided for implementing a dual mode firewall. Some implementions provide a firewall in a network device that acts as bridge for layer 2 traffic and acts as a router for layer 3 traffic. In some implementions, a determination of whether to act as a bridge or a router for a packet is based on the configuration of the interface handling the packet. In some implementations, the network device inspects a destination of each packet to determine whether to act as a bridge or a router for that packet. The firewall screens both the layer 2 and the layer 3 traffic according to policies implement in the firewall.
    Type: Grant
    Filed: November 24, 2003
    Date of Patent: February 24, 2009
    Assignee: Cisco Technology, Inc.
    Inventors: Kamesh Akundi, Thomas Guerrette, John Gawf, Rajan Goyal
  • Patent number: 7493661
    Abstract: A method and apparatus for transferring a message securely from a sender to a recipient over a network and includes at each transfer: creating a message; retrieving the public key of the recipient from an external key server just prior to sending the message; signing the message using the private key of the sender; encrypting the signed message using a public key encryption algorithm and the public key of the recipient producing an encrypted signed message; generating an E-mail message addressed to the recipient; attaching the encrypted signed message as an attachment to the E-mail message; and, transmitting the E-mail message to the recipient.
    Type: Grant
    Filed: July 1, 2004
    Date of Patent: February 17, 2009
    Assignee: Zix Corporation
    Inventors: Gary G. Liu, David P. Cook
  • Patent number: 7493449
    Abstract: Methods for a treatment of cached objects are described. In one embodiment, management of a region of a cache is configured with an eviction policy plug-in and a storage plug-in. The eviction policy plug-in includes code to evict an object that is cached in the region of cache. The storage plug-in includes code to execute a function involving a key attribute manipulation function that, using a first hashing function and a key, identifies a table of attributes for the first object located within the region of cache, and using a second hashing function and an attribute name, gets a specific attribute for the first object from the table, the key being registered with the storage plug-in.
    Type: Grant
    Filed: December 28, 2004
    Date of Patent: February 17, 2009
    Assignee: Sap AG
    Inventors: Dirk Marwinski, Petio G. Petev
  • Publication number: 20090031082
    Abstract: A data processing apparatus is provided having processing logic for performing a sequence of operations, and a cache having a plurality of segments for storing data values for access by the processing logic. The processing logic is arranged, when access to a data value is required, to issue an access request specifying an address in memory associated with that data value, and the cache is responsive to the address to perform a lookup procedure during which it is determined whether the data value is stored in the cache. Indication logic is provided which, in response to an address portion of the address, provides for each of at least a subject of the segments an indication as to whether the data value is stored in that segment. The indication logic has guardian storage for storing guarding data, and hash logic for performing a hash operation on the address portion in order to reference the guarding data to determine each indication.
    Type: Application
    Filed: March 6, 2006
    Publication date: January 29, 2009
    Inventors: Simon Andrew Ford, Mrinmoy Ghosh, Emre Ozer, Stuart David Biles
  • Patent number: 7483430
    Abstract: A method for performing a lookup to support forwarding of IP packets in a router comprising a network processor and a route processor is disclosed. The method includes receiving a packet having an IP address containing a network prefix and dividing available network prefixes into groups. The longest prefix is identified and a lookup is performed using hash tables. The packet is forwarded if a match is found.
    Type: Grant
    Filed: February 28, 2003
    Date of Patent: January 27, 2009
    Assignee: Cisco Technology, Inc.
    Inventors: Felix Yuan, Jian Li
  • Publication number: 20090024795
    Abstract: A relay unit inputs data and an index. A cache management unit determines whether or not a space area to cache data exists. In the case where there is a space area, the cache management unit caches data. An identifier generating unit generates an identifier corresponding to contents of the cached data. The identifier is registered in a cache data table in association with the data. The identifier is registered in a cache index table in association with the index. In the case where there is no space area, the cache management unit secures a space area. The cache management unit unregisters an identifier associated with the data which was cached in the secured area.
    Type: Application
    Filed: July 17, 2008
    Publication date: January 22, 2009
    Inventor: Makoto KOBARA
  • Publication number: 20090024826
    Abstract: Various systems and methods for implementing a Galois-based incremental hash module are disclosed. For example, a method involves computing a first hash of a first string of an input stream. The first hash is computed by performing one or more Galois mathematical operations upon portions of the first string. A second hash of a second string, which overlaps the first string, can then be computed by processing the first hash.
    Type: Application
    Filed: July 16, 2007
    Publication date: January 22, 2009
    Inventors: Ming Zhang, Jui-Yang Lu, Jonathan J. Chang, Stephanie W. Ti
  • Publication number: 20090024827
    Abstract: A method and system for dynamically determining hash values for file transfer integrity validation. In response to a request for a transfer of a data file between a first computing system and a second computing system, the first computing system loads a first portion of the data file to a buffer. The first computing system determines a first hash function value based on the first portion. The first computing system loads a second portion of the data file portion to the buffer and determines a second hash function value incrementally based on the first and second data file portions. The first and second data file portions are non-overlapping portions of the data file being transferred.
    Type: Application
    Filed: July 19, 2007
    Publication date: January 22, 2009
    Inventor: Brent Edward Davis
  • Patent number: 7480731
    Abstract: In a data transfer scheme using a caching technique and/or a compression technique which is capable of reducing the network load of a network connecting between data transfer devices, correspondences between data and their names are registered at the data transfer devices and the corresponding names are transferred, instead of transferring the data, for those data for which the correspondences are registered, so that it is possible to reduce the amount of transfer data among the data transfer devices. Server side data transfer devices and client side data transfer devices can be provided in multiple-to-one, one-to-multiple, or multiple-to-multiple manners.
    Type: Grant
    Filed: March 31, 2008
    Date of Patent: January 20, 2009
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Toshibumi Seki, Tatsunori Kanai, Kenichiro Yoshii, Hideki Yoshida, Haruhiko Toyama, Hideaki Sato, Yasuhiro Kimura, Takayuki Miyazawa
  • Patent number: 7480302
    Abstract: A packet classification method through hierarchical rulebase partitioning. The packet classification method for searching for a rule having a highest priority and matching among a plurality of rules included in a specified rulebase with respect to a packet input from an external network and processing the packet according to the searched rule. The method includes: a preprocessing step of partitioning the rulebase into a plurality of independent sub-rulebases based on a specified condition and producing a hash table on the basis of the sub-rulebases; and a classification step of classifying the packet by searching the hash table using a hash key extracted from a packet header of the inputted packet and mapping the packet on the sub-rulebase corresponding to the packet.
    Type: Grant
    Filed: May 2, 2005
    Date of Patent: January 20, 2009
    Assignees: Samsung Electronics Co., Ltd., Korea University Industry and Academy Corporation Foundation
    Inventor: Lynn Choi
  • Patent number: 7480649
    Abstract: Techniques are provided for processing a query using an index. It is determined whether a number of consecutive keys that evaluate to a false-positive when applying a screening predicate in the query exceeds a false-positive predefined value. One or more keys in the index are skipped in response to determining that the number of consecutive keys exceeds the false-positive predefined value.
    Type: Grant
    Filed: July 6, 2005
    Date of Patent: January 20, 2009
    Assignee: International Business Machines Corporation
    Inventors: You-Chin Fuh, Ping Wang, Li Xia, Binghua Zhen
  • Patent number: 7475432
    Abstract: Representing a number of assets on an originating computer begins with selecting the assets to be represented. Cryptographic hash asset identifiers are generated; each of the asset identifiers is computed using the contents of a particular asset. The asset identifier is a content-based or content-addressable asset name for the asset and is location independent. An asset list is generated that includes the asset identifiers computed from the assets. A cryptographic hash asset list identifier is generated that is computed from the asset list. The asset list identifier is stored for later retrieval. The assets selected are also stored for safekeeping either locally or on a computer network. In the event of loss of the files from the originating computer, the asset list identifier is retrieved. Using the asset list identifier, the original asset list is found and retrieved from its safe location.
    Type: Grant
    Filed: July 19, 2004
    Date of Patent: January 6, 2009
    Assignee: EMC Corporation
    Inventors: Paul R. Carpentier, Jan F. Van Riel, Tom Teugels
  • Publication number: 20090006538
    Abstract: Automatic distributed downloading (ADD) may involve, for example, enabling the downloading of a resource via a peer-to-peer (P2P)-based protocol from a uniform resource identifier (URI). In an example embodiment, an ADD module includes a directory client that sends to a directory service a mapping request including a URI corresponding to a targeted resource and receives a mapping response including P2P session connection information. The targeted resource can be retrieved over a P2P network via a P2P-based protocol using the P2P session connection information. In another example embodiment, a mapping data structure is accessed with reference to a URI. An entry corresponding to the referenced URI is ascertained and P2P session connection information from the entry is extracted. The URI corresponds to a source making the resource available via a client-server-based protocol, and the P2P session connection information makes the resource available via a P2P-based protocol.
    Type: Application
    Filed: June 29, 2007
    Publication date: January 1, 2009
    Applicant: Microsoft Corporation
    Inventors: Dave L. Risney, JR., Vishu Gupta
  • Patent number: 7469317
    Abstract: A method for searching entries in a ternary content addressable memory (“TCAM”) device for one or more matches to an input, comprising: (a) providing a first portion of the input to the TCAM and receiving a first indication from the TCAM as to whether the first portion matches one or more of the entries in the TCAM; and, (b) if the first indication is negative, providing a second portion of the input combined with a hashed version of the first portion to the TCAM and receiving a second indication from the TCAM as to whether the second portion combined with the hashed version of the first portion matches one or more of the entries in the TCAM.
    Type: Grant
    Filed: September 12, 2006
    Date of Patent: December 23, 2008
    Assignee: Alcatel Lucent
    Inventor: Robert Elliott Robotham
  • Patent number: 7468985
    Abstract: A circular buffer storing packets for processing by one or more network processors employs an empty buffer address register identifying where a next received packet should be stored, a next packet address register identifying the next packet to be processed, and a packet-processing address register within each network processor identifying the packet being processed by that network processor. The n-bit addresses to the buffer are mapped or masked from/to the m-bit packet-processing address registers by software, allowing the buffer size to be fully scalable. A dedicated packet retrieval instruction supported by the network processor(s) retrieves a new packet for processing using the next packet address register and copies that into the associated packet-processing address register for use in subsequent accesses. Buffer management is thus independent of the network processor architecture.
    Type: Grant
    Filed: November 8, 2002
    Date of Patent: December 23, 2008
    Assignee: STMicroelectronics, Inc.
    Inventors: Faraydon O. Karim, Ramesh Chandra, Bernd H. Stramm
  • Patent number: 7469243
    Abstract: Embodiments of the present invention provide method and device for searching fixed length data. The device includes a hash operation means for operating and outputting a hash value of inputted fixed length data, a data table memory consisting of N numbers of memory banks, where N is an integer that is more than and equal to 2, the data table memory for storing a data table holding a large number of fixed length data, a pointer table memory for storing a memory pointer table holding a memory address at which each fixed length datum is stored with the hash value as an index, and a comparison means for simultaneously comparing a plurality of fixed length data stored at the same memory address in the N numbers of memory banks with a single fixed length datum inputted to the hash operation means, the comparison means for outputting results of the comparison.
    Type: Grant
    Filed: January 27, 2004
    Date of Patent: December 23, 2008
    Assignee: International Business Machines Corporation
    Inventors: Masaya Mori, Shinpei Watanabe, Yoshihisa Takatsu, Toshio Sunaga
  • Patent number: 7464198
    Abstract: A method is provided for programming a DMA controller in a system on a chip. According to the method, a memory management unit translates a programming virtual address into a programming physical address according to a translation table. A first sub-block without discontinuity beginning at the programming physical address and ending at an end address equal to the physical address immediately preceding a first discontinuity is formed, with the first discontinuity being determined by a discontinuity module according to information supplied by a memory management unit. Some of the programming elements intended for the DMA controller are defined according to the first identified sub-block. Also provided is a system on a chip.
    Type: Grant
    Filed: July 22, 2005
    Date of Patent: December 9, 2008
    Assignee: STMicroelectronics SA
    Inventors: Albert Martinez, M. William Orlando
  • Patent number: 7461233
    Abstract: A highly efficient data characteristic identification method for flash memory is provided, including the steps of: (a) based on the LBA corresponding to the write request to the flash memory, finding K corresponding counters in the hash table through K hash functions; (b) determining whether to perform decay period computation on hash table; if so, proceeding to step (c); otherwise, proceeding to step (d); (c) performing decay period computation on the hash table; (d) performing state update computation on the hash table; and (e) checking the hash table state and determining whether the data in the logic block corresponding to the flash memory is frequently updated. The method contains the decay period computation, state update computation, and checking on the data in the corresponding counters in the hash table to determine whether the data is frequently updated. Therefore, the object of a highly efficient data access characteristic identification method for flash memory is provided.
    Type: Grant
    Filed: June 14, 2006
    Date of Patent: December 2, 2008
    Assignee: Genesys Logic, Inc.
    Inventors: Jen-Wei Hsieh, Li-Pin Chang, Tei-Wei Kuo, Hsiang-Chi Hsieh
  • Patent number: 7457935
    Abstract: An improved system and method for a distributed column chunk data store is provided. A distributed column chunk data store may be provided by multiple storage servers operably coupled to a network. A storage server may include a database engine for partitioning a data table into the column chunks for distributing across multiple storage servers, a storage shared memory for storing the column chunks during processing of semantic operations performed on the column chunks, and a storage services manager for striping column chunks of a partitioned data table across multiple storage servers. Any data table may be flexibly partitioned into column chunks using one or more columns as a key with various partitioning methods. There may also be a storage policy for specifying how to partition a data table for distributing column chunks across multiple servers and for specifying a level of redundancy for recovery from failure of storage servers.
    Type: Grant
    Filed: September 13, 2005
    Date of Patent: November 25, 2008
    Assignee: Yahoo! Inc.
    Inventor: Radha Krishna Uppala
  • Patent number: 7454592
    Abstract: A method for reading data in a block-level single-instance storage system may involve receiving a first address of a data block, retrieving a signature corresponding to the first address, and reading data from a second address corresponding to the signature. A storage system may include a storage manager and first and second lookup tables. The storage manager may interface with an application (such as a database system or a file system) that uses a first set of identifiers for data blocks. The storage manager may use a second set of identifiers for the data blocks, and translates between the first and second identifiers using the lookup tables. The first lookup table indexes data block signatures according to the first set of identifiers. The second lookup table indexes the second set of identifiers according to the data block signatures. The second lookup table may be pruned to provide single instance storage.
    Type: Grant
    Filed: February 16, 2006
    Date of Patent: November 18, 2008
    Assignee: Symantec Operating Corporation
    Inventors: Aalop S. Shah, Ganesh Varadarajan, Milind V. Borate, Peter Vajgel
  • Patent number: 7454580
    Abstract: A data processing system includes a processor core and a memory subsystem. The memory subsystem includes a store queue having a plurality of entries, where each entry includes an address field for holding the target address of store operation, a data field for holding data for the store operation, and a virtual sync field indicating a presence or absence of a synchronizing operation associated with the entry. The memory subsystem further includes a store queue controller that, responsive to receipt at the memory subsystem of a sequence of operations including a synchronizing operation and a particular store operation, places a target address and data of the particular store operation within the address field and data field, respectively, of an entry in the store queue and sets the virtual sync field of the entry to represent the synchronizing operation, such that a number of store queue entries utilized is reduced.
    Type: Grant
    Filed: April 25, 2006
    Date of Patent: November 18, 2008
    Assignee: International Business Machines Corporation
    Inventors: Ravi K. Arimilli, Thomas M. Capasso, Robert A. Cargnoni, Guy L. Guthrie, Hugh Shen, William J. Starke
  • Patent number: 7451288
    Abstract: Apparatus and method for generating an individual key for accessing a predetermined addressable unit of a memory divided into addressable units. The apparatus includes a calculator for calculating a page pre-key based on a page address, a determiner for determining the individual key based on the page pre-key and a unit address, a memory for storing the calculated page pre-key, and a checker for checking whether during a next access to a further predetermined unit to which a further unique address is associated, an already calculated page pre-key exists in a temporary memory, which has been calculated based on a page address of a unique address, which is identical to the page address of the further unique address, and, if so, transmitting the already calculated page pre-key to the determiner by bypassing the calculator, and, if not, transmitting the page address of the further unique address to the calculator.
    Type: Grant
    Filed: March 30, 2006
    Date of Patent: November 11, 2008
    Assignee: Infineon Technologies AG
    Inventors: Rainer Goettfert, Astrid Elbe, Berndt Gammel, Steffen Sonnekalb
  • Publication number: 20080275957
    Abstract: Technologies are described herein for identifying and correlating e-mail messages. The contents of the subject and recipients fields of e-mail messages received at and sent from a computing system are hashed and stored in a database. When an incoming e-mail message is received at the computing system, the contents of its subject and recipients fields are also hashed. A search is then made of the database to locate e-mail messages identified in the database that have a sufficient number of subject and address hash values that match the subject and address hash values generated for the incoming e-mail message so that the messages may be correlated. A correlation is made between the incoming e-mail message and the best matching e-mail message located during the search of the database.
    Type: Application
    Filed: May 3, 2007
    Publication date: November 6, 2008
    Applicant: Microsoft Corporation
    Inventors: Dominic J. Pouzin, Ilana Rae Smith
  • Patent number: 7447870
    Abstract: A highly efficient data characteristic identification device for flash memory is provided, including an instruction register, a plurality of auxiliary controllers, a data register, an address register, a microprocessor, a plurality of hash function units, a hash table unit, a comparator, a shifter, and an adder. By connecting the instruction register, data register and address register to a flash memory access control circuit and flash memory for storing the control instruction of the access control circuit and the data and physical and logical address of the flash memory, the control instruction is decoded and transmitted by the microprocessor and the auxiliary controllers to each circuit. A plurality of hash function units, a hash table unit, a comparator, a shifter, and an adder form an index computation circuit for flash memory LBA. By using the index and computation on the contents of the hash function units, the data characteristics of the LBA can be stored with less memory and higher efficiency.
    Type: Grant
    Filed: June 14, 2006
    Date of Patent: November 4, 2008
    Assignee: Genesys Logic, Inc.
    Inventors: Jen-Wei Hsieh, Li-Pin Chang, Tei-Wei Kuo, Hsiang-Chi Hsieh
  • Patent number: 7447857
    Abstract: Backup and restore technology comprising a backup engine, one or more client backup modules coupled to the backup engine via a backup protocol, and a backup database coupled to the backup engine, the backup database including a set of clusters, the set of clusters forming one or more backups, wherein each cluster of the set of clusters is unique such that single-instance storage across clients is achieved.
    Type: Grant
    Filed: February 28, 2008
    Date of Patent: November 4, 2008
    Assignee: Microsoft Corporation
    Inventor: James M Lyon