Patents Assigned to Peak Systems, Inc.
-
Patent number: 8929380Abstract: A system for matching data using flow based packet data storage includes a communications interface and a processor. A communications interface receives a packet between a source and a destination. The processor identifies a flow between the source and the destination based on the packet. The processor determines whether some of packet data of the packet indicates a potential match to data in storage using hashes. The processor then stores the data from the most likely data match and second most likely data match without a packet header in a block of memory in the storage based on the flow.Type: GrantFiled: May 5, 2014Date of Patent: January 6, 2015Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, John Burns, Zhigang Yin
-
Patent number: 8929402Abstract: A system, method, and computer program for compressing packet data is provided. In exemplary embodiments, one or more prefix arrays may be generated for retrieved data, and used as the basis for predicting subsequent data. The packet data may be compressed based, at least partially, on the predicted subsequent data. Accordingly, the compressed packet data may be transferred over a communication network.Type: GrantFiled: October 22, 2012Date of Patent: January 6, 2015Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8930650Abstract: Systems and methods for identification of data stored in memory are provided. A data packet is received and a first packet byte within the data packet is compared to a first memory byte within a memory. A mismatch is determined between the first packet byte and the first memory byte. A memory location is accessed that contains a second memory byte that is non-consecutive with the first memory byte. A packet location accessed that contains a second packet byte that is non-consecutive with the first packet byte. The second packet byte is compared to the second memory byte. A retrieval instruction is generated based at least in part on a result of the comparison between the second packet byte and the second memory byte. Various embodiments may be included in a network memory architecture to allow for faster data matching and instruction generation in a central appliance.Type: GrantFiled: April 8, 2014Date of Patent: January 6, 2015Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, Zhigang Yin, John Burns
-
Patent number: 8885632Abstract: A System for providing communications over a communications network includes a communications interface and processor. The communications interface communicates over the communications network. The processor directs a communications scheduler to determine at least one metric for a path within the communications network. The processor also selects a data flow for the path and determines whether to transmit a packet in the selected data flow based on the at least one metric. The processor then directs a communications protocol handler to generate the packet for the selected data flow.Type: GrantFiled: August 2, 2006Date of Patent: November 11, 2014Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, Balaji Balasubramanian, Danny Kwok
-
Patent number: 8811431Abstract: A system, method, and computer program for compressing packet data is provided. In exemplary embodiments, one or more blocks may be identified that include block data similar to packet data of one or more packets. The one or more blocks may comprise archives of previously transferred packets. The packet data may be compressed based, at least partially, on the block data. Accordingly, the compressed packet data may be transferred over a communication network.Type: GrantFiled: November 20, 2008Date of Patent: August 19, 2014Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8755381Abstract: A system for processing packets includes a communications interface and a processor. A communications interface receives a packet between a source and a destination. The processor identifies a flow between the source and the destination based on the packet. The processor determines whether some of packet data of the packet matches to storage data in storage using hashes. The processor then stores the packet data in a block of memory in the storage based on the flow and if the packet data does not match the storage data.Type: GrantFiled: August 2, 2006Date of Patent: June 17, 2014Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, John Burns, Zhigang Yin
-
Patent number: 8743683Abstract: A method, system, and computer program are provided for quality of service using multiple flows. At a first digital device, a plurality of inter-device flows is established between the first digital device and a second digital device via a communication network. At least one flow metric associated with each of the inter-device flows is determined, which may include, for example, a latency metric, a loss metric, and/or a re-ordering metric. According to various embodiments, flow metrics may form a basis for categorizing the inter-device flows. One or more preferred flows are selected based on the flow metrics. Finally, a packet to be sent to the second device is directed to one of the preferred flows.Type: GrantFiled: July 3, 2008Date of Patent: June 3, 2014Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8738865Abstract: Systems and methods for identification of data stored in memory are provided. A data packet is received and a first packet byte within the data packet is compared to a first memory byte within a memory. A mismatch is determined between the first packet byte and the first memory byte. A memory location is jumped to that contains a second memory byte that is non-consecutive with the first memory byte. A packet location is jumped to that contains a second packet byte that is non-consecutive with the first packet byte. The second packet byte is compared to the second memory byte. A retrieval instruction is generated based at least in part on a result of the comparison between the second packet byte and the second memory byte. Various embodiments may be included in a network memory architecture to allow for faster data matching and instruction generation in a central appliance.Type: GrantFiled: March 22, 2012Date of Patent: May 27, 2014Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, Zhigang Yin, John Burns
-
Patent number: 8732423Abstract: A network memory system is disclosed. The network memory system comprises a first appliance configured to encrypt first data, store the encrypted first data in a first memory device. The first appliance also determines whether the encrypted first data exists in a second appliance and transmits a store instruction comprising the encrypted first data based on the determination that the encrypted first data does not exist in the second appliance. The second appliance is configured to receive the store instruction from the first appliance and store the encrypted first data in a second memory device. The second appliance is further configured to receive a retrieve instruction comprising a location indicator indicating where the encrypted first data is stored, process the retrieve instruction to obtain encrypted response data, and decrypt the encrypted response data.Type: GrantFiled: February 1, 2013Date of Patent: May 20, 2014Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8725988Abstract: 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: GrantFiled: June 13, 2013Date of Patent: May 13, 2014Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, John Burns
-
Patent number: 8595314Abstract: A method, system, and computer readable storage medium for deferred data storage are disclosed. Data sent via a local-area network is intercepted at a first hardware appliance of a plurality of hardware appliances in response to a first request for the data. A determination is performed of whether the data is locally accessible to the first hardware appliance. Instructions are transmitted to the first hardware appliance to retrieve the data locally accessible to the hardware appliance. The data is stored on at least one temporary page at a hardware appliance. The first hardware appliance and the second hardware appliance are in communication via the local-area network.Type: GrantFiled: June 13, 2012Date of Patent: November 26, 2013Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8489562Abstract: A method for deferred storage of data is disclosed. A packet comprising instructions and literal data for rebuilding packet data from a network device is received. The packet data is rebuilt according to the instructions and the literal data. The rebuilt packet data is rewritten to a temporary page in memory. A page utilization metric is calculated based on the contents of the temporary page, the contents comprising the rebuilt data packet. Whether the contents of the temporary page sufficiently match data in data storage is determined. The contents of the temporary page are discarded or stored based on the determination.Type: GrantFiled: November 30, 2007Date of Patent: July 16, 2013Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, Zhigang Yin, John Burns
-
Patent number: 8473714Abstract: 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: GrantFiled: May 29, 2012Date of Patent: June 25, 2013Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, John Burns
-
Patent number: 8442052Abstract: A method for providing ordered data packets to a processor is provided. The method comprises receiving a plurality of data packets, each comprising an order identifier. At least one out-of-order data packet of the plurality of data packets is placed in a priority queue. One or more correction packets are received. One or more missing data packets or corrupted data packets of the plurality of data packets are detected based on the one or more correction packets. The one or more missing data packets or corrupted data packets of the plurality of data packets are corrected based on the one or more correction packets. The one or more corrected data packets are provided to the processor. The at least one out-of-order data packet in the priority queue is provided to the processor.Type: GrantFiled: February 20, 2008Date of Patent: May 14, 2013Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8392684Abstract: A network memory system for ensuring compliance is disclosed. The network memory system comprises a first appliance configured to encrypt first data, store the encrypted first data in a first memory device. The first appliance also determines whether the encrypted first data exists in a second appliance and transmits a store instruction comprising the encrypted first data based on the determination that the encrypted first data does not exist in the second appliance. The second appliance is further configured to receive a retrieve instruction comprising an index at which the encrypted first data is stored, process the retrieve instruction to obtain encrypted response data, and decrypt the encrypted response data.Type: GrantFiled: July 31, 2006Date of Patent: March 5, 2013Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8370583Abstract: A network memory system comprises a first appliance and a second appliance. The first appliance receives data and determines whether a portion of the data is locally accessible to the second appliance. The first appliance generates an instruction based on the determination and transfers the instruction to the second appliance over a communication network. The second appliance receives the instruction from the first appliance over the communication network and processes the instruction to obtain the data. The second appliance then transfers the data to a computer.Type: GrantFiled: August 12, 2005Date of Patent: February 5, 2013Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8312226Abstract: A first appliance of a network memory includes a processor configured to receive data. The processor determines whether the data is locally accessible to a second appliance of the network memory and generates an instruction based on the determination in order that the second appliance obtain the data. The processor then transfers the instruction over a communication network to the second appliance. In another first appliance of a network memory, the first appliance includes a processor configured to receive an instruction over a communication network from a second appliance of the network memory. The processor processes the instruction to determine an action to perform to obtain the data. The processor performs the action to obtain the data if the data is locally accessible to the first appliance.Type: GrantFiled: September 29, 2005Date of Patent: November 13, 2012Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8307115Abstract: A method, system, and computer program for network memory mirroring. Data sent via a local-area network is intercepted at a first hardware appliance of a plurality of hardware appliances in response to a first request for the data. A determination is performed of whether the data has been stored previously in a long-term storage in the first hardware appliance. The data is stored in the long-term storage in the first hardware appliance based on the determination. The data is sent to a second hardware appliance of the plurality of hardware appliances, the first hardware appliance and the second hardware appliance in communication via the local-area network. The data is stored in the long-term storage in the second hardware appliance.Type: GrantFiled: May 8, 2008Date of Patent: November 6, 2012Assignee: Silver Peak Systems, Inc.Inventor: David Anthony Hughes
-
Patent number: 8225072Abstract: 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: GrantFiled: May 20, 2011Date of Patent: July 17, 2012Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, John Burns
-
Patent number: 8171238Abstract: Systems and methods for identification of data stored in memory are provided. A data packet is received and a first packet byte within the data packet is compared to a first memory byte within a memory. A mismatch is determined between the first packet byte and the first memory byte. A memory location is jumped to that contains a second memory byte that is non-consecutive with the first memory byte. A packet location is jumped to that contains a second packet byte that is non-consecutive with the first packet byte. The second packet byte is compared to the second memory byte. A retrieval instruction is generated based at least in part on a result of the comparison between the second packet byte and the second memory byte. Various embodiments may be included in a network memory architecture to allow for faster data matching and instruction generation in a central appliance.Type: GrantFiled: July 5, 2007Date of Patent: May 1, 2012Assignee: Silver Peak Systems, Inc.Inventors: David Anthony Hughes, Zhigang Yin, John Burns