Введение
Метод многоадресной передачи потоков в Интернет с использованием технологии peer-to-peer (Peercasting) – это способ многоадресной передачи потоков, как правило, аудио- и/или видеоданных, в Интернет посредством технологии peer-to-peer. Он может применяться для коммерческих, независимых и любительских трансляций. В отличие от традиционной IP-многоадресной рассылки, peercasting позволяет осуществлять доставку контента по запросу.
Peercasting is a method of multicasting streams, usually audio and/or video, to the Internet via peer to peer technology. It can be used for commercial, independent, and amateur multicasts. Unlike traditional IP multicast, peercasting can facilitate on demand content delivery.
Операция
Пиринговая трансляция обычно работает за счет автоматической пересылки потока другими участниками сети. P2P-сеть помогает участникам находить ретранслятор для указанного потока для подключения. Этот метод страдает от низкого качества обслуживания, когда ретрансляторы отключаются или участникам приходится переключаться на другой ретранслятор, что называется "текучестью". Другое используемое решение – minute swarming, при котором прямой эфир разбивается на файлы продолжительностью в одну минуту, которые распространяются через P2P-программы, такие как BitTorrent или Dijjer. Однако это приводит к избыточным накладным расходам на формирование нового роя каждую минуту. Новая техника заключается в разделении прямого эфира на несколько подпотоков, аналогично RAID-разделению. К этим подпотокам применяется коррекция ошибок и информация о времени, чтобы исходный поток можно было восстановить, используя как минимум все подпотоки, кроме одного (коды фонтана – эффективный способ создания и объединения подпотоков). Затем эти потоки передаются с использованием первого метода. Другое решение – разрешить клиентам подключаться к новому ретранслятору и возобновлять трансляцию с того места, где они остановились на старом ретрансляторе. Ретрансляторы сохраняют буфер обратной связи, чтобы позволить клиентам возобновить трансляцию с любой точки в пределах этого буфера. По сути, это будет расширением протокола Icecast.