Patent application number | Description | Published |
20100082838 | ISP-FRIENDLY RATE ALLOCATION FOR P2P APPLICATIONS - An ISP-friendly rate allocation system and method that reduces network traffic across ISP boundaries in a peer-to-peer (P2P) network, Embodiments of the system and method continuously solve a global optimization problem and dictate accordingly how much bandwidth is allocated on each connection. Embodiments of the system and method minimize load on a server in communication with the P2P network, minimize ISP-unfriendly traffic while keeping the minimum server load unaffected, and maximize peer prefetching. Two different techniques are used to compute rate allocation, including a utility function optimization technique and a minimum cost flow formulation technique. The utility function optimization technique constructs a utility function and optimizes that utility function. The minimum cost flow formulation technique generates a minimum cost flow formulation using a bipartite graph have a vertices set and an edges set. A distributed minimum cost flow formulation is solved using Lagrangian multipliers. | 04-01-2010 |
20100088405 | Determining Network Delay and CDN Deployment - Charting a content distribution system (CDN) involves identifying a set of DNS servers that may be used as vantage points to test delay performance to a CDNs content server. As provided herein, to identify potential vantage point DNS servers, a set of authoritative name servers is identified and, from that set, those authoritative name servers that respond to a DNS query are identified as responsive authoritative name servers. Identifying a CDN content server that serves a particular vantage point DNS server involves retrieving an IP address for the CDN content server from a DNS query to the DNS server corresponding to the vantage point. The delay performance between the vantage point DNS server and the CDN content server can then be determined. Further, one can determine locations to deploy new data centers for a CDN based on delay performance, A delay from one or more vantage points to an existing CDN's DNS servers can be measured, and desired rank of locations can be generated. A location of a new data center can be selected based on a desired delay performance ranking. | 04-08-2010 |
20100153822 | Constructing Forward Error Correction Codes - Construction and use of forward error correction codes is provided. A systematic MDS FEC code is obtained having a property wherein any set of contiguous or non-contiguous r packets can be lost during a data transmission of k data packets and r encoded packets and the original k packets can be recovered unambiguously. The systematic MDS FEC code is transformed into a (k+r, k) systematic MDS FEC code that guarantees at least one of the encoded packets is a parity packet. The starting systematic MDS FEC code may be Cauchy-based, and the transformation code derived from the starting Cauchy-based MDS FEC code allows for very efficient initialization, encoding and decoding operations. | 06-17-2010 |
20110096675 | QUALITY OF SERVICE (QOS) BASED SYSTEMS, NETWORKS, AND ADVISORS - Techniques and technologies for routing communications based on Quality of Service (QOS) related information. More particularly, this document discloses techniques and technologies for selecting communications paths which partially overlap other communication paths for which QOS related information has been measured. The techniques and technologies include determining, performance levels for path segments within the communication paths from the measured QOS information. | 04-28-2011 |
20110119370 | MEASURING 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 |
20110134909 | DATA 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 |
20110270964 | USING 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 |
20120128010 | MINIMIZING NETWORK LATENCY IN INTERACTIVE INTERNET APPLICATIONS - A method and system that enhances a user's performance while interacting with an interactive internet application such as a Massively Multiplayer Online (MMO) game is provided. The network latency experienced by users participating in the MMO game is minimized by dynamically determining an optimal transmission action for a message generated by the MMO game. In one embodiment, determining the optimal transmission action for a message includes dynamically determining the optimal number of redundant Forward Error Correction (FEC) packets to add to a message prior to transmitting a message to a receiving device. The optimal number of FEC packets is determined based on a wide range of varying network conditions. | 05-24-2012 |
20120173932 | STORAGE CODES FOR DATA RECOVERY - A random permutation code is described which provides efficient repair of data nodes. A specific implementation of a permutation code is also described, followed by description of a MISER-Permutation code. Finally, an optimal repair strategy is explained that involves an iterative process of downloading the most effective available parity data, updating costs of remaining parity data, and repeating until the data is recovered. | 07-05-2012 |
20120271909 | GLOBAL TRAFFIC MANAGEMENT USING MODIFIED HOSTNAME - A particular method includes receiving a request from a client at a server and sending a global traffic management identifier in response to the request from the client. The global traffic management identifier is determined based on an attribute of the client. In response to the client requesting access to a service based on a modified hostname of the service, a data center associated with the service is identified based on the modified hostname of the service. The modified hostname identifies the global traffic management identifier, and the identified data center is useable by the client to access the service. | 10-25-2012 |
20130054549 | CLOUD DATA STORAGE USING REDUNDANT ENCODING - Cloud data storage systems, methods, and techniques partition system data symbols into predefined-sized groups and then encode each group to form corresponding parity symbols, encode all data symbols into global redundant symbols, and store each symbol (data, parity, and redundant) in different failure domains in a manner that ensures independence of failures. In several implementations, the resultant cloud-encoded data features both data locality and ability to recover up to a predefined threshold tolerance of simultaneous erasures (unavailable data symbols) without any information loss. In addition, certain implementations also feature the placement of cloud-encoded data in domains (nodes or node groups) to provide similar locality and redundancy features simultaneous with the recovery of an entire domain of data that is unavailable due to software or hardware upgrades or failures. | 02-28-2013 |
20130054782 | DETERMINATION OF UNAUTHORIZED CONTENT SOURCES - A plurality of network addresses from a distributed client is obtained, at least a first portion of the obtained network addresses including resolved network address responses to distributed client requests for resolved network addresses corresponding to one or more network location indicators associated with a first web service. Test content is obtained, based on one or more of the network addresses included in the first portion. It is determined whether the obtained test content includes unauthorized content. | 02-28-2013 |
20130159383 | APPLICATION-DRIVEN CDN PRE-CACHING - Techniques are provided for the caching of content prior to the content being requested. A request for desired content may be received from a client application at a caching server. The request may also indicate additional content related to the desired content that may be subsequently requested by the client application. The indicated additional content (and the desired content, if not already cached) is retrieved from an origin server. The desired content is transmitted to the client application at the user device, and the additional content is cached at the caching server. Subsequently, a second request may be received from the client application that includes a request for the additional content. The additional content, which is now cached at the caching server, is served to the client application by the caching server in response to the second request (rather than being retrieved from the origin server). | 06-20-2013 |
20130263151 | Consistent Hashing Table for Workload Distribution - Described is a technology by which a consistent hashing table of bins maintains values representing nodes of a distributed system. An assignment stage uses a consistent hashing function and a selection algorithm to assign values that represent the nodes to the bins. In an independent mapping stage, a mapping mechanism deterministically maps an object identifier/key to one of the bins as a mapped-to bin. | 10-03-2013 |
20130346672 | Multi-Tiered Cache with Storage Medium Awareness - The subject disclosure is directed towards a multi-tiered cache having cache tiers with different access properties. Objects are written to a selected a tier of the cache based upon object-related properties and/or cache-related properties. In one aspect, objects are stored in an active log among a plurality of logs. The active log is sealed upon reaching a target size, with a new active log opened. Garbage collecting is performed on a sealed log, such as the sealed log with the most garbage therein. | 12-26-2013 |
20140310571 | Local Erasure Codes for Data Storage - In some examples, an erasure code can be implemented to provide for fault-tolerant storage of data. Maximally recoverable cloud codes, resilient cloud codes, and robust product codes are examples of different erasure codes that can be implemented to encode and store data. Implementing different erasure codes and different parameters within each erasure code can involve trade-offs between reliability, redundancy, and locality. In some examples, an erasure code can specify placement of the encoded data on machines that are organized into racks. | 10-16-2014 |
20140380125 | ERASURE CODING ACROSS MULTIPLE ZONES - In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk. | 12-25-2014 |
20140380126 | ERASURE CODING ACROSS MULTIPLE ZONES AND SUB-ZONES - In various embodiments, methods and systems for erasure coding data across multiple storage zones are provided. This may be accomplished by dividing a data chunk into a plurality of sub-fragments. Each of the plurality of sub-fragments is associated with a zone. Zones comprise buildings, data centers, and geographic regions providing a storage service. A plurality of reconstruction parities is computed. Each of the plurality of reconstruction parities computed using at least one sub-fragment from the plurality of sub-fragments. The plurality of reconstruction parities comprises at least one cross-zone parity. The at least one cross-zone parity is assigned to a parity zone. The cross-zone parity provides cross-zone reconstruction of a portion of the data chunk. | 12-25-2014 |
Patent application number | Description | Published |
20090119389 | METHOD FOR TRANSFERRING FILE IN CONFERENCE SYSTEM, FILE TRANSFER SYSTEM AND CONFERENCE SERVER - A method for transferring a file in a conference system is provided, which includes the following steps. A file sending UE sends a conference identification of the conference to the file receiving UE through a conference server; and sends the file to the file receiving UE through the conference server. A conference server, and a file sending and receiving UE are also provided. In the present invention, when a user sends a file to another user in a conference, a conference identification of the conference, together with the file, is sent to the file receiving user, so that the file receiving user can get to know the conference associated with the file when receiving the file, thereby enhancing the experience enjoyed by the file receiving user. | 05-07-2009 |
20090249348 | METHOD AND APPARATUS FOR OPERATING A THREAD - A method and apparatus for operating a thread are disclosed. The method includes: receiving a thread operation request that carries a thread operation ID and thread information related operation; and operating a thread according to the operation request. The thread in the embodiments of the present disclosure is independent of the actual content. Therefore, the thread file can be operated according to the requirements of the user, and thus the user experience is improved. | 10-01-2009 |
20090279455 | METHOD, A DEVICE AND A SYSTEM FOR CONVERGING IP MESSAGE - A method, a device and a system for converging IP message are disclosed. The invention includes the following step: the CPM server that receives a CPM message determines its service type based on the CPM message and performs a corresponding signaling control, and processes the CPM message content based on the process flow corresponding with the service type; forwardly, the invention includes the following step: the CPM server that receives a CPM message determines its service type based on the CPM message, and determines the service server which can process this service based on the service type, and converses the CPM message to the message or/and session request corresponding with the service server, and transmits it to the service server to process, and after the CPM message of the service server is received, transmits the CPM message to the CPM client terminal. | 11-12-2009 |
20100023491 | METHOD AND APPARATUS FOR NETWORK STORAGE ACCESS RIGHTS MANAGEMENT - A method for network storage access rights management operates storage access rights of network storage directories or network storage files that an authorizing user sets for an authorized user. Authorization may be set for an authorized user in the network storage access rights metadata of the authorizing user according to the storage access rights information that the authorizing user requests to operate. Accordingly, the authorized user is allowed to access network storage locations of the authorizing user. A method for network storage access control and an apparatus for network storage access rights management are also provided. | 01-28-2010 |
20100088371 | METHOD FOR OBTAINING DEVICE INFORMATION OF USER TERMINALS AND COMMUNICATION SERVICE FUNCTION ENTITY - A method for obtaining device information of user terminals and a communication service function thereof are disclosed to enable a user to obtain terminal device information. The method for obtaining device information of user terminals in a communication system includes that a communication service function sends device information of a target user to a requesting terminal according to the target user ID carried in a device information obtaining request or a device information publish service setting. The communication service function includes: a receiving unit, adapted to receive a device information obtaining request or a device information publish service setting; a sending unit, adapted to send the stored device information of the target user to the requesting terminal according to the target user ID carried in the device information obtaining request or device information publish service setting. | 04-08-2010 |
20100146066 | Method, system and apparatus for message interworking - A method for message interworking, a Session Initiation System messaging server, an interworking gateway and a system for message interworking are disclosed. The method for message interworking includes: receiving, by an SIP messaging server, an SIP message, and routing the SIP message to a recipient; receiving an SIP response to the SIP message; sending the SIP message to an interworking gateway when it is determined that message interworking is required, so that the interworking gateway may perform a protocol conversion on the SIP message and send the converted non-SIP message to a corresponding non-SIP messaging system, or, so that the interworking gateway may establish a session between the interworking gateway itself and a sender terminal, receive an SIP session message via the established session, perform a protocol conversion on the SIP session message and then send the converted non-SIP message to a corresponding non-SIP messaging system. | 06-10-2010 |
20110161502 | METHOD AND SYSTEM FOR ACTIVATING NETWORK STORAGE, MESSAGE PROCESSING SERVER, AND CLIENT - A method for activating network storage includes: a message processing server receives a network storage request from a client; the message processing server establishes a session with a history function (HF) according to the network storage request, and sends the content from the session in which the client participates to the HF through the session with the HF. A system for activating network storage, a message processing server, and a client are also provided. With the present invention, the network storage is implemented more conveniently, and the user experience is improved. | 06-30-2011 |
20110179127 | TRANSFER NOTIFICATION METHOD, SYSTEM, AND DEVICE - A transfer notification method, system, and device are provided. The method includes the following steps. A first identifier and a second identifier of a first user are obtained. At least one user in touch with the first user is obtained as a second user. A transfer notification is sent to the second user. The transfer notification includes the first identifier and the second identifier of the first user. Therefore, by using the method for notifying contacts of address book transfer, the contacts in touch with a transferred user can receive a corresponding notification. Therefore, the two parties can update contact data in time and use rich functions provided by a Converged Address Book (CAB) after the transfer. | 07-21-2011 |
20110249669 | METHOD FOR SERVICE INTER-WORKING AND SESSION CHANNEL ESTABLISHMENT, INTER-WORKING SELECTION FUNCTION MODULE AND DEVICE - A method for service inter-working and session channel establishment, an Inter-working Selection Function (ISF) module and device are provided. The method for service inter-working includes: receiving content which is corresponding to at least two media types and is sent by a calling party; and sending, according to the media types of the content, the content to Inter-Working Function (IWF) modules each corresponding to one media type, so that the IWF modules send the received content to a called party. In one aspect, a Converged IP Message (CPM) service may have sessions with a plurality of non-CPM services, thereby improving user experience; in another aspect, when the calling party intends to change the media types between the calling party and the called party with which the calling party has processed the service inter-working, it can be achieved just by directly changing the media types without disconnecting the session with the called party in advance. | 10-13-2011 |
20130061037 | ENCRYPTION COMMUNICATION METHOD, APPARATUS AND SYSTEM - An encrypted communication method relating to communication technologies includes allocating a same encryption key for a first application and a terminal that is only bound to the first application. The method also includes transparently transmitting information communicated between the terminal and the first application when determining that the terminal communicates with the first application by using the same encryption key. | 03-07-2013 |
20130151852 | METHOD, DEVICE AND SYSTEM FOR AUTHENTICATING GATEWAY, NODE AND SERVER - A method, device and system for authenticating gateway, node and server are provided in this invention. The node receives a message sent by a gateway, wherein the message comprises a number T | 06-13-2013 |
20130219064 | DEVICE MANAGEMENT METHOD, MIDDLEWARE, AND MACHINE-TO-MACHINE COMMUNICATIONS PLATFORM, DEVICE, AND SYSTEM - Example embodiments of the present invention disclose a device management method, middleware, computer-program products, system, and apparatuses. The method includes: a resource access request is received by using a resource access interface, where the resource access request includes: a URI that is used to indicate a storage location of an accessed management object MO data resource; according to pre-created mapping between the resource access request of the MO data resource and a DM command, the resource access request of the MO data resource is converted into corresponding DM command, and according to pre-created mapping between the MO data resource and MO information, the MO information corresponding to accessed MO data is determined; and the DM command is sent to a target device corresponding to the URI to manage the MO information corresponding to the accessed MO data, so that the M2M applications may access different M2M platforms to manage devices, implementing end-to-end device management and related service applications. | 08-22-2013 |
20130294285 | METHOD FOR REMOTELY MANAGING A SENSOR NETWORK TOPOLOGY AND GATEWAY - A method for remotely managing a sensor network topology includes: receiving a device management DM command sent by a device management server, where the DM command acts on a preconstructed management object MO node and the MO node includes a node configured to discover a sensor network topology, a node configured to describe a sensor network topology, or a node configured to modify a sensor network topology; and managing a sensor network according to the DM command, where the management includes discovering the sensor network topology, describing the sensor network topology, or modifying the sensor network topology. By adopting the present invention, remote topology management of a sensor network successive to an M2M gateway can be implemented and the complexity for implementing the management is reduced. | 11-07-2013 |
20130346504 | GROUP COMMUNICATION METHOD AND APPARATUS FOR GROUP COMMUNICATION - A group communication method is provided, including: receiving, from a network application, a group access request that requests access to a group, where the group access request includes a group identifier of the group; obtaining group member information of all group members in the group according to the group identifier; according to the group member information, determining members of a first group that are connected to a service function entity through a same gateway in the group; and sending, to the gateway, a first group member access request that requests access to the members of the first group. In addition, a service function entity for group communication and a gateway for group communication are provided. The present invention is capable of reducing signaling overhead during group communication and thereby improving group communication efficiency. | 12-26-2013 |
20140120887 | Method, system, terminal, and server for implementing mobile augmented reality service - A method for implementing a mobile Augmented Reality (AR) service is disclosed. The method includes: a mobile AR server selects an AR target and/or AR content; and the mobile AR server delivers the AR target and/or the AR content to a mobile AR client. A system for implementing a mobile AR service, a mobile AR client and a mobile AR server are disclosed. The disclosure solves the problem of difficult application development, a high service deployment cost and an inconsistent user experience of an existing AR solution, and facilitates the development of an AR market greatly. The method for implementing a mobile AR service of the disclosure adapts to recognition of different types of AR targets and acquisition of AR contents, has desirable expansibility, and provides a uniform service experience for user's in different application scenarios. | 05-01-2014 |
20140359218 | Distributed Storage Method, Apparatus, and System - A distributed data storage method, apparatus, and system. The method includes: splitting a data file to generate K data slices, splitting each data slice of the K data slices to generate M data blocks for each data slice, and performing check coding on the M data blocks by using a redundancy algorithm to generate N check blocks; determining, by using a random algorithm, a first physical storage node corresponding to one block of the M data blocks and the N check blocks, and determining at least M+1 different physical storage nodes based on the determined first physical storage node and according to a first rule-based sorting manner; and storing at least M+1 blocks of the M data blocks and the N check blocks onto the at least M+1 different storage nodes, where K, M, and N are integers. | 12-04-2014 |
20150081675 | MOBILE AUGMENTED REALITY SEARCH METHOD, CLIENT, SERVER AND SEARCH SYSTEM - A mobile augmented reality search method, client, server and search system are provided. The method includes: a mobile augmented reality server receiving an augmented reality target search request sent from a mobile augmented reality client; according to parameters related to search carried in the augmented reality target search request, the mobile augmented reality server identifying which augmented reality targets need to be recognized and returned; the mobile augmented reality server searching for an augmented reality target which has relationships with the augmented reality targets already searched back; and the mobile augmented reality server sending searched augmented reality target information to the mobile augmented reality client. The disclosure solves the problem in the related art that the search result of a search merely for an object requested is incomplete and achieves a technical effect that more complete information is searched in an AR application, thus, the user is provided with more complete augmented reality information, and the experience of the user in the AR application is enhanced. | 03-19-2015 |
20150098361 | APPARATUS AND SYSTEM FOR MANAGING A SENSOR NETWORK - A network system includes a device management (DM) server and a Machine to Machine (M2M) gateway coupled to the DM server and to a plurality of sensor devices in a sensor network. The DM server is configured to send a DM command. The M2M gateway is configured to: after receiving the DM command, access a topology tree that includes first and second management object (MO) nodes, wherein the first MO node includes an identification and a type of the sensor network and the second MO node describes a characteristic of each of the plurality of sensor devices and a connection relationship of the plurality of sensor devices; according to address information within the DM command, locate at least one of the first and second MO nodes; retrieve information from the located at least one of the first and second MO nodes; and send the retrieved information to the DM server. | 04-09-2015 |
Patent application number | Description | Published |
20080205291 | SMART PRE-FETCHING FOR PEER ASSISTED ON-DEMAND MEDIA - A “Media Sharer” operates within peer-to-peer (P2P) networks to provide a dynamic peer-driven system for streaming high quality multimedia content, such as a video-on-demand (VoD) service, to participating peers while minimizing server bandwidth requirements. In general, the Media Sharer provides a peer-assisted framework wherein participating peers assist the server in delivering on-demand media content to other peers. Participating peers cooperate to provide at least the same quality media delivery service as a pure server-client media distribution. However, given this peer cooperation, many more peers can be served with relatively little increase in server bandwidth requirements. Further, each peer limits its assistance to redistributing only portions of the media content that it also receiving. Peer upload bandwidth for redistribution is determined as a function of surplus peer upload capacity and content need of neighboring peers, with earlier arriving peers uploading content to later arriving peers. | 08-28-2008 |
20080222480 | ERASURE-RESILIENT CODES HAVING MULTIPLE PROTECTION GROUPS - A multiple protection group (MPG) erasure-resilient coding method for constructing MPG codes for encoding and decoding data. The MPG codes constructed herein protect data chunks of data in multiple protection groups and subgroups. In general, the MPG erasure-resilient codes are constructed by locating data chunks into multiple protection groups and assigning at least one parity chunk to each protection group. Basic MPG codes are constructed from existing Maximum Distance Separable (MDS) codes by splitting at least some of the parity chunks into local parities for each of the multiple protection groups and projecting local parities onto each of the groups. Generalized MPG codes have a Maximally Recoverable property that can be used to determine whether an erasure pattern is recoverable or unrecoverable. Generalized MPG codes can recover any erasure pattern that is recoverable. | 09-11-2008 |
20080222481 | MULTIPLE PROTECTION GROUP CODES HAVING MAXIMALLY RECOVERABLE PROPERTY - A multiple protection group (MPG) erasure-resilient coding method for constructing MPG codes for encoding and decoding data. The MPG codes constructed herein protect data chunks of data in multiple protection groups and subgroups. In general, the MPG erasure-resilient codes are constructed by locating data chunks into multiple protection groups and assigning at least one parity chunk to each protection group. Basic MPG codes are constructed from existing Maximum Distance Separable (MDS) codes by splitting at least some of the parity chunks into local parities for each of the multiple protection groups and projecting local parities onto each of the groups. Generalized MPG codes have a Maximally Recoverable property that can be used to determine whether an erasure pattern is recoverable or unrecoverable. Generalized MPG codes can recover any erasure pattern that is recoverable. | 09-11-2008 |
20080301214 | ISP-AWARE PEER-TO-PEER CONTENT EXCHANGE - An Internet Service Provider (ISP)-aware peer-to-peer (P2P) content exchange system and method for exchanging content over a P2P network using the Internet. The system and method accounts for the type of relationship between peers and classifies and groups each peer according to these relationships. A peer overlay is constructed such that peers within a peer's neighborhood are favored over those peers outside of the neighborhood. Peer scheduling is utilized to exchange information about the availability of blocks of content. This block availability information can be exchanged differently and its frequency changed depending on a peer's classification. Peers are selected for block exchange based on their classification. A peer selection proportion may be defined that dynamically changes depending on contents of a peer's download buffer. The blocks to be exchanged then are selected based on the block availability information, such that the rarest blocks are exchanged before the more common blocks. | 12-04-2008 |
20090164762 | OPTIMIZING XOR-BASED CODES - A “code optimizer” provides various techniques for optimizing arbitrary XOR-based codes for encoding and/or decoding of data. Further, the optimization techniques enabled by the code optimizer do not depend on any underlining code structure. Therefore, the optimization techniques provided by the code optimizer are applicable to arbitrary codes with arbitrary redundancy. As such, the optimized XOR-based codes generated by the code optimizer are more flexible than specially designed codes, and allow for any desired level of fault tolerance. Typical uses of XOR-based codes include, for example, encoding and/or decoding data using redundant data packets for data transmission real-time communications systems, encoding and/or decoding operations for storage systems such as RAID arrays, etc. | 06-25-2009 |