Communications system having distributed control and real-time bandwidth management
First Claim
1. A method for achieving peer-to-peer communications in a packet-based communications network, comprising the steps ofproviding a plurality of peer communication devices connected via a packet based communications network;
- converting raw data into digital data in a sending peer communication device;
encoding the digital data into packets using one or more of the following data processing techniques (a) compression, (b) redundancy, and (c) interleaving;
transmitting the one or more data packets from the sending peer communication device over the network to a receiving peer communication device including reducing the expected time delays associated with the Ethernet exponential backoff algorithm by resetting the normal Ethernet retry algorithm based on a number of collisions or elapsed time;
decoding the data packets into digital data using one or more of the following data processing techniques (a) decompression, or (b) deinterleaving;
converting the decoded packets of digital data into a continuous stream of digital data, including using one or more of the following reconstruction techniques to mask the effects of missing decoded packets of digital data (a) interpolation, or (b) redundancy.converting the continuous stream of digital data into raw data.
7 Assignments
0 Petitions
Accused Products
Abstract
A communications system and method utilizes peer-to-peer architecture to provide "quality" real-time communications in a non-guaranteed, packet-based network. Quality real-time communications in a non-guaranteed, packet-based network is achieved by (i) minimizing packet loss, (ii) minimizing latency, and (iii) minimizing the artifacts caused by packet loss. The system distributes control of functionality to the peer communication devices, thereby eliminating the need for a central processor to establish peer-to-peer communications. Each of the peer communication devices has the capability to respond to variations in network loading to provide quality real-time communications.
-
Citations
18 Claims
-
1. A method for achieving peer-to-peer communications in a packet-based communications network, comprising the steps of
providing a plurality of peer communication devices connected via a packet based communications network; -
converting raw data into digital data in a sending peer communication device; encoding the digital data into packets using one or more of the following data processing techniques (a) compression, (b) redundancy, and (c) interleaving; transmitting the one or more data packets from the sending peer communication device over the network to a receiving peer communication device including reducing the expected time delays associated with the Ethernet exponential backoff algorithm by resetting the normal Ethernet retry algorithm based on a number of collisions or elapsed time; decoding the data packets into digital data using one or more of the following data processing techniques (a) decompression, or (b) deinterleaving; converting the decoded packets of digital data into a continuous stream of digital data, including using one or more of the following reconstruction techniques to mask the effects of missing decoded packets of digital data (a) interpolation, or (b) redundancy. converting the continuous stream of digital data into raw data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for achieving peer-to-peer audio communications in a packetbased communications network, comprising the steps of:
-
providing a plurality of peer communication devices connected via an Ethernet network; converting audio signals received via an audio receiver into digital data within a sending peer communication device; encoding the digital data into packets using one or more of the following data processing techniques (a) compression, (b) redundancy, and (c) interleaving; adding a header to each packet of encoded digital data; transmitting the one or more data packets from the sending peer communication device over the network to a receiving peer communication device including resetting the normal Ethernet retry algorithm once based on a number of collisions or elapsed time and dropping one or more packets based on a number of collisions or after an elapsed time after initiating the reset Ethernet retry algorithm; removing the header from each data packet to obtain the packets of encoded digital data; decoding the data packets into digital data using one or more of the following data processing techniques (a) decompression, or (b) deinterleaving; converting the decoded packets of digital data into a continuous stream of digital data, including using one or more of the following reconstruction techniques to mask the effects of missing decoded packets of digital data (a) interpolation, or (b) redundancy; converting the continuous stream of digital data into audio signals; and outputting the audio signals via a audio transmitter. - View Dependent Claims (10, 11, 12, 13)
-
-
14. A method for achieving peer-to-peer communications in a packet-based communications network, comprising the steps of:
-
providing a plurality of peer communication devices connected via a packet based communications network; encoding digital data into packets within a sending peer communication device; transmitting the one or more data packets from the sending peer communication device over the network to a receiving peer communication device; decoding the data packets into digital data within the receiving peer communication device; converting the decoded packets of digital data into a continuous stream of digital data, including the steps of (i) queuing the data packets of encoded digital data in a playback queue; (ii) synchronizing the rate at which digital data is removed from the playback queue with the rate at which digital data is added to the playback queue to compensate for clock skew between the sending and receiving peer communication devices; and (iii) using one or more of the following reconstruction techniques to mask the effects of missing decoded packets of digital data (a) interpolation, or (b) redundancy. - View Dependent Claims (15, 16, 17, 18)
-
Specification