Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Jin Li, Bellevue US

Jin Li, Bellevue, WA US

Patent application numberDescriptionPublished
20110119370MEASURING NETWORK PERFORMANCE FOR CLOUD SERVICES - Described is a technology by which a content server downloads an active content measuring tool object to a client request for a page. When loaded, the measuring tool object makes network measurements, including by direct socket access, and return measurement results. As part of its operations, the measuring tool object may request measurement assignments from a central controller, and/or return those results to the central controller. Measurement assignments may be directed towards determining a round trip time/latency, measuring throughput, packet loss rate, detecting in-fight modification of content and/or detecting the presence of a middle box, including the presence of a caching proxy server middle box. The measurement results may be used to evaluate hypothetical deployment of a number of servers and/or geographic locations for those servers.05-19-2011
20110134909DATA COMMUNICATION WITH COMPENSATION FOR PACKET LOSS - Described is a technology by which a relay is coupled (e.g., by a wire) to a network and (e.g., by a wireless link) to an endpoint. Incoming data packets directed towards the endpoint are processed by the relay according to an error correction scheme, such as one that replicates packets. The reprocessed packets, which in general are more robust against packet loss, are then sent to the endpoint. For outgoing data packets received from the endpoint, the relay reprocesses the outgoing packets based upon the error correction scheme, such as to remove redundant packets before transmitting them to the network over the wire. Also described are various error correction schemes, and various types of computing devices that may be used as relays. The relay may be built into the network infrastructure, and/or a directory service may be employed to automatically find a suitable relay node for an endpoint device.06-09-2011
20110227790CUCKOO HASHING TO STORE BEACON REFERENCE DATA - Storing and retrieving beacon reference data in a truncated cuckoo hash table. Checksums of beacon identifiers associated with beacons are used to retrieve beacon reference data describing locations of the beacons in a hash table. The data is stored in one or more hash tables by cuckoo hashing to eliminate aliasing. The hash tables are provided to devices such as mobile devices. The devices retrieve the beacon reference data from the tables based using beacon identifiers of observed beacons. Location information for the devices is inferred using the retrieved beacon reference data. The cuckoo hash tables consume less memory storage space and obfuscate the beacon reference data.09-22-2011
20110270964USING DNS REFLECTION TO MEASURE NETWORK PERFORMANCE - A top level domain name system (DNS) server receives a DNS query from a local DNS resolver, the DNS query requesting a network address corresponding to a domain name. The top level DNS server reflects the local DNS resolver to a reflector DNS server. The reflector DNS server reflects the local DNS resolver to a collector DNS server, which in turn returns the network address to the local DNS resolver. The reflector DNS server and collector DNS server are both in the same data center, and one or more network performance measurements for communications between the local DNS resolver and the data center are determined based on the communications between the local DNS resolver and both the reflector DNS server and the collector DNS server.11-03-2011
20110276744FLASH MEMORY CACHE INCLUDING FOR USE WITH PERSISTENT KEY-VALUE STORE - Described is using flash memory, RAM-based data structures and mechanisms to provide a flash store for caching data items (e.g., key-value pairs) in flash pages. A RAM-based index maps data items to flash pages, and a RAM-based write buffer maintains data items to be written to the flash store, e.g., when a full page can be written. A recycle mechanism makes used pages in the flash store available by destaging a data item to a hard disk or reinserting it into the write buffer, based on its access pattern. The flash store may be used in a data deduplication system, in which the data items comprise chunk-identifier, metadata pairs, in which each chunk-identifier corresponds to a hash of a chunk of data that indicates. The RAM and flash are accessed with the chunk-identifier (e.g., as a key) to determine whether a chunk is a new chunk or a duplicate.11-10-2011
20110276780Fast and Low-RAM-Footprint Indexing for Data Deduplication - The subject disclosure is directed towards a data deduplication technology in which a hash index service's index maintains a hash index in a secondary storage device such as a hard drive, along with a compact index table and look-ahead cache in RAM that operate to reduce the I/O to access the secondary storage device during deduplication operations. Also described is a session cache for maintaining data during a deduplication session, and encoding of a read-only compact index table for efficiency.11-10-2011
20110276781Fast and Low-RAM-Footprint Indexing for Data Deduplication - The subject disclosure is directed towards a data deduplication technology in which a hash index service's index maintains a hash index in a secondary storage device such as a hard drive, along with a compact index table and look-ahead cache in RAM that operate to reduce the I/O to access the secondary storage device during deduplication operations. Also described is a session cache for maintaining data during a deduplication session, and encoding of a read-only compact index table for efficiency.11-10-2011
20110299526MULTIPARTY REAL TIME CONTENT DELIVERY - Described is a distributed peer-assisted multicast content delivery system (e.g., a multiparty conferencing application) that uses an adaptive link rate control protocol to discover and adapt to an arbitrary topology quickly and converge to efficient link rate allocations allowed by an underlying network. Link rates are regularly obtained and used to determine trees for sending packets to other nodes. Network coding is used to implement data multicast so that mixtures (i.e., linear combinations) of the packets are transmitted in the network. The redundant packets may be differentiated from non-redundant (“innovative”) packets such that network conditions may be measured by link innovation and/or session innovation.12-08-2011