Способы и устройство для гибридной многоадресной и одноадресной передач в сети передачи данных

Иллюстрации

Показать все

Изобретение относится к технике связи. Раскрыты способы и устройство для гибридной многоадресной и одноадресной передач в сети передачи данных. Способ включает в себя этап вычисления указателя затрат на многоадресную передачу и указателя затрат на одноадресную передачу, которые связаны с многоадресной и одноадресной передачами данных, этап определения того, что указатель затрат на многоадресную передачу является меньшим по сравнению с указателем затрат на одноадресную передачу, и этап формирования расписания передач, которое описывает время выполнения многоадресной передачи данных по сети передачи данных, этап передачи расписания передач и этап многоадресной передачи данных в соответствии с расписанием передач. Технический результат заключается в оптимизации передачи данных большому количеству пользователей. 8 н. и 42 з.п. ф-лы, 6 ил.

Реферат

Ссылка на родственные заявки

Настоящая заявка испрашивает приоритет находящейся на рассмотрении предварительной заявки на патент США, названной «Способ и устройство для гибридной многоадресной и одноадресной передач» № 60/572453 и поданной 18 мая 2004 г., раскрытие которой в настоящем документе полностью включено посредством ссылки.

Уровень техники

Область техники, к которой относится изобретение

Настоящее изобретение относится, в целом, к доставке содержимого (контента) в сетевой среде и, более конкретно, к способам и устройству для гибридной многоадресной и одноадресной передач в сети передачи данных.

Описание предшествующего уровня техники

Сети передачи данных, например сети беспроводной связи, вынуждены попеременно использоваться между службами, настроенными для отдельного терминала, и службами, передающимися посредством широковещательной передачи/многоадресной передачи всем терминалам. Распределение содержимого (данных) большому количеству терминалов (абонентов) является сложной проблемой. Сетевые системы, которые осуществляют технологию многоадресной передачи, могут доставлять данные в широкой области, однако в связи с тем, что отправителю затруднительно знать об успехе или неудаче таких доставок, затраты на ресурсы и их использование могут быть чрезмерными и невыгодными (неэкономными).

В одном типе многоадресной передачи одна копия информации одновременно передается сотням или тысячам получателей. Для достижения надежности передачи было предложено несколько методик, которые, в целом, могут быть разделены на три подхода, описанных следующим образом.

В первом подходе отправитель поддерживает информацию о состоянии для каждого получателя многоадресной передачи посредством отслеживания ответного сигнала подтверждения приема (ACK), прием которого ожидается от каждого получателя передачи. Если ответный сигнал подтверждения приема не был принят до истечения выбранного интервала времени ожидания, то отправитель повторно передает информацию группе, участвующей в многоадресной передаче. Этот подход не имеет широкой универсальности, если численность получателей слишком высока, а также является чувствительным к общеизвестной проблеме «интеграции сигнала подтверждения приема (ACK)», когда отправитель «засыпается» (получает) огромным количеством ответных сигналов подтверждения приема. Кроме того, отправителю зачастую не известно о том, кто является членами (получателями) группы, участвующей в многоадресной передаче, что мешает отправителю поддерживать информацию о состоянии для получателей.

Во втором подходе к проблеме универсальности первого подхода обращаются посредством передачи сигнала подтверждения неправильного приема (NACK) от каждого получателя в случае, если получатель не получает информацию безошибочно. Разновидность этого подхода должна иметь промежуточный узел множества сигналов подтверждения неправильного приема (NACK) от узлов нисходящего потока и посылать только один сигнал подтверждения неправильного приема (NACK) узлу восходящего потока данных. Затем узел восходящего потока данных может повторно выполнить передачу этой информации.

В третьем подходе надежность передачи достигается посредством избыточности. Самой простой формой избыточности является повторение. При использовании повторения в третьем подходе одна и та же информация повторно передается несколько раз. Другая форма или избыточность предписывают выполнить прямую коррекцию ошибок (FEC) над передающейся информацией. При использовании интеллектуальных механизмов кодирования достигается тот же самый показатель (фактор) надежности с использованием меньшего количества избыточной информации.

Однако во всех вышеупомянутых подходах повторная передача данных выполняется для всей группы получателей. Этот механизм повторной передачи может удовлетворительно работать в среде сети проводной связи, так как требуется отослать одну только копию информации. Протокол маршрутизации в пределах сети обрабатывает дублирование пакетов данных для доставки данных ветвям дерева распределения. Кроме того, передача информации «листьям» (последним этапам) дерева сравнительно экономит данную полосу пропускания сети проводной связи.

К сожалению, в отличие от сети проводной связи, последний этап в беспроводной сети является требующим наибольших затрат ресурсом. Он является радиоресурсом между приемопередатчиком базовой станции и множеством мобильных терминалов. Широковещательная передача в беспроводной сети не подлежит управлению мощностью передачи, поскольку она спроектирована для получения конкретной зоны обслуживания соты и частоты появления ошибок в кадре. Таким образом, широковещательные передачи в беспроводной сети используют большую мощность по сравнению с одноадресной передачей из-за большей зоны обслуживания, которая предназначена для достижения широковещательной передачей. В результате широковещательная передача, в целом, требует больших затрат по сравнению с одноадресной передачей.

Кроме того, в беспроводной широковещательной передаче ответный сигнал подтверждения приема от приемных терминалов является ограниченным. Надежность достигается посредством прямой коррекции ошибок (FEC) или посредством повтора широковещательной передачи. К сожалению, даже с большим коэффициентом прямой коррекции ошибок (FEC) или повторов радиопередачи, некоторые пользователи могут не принять данные. Например, мобильные терминалы, которые не приняли данные, могут находиться вне зоны широковещательной передачи или их прием широковещательной передачи может быть прерван из-за обработки речевой службы. Таким образом, повторная широковещательная передача информации будет не выгодна в связи с тем, что эти терминалы не смогут принять информацию. Также не будет выгодной повторная широковещательная передача информации, если количество не принявших информацию терминалов очень мало. Например, если для достижения надежности используется большой коэффициент прямой коррекции ошибок (FEC), то количество мобильных терминалов, которые не смогут безошибочно принять информацию в данном секторе, может быть очень мало. Таким образом, невыгодно использовать весь широковещательный канал для повторной широковещательной передачи информации малому подмножеству мобильных терминалов.

В связи с этим существует потребность в системе доставки для использования в сетевых средах, которая служит для определения наибольшей эффективности ресурсов и способа эффективных затрат на передачу данных большому количеству приемных терминалов. Например, система должна работать в среде беспроводной сети для определения большей эффективности и/или эффективности затрат для использования методик одноадресной или многоадресной передач для передачи данных большому количеству приемных терминалов.

Сущность изобретения

В одном или нескольких вариантах осуществления система доставки данных, содержащая способы и устройство, обеспечивается для эффективной доставки данных множеству терминалов, находящихся в сети передачи данных. В одном варианте осуществления система использует гибрид многоадресной и одноадресной передач для доставки данных (или содержимого) терминалам. Система особенно эффективно подходит для использования в беспроводных сетях, где беспроводная передача данных с базовой станции на множество мобильных терминалов использует радиоресурсы, требующие больших затрат.

В одном варианте осуществления находящийся в системе отправитель использует различные параметры для определения затрат на отправление данных с использованием многоадресной или одноадресной передач множеству находящихся в сети терминалов. На основании того, какая методика передачи требует меньших затрат, отправитель формирует расписание передач, которое определяет, как и когда выполнять передачи данных. Если данные должны быть переданы посредством многоадресной передачи, то отправитель передает данные посредством многоадресной передачи в соответствии с расписанием передач. Если терминал не может принять данные, когда они переданы, то терминал может запросить установление сеанса одноадресной передачи с отправителем для извлечения этих данных. В одном варианте осуществления после многоадресной передачи данных отправителя на терминалы отправитель может снова использовать анализ затрат на передачу для определения того, каким образом выполняется любая повторная передача. Таким образом, система избежит повторных широковещательных передач данных, требующих больших затрат, на все терминалы, если сеансы одноадресной передачи, требующие меньших затрат, будут доставлять данные достаточному количеству терминалов для удовлетворения желательных требований качества обслуживания. В результате чего ценные ресурсы беспроводной линии связи эффективно используются в связи с тем, что невыгодных широковещательных повторных передач данных избегают.

В одном варианте осуществления обеспечивается способ функционирования сервера, находящегося в сети передачи данных. Способ содержит этап вычисления (значения) указателя затрат на многоадресную передачу и (значения) указателя затрат на одноадресную передачу, которые связаны с многоадресной и одноадресной передачами данных. Способ также содержит этап определения того, что указатель затрат на многоадресную передачу является меньшим по сравнению с указателем затрат на одноадресную передачу, и этап формирования расписания передач, которое описывает время выполнения многоадресной передачи данных по сети передачи данных. Способ также содержит этап передачи расписания передач и этап многоадресной передачи данных в соответствии с расписанием передач.

В одном варианте осуществления устройство обеспечивается для использования в сервере, находящемся в сети передачи данных. Устройство содержит блок оценки затрат, который служит для вычисления (значения) указателя затрат на многоадресную передачу и (значения) указателя затрат на одноадресную передачу, которые ассоциативно связаны с многоадресной передачей и одноадресной передачей данных. Устройство также содержит логику обработки, которая служит для определения того, что указатель затрат на многоадресную передачу является меньшим по сравнению с указателем затрат на одноадресную передачу, и формирования расписания передач, которое описывает время выполнения многоадресной передачи данных по сети передачи данных. Устройство также содержит логику передачи, которая служит для передачи расписания передач и выполнения многоадресных передач данных в соответствии с расписанием передач.

В одном варианте осуществления устройство обеспечивается для использования в сервере, находящемся в сети передачи данных. Устройство содержит средство для вычисления (значения) указателя затрат на многоадресную передачу и (значения) указателя затрат на одноадресную передачу, которые ассоциативно связаны с многоадресной и одноадресной передачами данных, и средство для определения того, что указатель затрат на многоадресную передачу является меньшим по сравнению с указателем затрат на одноадресную передачу. Устройство также содержит средство для формирования расписания передач, которое описывает время выполнения многоадресной передачи данных по сети передачи данных, и средство для передачи расписания передач. Устройство также содержит средство для многоадресной передачи данных в соответствии с расписанием передач.

В одном варианте осуществления машиночитаемый носитель содержит команды, которые при выполнении посредством логики обработки в сервере обеспечивают возможность передачи данных по сети передачи данных. Машиночитаемый носитель содержит команды для вычисления (значения) указателя затрат на многоадресную передачу и (значения) указателя затрат на одноадресную передачу, которые ассоциативно связаны с многоадресной и одноадресной передачами данных, и команды для определения того, что указатель затрат на многоадресную передачу является меньшим по сравнению с указателем затрат на одноадресную передачу. Машиночитаемый носитель также содержит команды для формирования расписания передач, которое описывает время выполнения многоадресной передачи данных по сети передачи данных, и команды для передачи расписания передач. Машиночитаемый носитель также содержит команды для многоадресной передачи данных в соответствии с расписанием передач.

В одном варианте осуществления способ обеспечивается на стороне приемного терминала, находящегося в сети передачи данных. Способ содержит этап приема расписания передач, которое описывает, как будут переданы данные. Способ также содержит этап определения того, что данные должны быть переданы посредством многоадресной передачи по сети передачи данных в течение одного или нескольких циклов многоадресной передачи, и этап приема переданных посредством многоадресной передачи данных в течение упомянутых одного или нескольких циклов многоадресной передачи.

В одном варианте осуществления устройство обеспечивается для использования в приемном терминале, находящемся в сети передачи данных. Устройство содержит логику для приема расписания передач, которое описывает, как будут переданы данные. Устройство также содержит логику для определения того, что данные должны быть переданы посредством многоадресной передачи по сети передачи данных в течение одного или нескольких циклов многоадресной передачи, и логику для приема переданных посредством многоадресной передачи данных в течение упомянутого одного или нескольких циклов многоадресной передачи.

Другие аспекты, преимущества и особенности настоящего изобретения станут более очевидными после обзора нижеизложенных: краткого описания чертежей, подробного описания изобретения и формулы изобретения.

Краткое описание чертежей

Предшествующие аспекты и сопутствующие преимущества описанных в настоящем документе вариантов осуществления станут более очевидными посредством ссылки на нижеследующее подробное описание, взятое совместно с сопроводительными чертежами, на которых изображено следующее:

Фиг.1 изображает сеть передачи данных, которая содержит один вариант осуществления системы доставки данных.

Фиг.2 изображает подробное схематическое представление одного варианта осуществления передающего сервера, подходящего для использования в одном варианте осуществления системы доставки данных.

Фиг.3 изображает один вариант осуществления способа функционирования сервера в одном варианте осуществления системы доставки данных.

Фиг.4 изображает подробное схематическое представление одного варианта осуществления терминала, подходящего для использования в одном варианте осуществления системы доставки данных.

Фиг.5 изображает один вариант осуществления способа функционирования терминала в одном варианте осуществления системы доставки данных.

Фиг.6 изображает график, который иллюстрирует эффективность с учетом затрат и ресурса, достигаемую при использовании одного или нескольких вариантов осуществления описанной системы доставки данных.

Подробное описание изобретения

Следующее подробное описание описывает один или несколько вариантов осуществления системы доставки данных, которая служит для эффективной доставки данных с передающего сервера на множество терминалов в беспроводной сети. В одном варианте осуществления система использует методику гибридной передачи, которая комбинирует многоадресную и одноадресную передачи для эффективной доставки данных на терминалы. Система в особенности хорошо подходит для использования в средах беспроводных сетей, но также может быть использована в любом типе сетевой среды, включая, но не ограничиваясь этим, сети связи, сети общего пользования, например сеть Интернет, частные сети, например виртуальные частные сети (VPN), локальные сети, глобальные сети, сети дальней связи или любой другой тип сети передачи данных.

В следующем описании многоадресная передача определяется как охватывающая передачи из одной или нескольких следующих категорий.

«Один - много» (один отправитель и много получателей)

«Много - много» (много отправителей и много получателей)

«Много - один» (много отправителей и один получатель)

Таким образом, широковещательная передача, в целом, определяется в качестве первого типа многоадресной передачи. Однако термин «широковещательная передача» также используется в пределах данного документа для обозначения передачи в пределах любой из идентифицированных категорий многоадресной передачи.

Фиг.1 изображает сеть 100 передачи данных, которая содержит один вариант осуществления системы доставки данных. Сеть 100 содержит сервер 102, сеть 104 передачи данных и терминалы (1-N), как показано посредством ссылочного номера 106. Сеть 104 передачи данных может являться любым типом и/или комбинацией проводных/беспроводных сетей, которые предоставляют возможность передачи данных между сервером 102 и терминалами 106. Сеть 104 включает в себя базовую станцию 108, которая соединена с сетью 104 через канал 110 связи. Канал 110 связи может являться любым типом канала проводной/беспроводной связи, который предоставляет базовой станции 108 возможность обмена информацией по сети 104 передачи данных. Базовая станция связывается с терминалами 106 через беспроводные линии 112 связи, которые предоставляют данным возможность передачи беспроводным способом между базовой станцией 108 и терминалами 106. В одном варианте осуществления беспроводные линии 112 связи содержат каналы прямой связи, каналы обратной связи, каналы управления и любые другие типы каналов связи, которые могут быть использованы для обмена информацией между базовой станцией 108 и терминалами 106.

Сервер 102 обменивается информацией с сетью 104 передачи данных через линию 114 связи, которая может являться проводной/беспроводной линией связи. С целью данного описания предполагается, что сервер 102 включает в себя три файла 116 данных (или «файлы с содержимым») C1, C2, C3, которые могут иметь любой тип или формат. В одном или нескольких вариантах осуществления системы доставки данных, файлы 116 данных эффективно передаются посредством сервера 102 на терминалы 106 через сеть 104.

В одном варианте осуществления сервер 102 включает в себя блок 118 оценки затрат, который вычисляет оценки затрат на передачу, связанные с затратами на передачу 116 данных и в многоадресной и в одноадресной передачах с сервера 102. Например, блок 118 оценки затрат служит для вычисления (значения) указателя затрат на многоадресную передачу и (значения) указателя затрат на одноадресную передачу, которые могут сравниваться для определения методики с наименьшими затратами на передачу. Блок оценки затрат использует различные сетевые и системные параметры для определения оценки затрат на передачу.

Выход оценок затрат из блока 118 оценки затрат является входом на логику 120 выбора, которая осуществляет выбор между логикой многоадресной 122 передачи и одноадресной 124 передачи для выполнения передачи данных терминалам 106. В одном варианте осуществления логика 120 выбора осуществляет выбор методики передачи с наименьшими затратами на основании оценок затрат.

Для обеспечения выбранного уровня обслуживания сервер 102 служит для определения показателя (фактора) надежности, который указывает на надежность, с которой он желает выполнить доставку данных. На основании показателя (фактора) надежности, выбранный уровень прямой коррекции ошибок (FEC) применяется к данным 116, а конечные закодированные данные чередуются для формирования потока 126 данных, который передается на терминалы 106 с использованием выбранной методики передачи.

Перед передачей сервер 102 служит для формирования расписания передач, которое описывает, как и когда выполняются передачи данных терминалам 106. Сервер 102 передает расписание передач на терминалы 106 для того, чтобы терминалам заранее было известно о том, как будут передаваться данные. Доставка расписания передач может быть выполнена с использованием любого типа канала связи, включая, но не ограничиваясь этим, любой канал управления, внеполосный канал или любой другой тип канала связи между сервером 102 и терминалами 106. Если данные должны быть переданы на терминалы посредством одноадресной передачи, то расписание передач обеспечивает временное окно, в котором терминалы 106 могут установить сеансы одноадресной передачи с сервером для извлечения данных 116. Если данные должны быть переданы на терминалы посредством многоадресной передачи, то расписание передач определяет время выполнения многоадресной передачи данных 116 для того, чтобы терминалы могли "прослушивать эфир" в течение соответствующего времени для приема данных.

Если данные были переданы посредством многоадресной передачи, то любой терминал, не принявший данные, может выполнить запрос на прием данных посредством одноадресной передачи. Например, терминал может находиться вне выбранного диапазона передачи, испытывать помехи передачи или предоставлять другую службу, что предотвращает прием данных, переданных посредством многоадресной передачи. Например, на Фиг.1 предполагается, что терминалы 1 и N не приняли переданные посредством многоадресной передачи данные, и, таким образом, эти терминалы отсылают запросы (Req1 и Req2, соответственно) на сервер 102, как показано траекториями 130, 132 и 134. Запросы представляют собой запросы на установление сеанса одноадресной передачи с сервером 102, для того, чтобы данные могли быть извлечены терминалами 1 и N с использованием одноадресных передач.

В одном варианте осуществления, после многоадресной передачи данных, сервер 102 принимает множество запросов на установление сеансов одноадресной передачи с терминалами 106. После того как сервер 102 принял запросы, блок 118 оценки затрат снова вычисляет, эффективно ли по затратам повторно передать данные с использованием многоадресной передачи или установить необходимое количество сеансов одноадресной передачи для удовлетворения всех запросов. После выполнения определения данные повторно передаются с использованием наиболее эффективного по затратам способа. Например, если повторная широковещательная передача, использующая многоадресную передачу, является самой эффективной по затратам, то формируется новое расписание передач и отсылается терминалам перед повторной широковещательной передачей. Если же сеансы одноадресной передачи являются самыми эффективными по затратам, то сервер 102 служит для установления необходимого количества сеансов одноадресной передачи, необходимых для удовлетворения запросов, которые он принял.

Таким образом, в одном или нескольких вариантах осуществления система доставки данных служит для определения наиболее эффективного по затратам способа для передачи данных на терминалы по сети передачи данных. Определение также может быть выполнено относительно любых повторных передач данных до тех пор, пока данные не будут предоставлены достаточному количеству терминалов, которые достигли выбранного уровня обслуживания. В результате чего варианты осуществления системы доставки данных обеспечивают систему гибридной передачи, поскольку одни и те же данные могут быть переданы посредством и многоадресной и одноадресной передач на основании самого эффективного способа передачи любой данной конкретной сетевой среды.

Фиг.2 изображает подробное схематическое представление одного варианта осуществления передающего сервера 200, подходящего для использования в одном варианте осуществления системы доставки данных. Например, сервер 200 может являться изображенным на Фиг.1 сервером 102. Сервер 200 содержит логику 202 обработки, ресурсы 204 устройства, память 206 для хранения данных, логику 208 передачи и логику 210 приема, все из которых соединены с внутренней шиной 212 данных. Сервер 200 также содержит блок 214 оценки затрат и логику 216 прямой коррекции ошибок (FEC)/чередования, которые также подключены к шине 212 данных.

В одном или нескольких вариантах осуществления логика 202 обработки может быть выполнена в виде центрального процессора (CPU), процессора, вентильной матрицы, логики аппаратных средств, элементов памяти, виртуальной машины, программного обеспечения и/или любой комбинации аппаратных средств и программного обеспечения. Таким образом, логика 202 обработки, в целом, реализует логику для выполнения машиночитаемых команд и управления одним или несколькими другими функциональными элементами сервера 200 через внутреннюю шину 212 данных.

Ресурсы и интерфейсы 204 устройства содержат аппаратные средства и/или программное обеспечение, которые предоставляют серверу 200 возможность обмена информацией с внутренними и внешними системами. Например, внутренние системы могут включать в себя массовые запоминающие устройства, память, драйвер дисплея, модем или другие внутренние ресурсы устройства. Внешние системы могут включать в себя устройства пользовательского интерфейса, принтеры, дисководы или другие локальные устройства или системы.

Память 206 для хранения данных содержит любой тип устройства памяти и включает в себя данные (или содержимое), передающиеся одному или нескольким терминалам по сети передачи данных. Например, содержимое может содержать мультимедийное содержимое или любой другой тип содержимого.

Логика 208 передачи может быть выполнена в виде аппаратных средств и/или программного обеспечения, которое служит для предоставления серверу 200 возможности передачи данных или другой информации на удаленные устройства или системы. Например, в одном варианте осуществления логика 208 передачи содержит логику многоадресной передачи, которая служит для многоадресной передачи данных и/или другой информации по каналу 218 многоадресной передачи на удаленные устройства, например мобильные терминалы. Например, логика многоадресной передачи предоставляет серверу 200 возможность многоадресной передачи по сети передачи данных множеству удаленных терминалов. Логика 208 передачи также содержит логику одноадресной передачи, которая служит для одноадресной передачи данных и/или другой информации по каналу 220 одноадресной передачи удаленным устройствам, например удаленным терминалам. Например, логика одноадресной передачи предоставляет серверу 200 возможность установления одного или нескольких сеансов одноадресной передачи для передачи данных по каналу 220 одноадресной передачи одному или нескольким удаленным терминалам. Логика 208 передачи также содержит логику канала управления для передачи управляющей информации по каналу 222 управления удаленным устройствам. Логика канала управления может содержать любые подходящие аппаратные средства и/или программное обеспечение и осуществлять любой тип канала управления, подходящего для передачи информации с сервера 200 на один или несколько удаленных терминалов.

Логика 210 приема может быть выполнена в виде аппаратных средств и/или программного обеспечения, которое служит для предоставления серверу 200 возможности приема данных и другой информации от удаленных устройств через канал 224 приема. Например, логика 210 приема взаимодействует с сетью передачи данных через канал 224 приема для предоставления серверу 200 возможности приема запросов (на получение) данных, которые были переданы от удаленных терминальных устройств.

Логика 214 блока оценки затрат может быть выполнена в виде центрального процессора (CPU), процессора, вентильной матрицы, логики аппаратных средств, элементов памяти, виртуальной машины, программного обеспечения и/или любой комбинации аппаратных средств и программного обеспечения. Блок 214 оценки затрат служит для вычисления затрат на многоадресную и одноадресную передачи содержимого по сети передачи данных множеству удаленных терминалов. Например, блок оценки затрат использует разнообразие параметров для вычисления (значений) указателей затрат, которые включают в себя указатель затрат на многоадресную передачу и указатель затрат на одноадресную передачу, которые указывают затраты на одноадресную и многоадресную передачи. Параметры затрат включают в себя, но не ограничиваются этим, реальные затраты, использование полосы пропускания, использование сети, местоположение, задержку, мощность и любые другие параметры использования ресурса или затрат. В одном варианте осуществления параметры затрат могут изменяться от применения к применению, однако может быть использована любая функция вычисления затрат. Вывод указателей затрат с блока 214 оценки затрат может быть использован для определения того, многоадресная или же одноадресная передача данных обеспечивает способ передачи данных удаленным терминалам с наименьшими затратами.

Логика 216 прямой коррекции ошибок (FEC)/чередования может быть выполнена в виде центрального процессора (CPU), процессора, вентильной матрицы, логики аппаратных средств, элементов памяти, виртуальной машины, программного обеспечения и/или любой комбинации аппаратных средств и программного обеспечения. Блок 216 прямой коррекции ошибок (FEC)/чередования служит для обеспечения прямой коррекции ошибок в передающемся содержимом для того, чтобы можно было выполнить доставку содержимого с выбранным уровнем качества обслуживания (QoS). В одном или нескольких вариантах осуществления блок 216 прямой коррекции ошибок (FEC)/чередования может обеспечить любой тип прямой коррекции ошибок (FEC) в передающемся содержимом. Кроме того, блок 216 прямой коррекции ошибок (FEC)/чередования также служит для чередования множества файлов с содержимым для обеспечения разнесения и предотвращения блокировок головного пакета (HOL). Таким образом, блок 216 прямой коррекции ошибок (FEC)/чередования может обеспечить любую подходящую методику чередования для обеспечения разнесения передачи.

Сервер 200 является подходящим для использования в одном или нескольких вариантах осуществления системы доставки данных для эффективной доставки данных по сети передачи данных множеству терминалов. В процессе работы сервер 200 имеет содержимое (1, 2, 3), сохраненное в памяти 206 для хранения данных, предназначенное для доставки приемным терминалам. Логика 214 блока оценки затрат используется для оценки указателей затрат, которые указывают затраты, связанные с передачей содержимого с использованием одноадресной и многоадресной передач. Логика 202 обработки принимает указатели затрат от блока 214 оценки затрат и выбирает методику с наименьшими затратами на передачу для выполнения передачи содержимого удаленным терминалам. В одном варианте осуществления логика 202 обработки формирует расписание передач, которое описывает способ и время выполнения передачи содержимого удаленным терминалам. Например, в одном варианте осуществления расписание передач описывает время выполнения многоадресной передачи одного или нескольких элементов содержимого с помощью сервера для приема удаленными терминалами. В другом варианте осуществления расписание передач описывает (временное) окно, в пределах которого терминалам разрешается установить сеанс одноадресной передачи с сервером для выполнения извлечения содержимого. Более подробное описание процесса работы системы доставки данных и сервера 200 обеспечивается в другом разделе настоящего документа.

В одном варианте осуществления система доставки данных содержит команды программы, сохраненные на машиночитаемом носителе, которые при выполнении посредством логики 202 обработки обеспечивают описанные в настоящем документе функции сервера 200. Например, команды могут быть загружены на сервер 200 с машиночитаемого носителя, например гибкого диска, диска CD-ROM, карты памяти, устройства флэш-памяти, оперативной памяти (RAM), постоянной памяти (ROM) или с любого другого типа запоминающего устройства или машиночитаемого носителя, который связан с сервером 200 с помощью интерфейса с помощью средств 204 устройства. В другом варианте осуществления команды могут быть загружены на сервер 200 с сетевого ресурса, который взаимодействует с сервером 200 через логику 210 приема. Команды, при выполнении посредством логики 202 обработки, обеспечивают один или несколько вариантов осуществления системы доставки данных, как описано в настоящем документе.

Фиг.3 изображает вариант осуществления способа 300 функционирования сервера в одном варианте осуществления системы доставки данных. Для ясности, способ 300 будет описан со ссылкой на изображенный на Фиг.2 сервер 200. В одном или нескольких вариантах осуществления логика 202 обработки выполняет программные команды для выполнения нижеописанных функций.

На этапе 302 устанавливается цикловой указатель (N) многоадресной передачи. Например, цикловой указатель (N) многоадресной передачи устанавливается равным нулю. В одном варианте осуществления цикловой указатель N сохраняется и устанавливается посредством логики 202 обработки, а также указывает количество циклов, использующееся для многоадресной передачи данных удаленным терминалам.

На этапе 304 сервер вычисляет затраты на одноадресную (U) и многоадресную передачи (M) содержимого, передающегося множеству удаленных терминалов. На этапе 306 вычисляются затраты на многоадресные передачи, а на этапе 308 вычисляются затраты на одноадресные передачи. Вычисления для каждого типа передачи требуют входных данных, например данные использования, вероятность выхода приемника из строя, частота появления ошибок в кадре, количество абонентов, прямая коррекция ошибок (FEC), системные издержки протокола и т.д. Например, блок 214 оценки затрат служит для вычисления (значения) указателя затрат на многоадресную передачу и (значения) указателя затрат на одноадресную передачу.

На этапе 310 выполняется тестирование для сравнения затрат на многоадресную (M) и одноадресную (U) передачи. Например, тестирование выполняется посредством логики 202 обработки на основании указателей затрат, принятых от блока 214 оценки затрат. Если тестирование определит, что более эффективно в отношении затрат отослать содержимое с использованием одноадресных передач, то способ переходит на этап 312. Если тестирование определит, что более эффективно в отношении затрат отослать содержимое с использованием многоадресной передачи, то способ переходит на этап 314.

На этапе 312 выполняется тестирование для определения того, находится ли способ в начальном цикле многоадресной передачи из условия, чтобы никакая многоадресная передача не была запланирована. Например, тестирование выполняется посредством логики 202 обработки. Если цикл многоадресной передачи устанавливается в его начальное нулевое значение, то никакая многоадресная передача не была запланирована, и способ переходит на этап 316. Если цикл многоадресной передачи устанавливается равным любому отличному от нуля числу, то одна или несколько многоадресных передач являются уже запланированными, и способ переходит на этап 318.

На этапе 316 расписание одноадресных передач формируется для того, чтобы содержимое могло быть передано удаленным терминалам с использованием одноадресной передачи. Например, анализ затрат, выполненный посредством логики 202 обработки, определил, что более эффективно в отношении затрат передать содержимое с использованием одноадресных передач. В одном варианте осуществления логика 202 обработки формирует расписание передач, которое включает в себя контактное окно для удаленных терминалов для выполнения извлечения содержимого с использованием одноадресных передач. Контактное окно определяет временной интервал, в котором удаленный терминал может установить сеанс одноадресной передачи с сервером для выполнения извлечения содержимого. Логика 202 обработки служит для установления сеансов одноадресной передачи с удаленными терминалами, а содержимое передается тем терминалам с использованием логики 208 передачи и канала 220 одноадресной передачи. Затем способ переходит на этап 320, на котором выполняется передача расписания передач терминалам с использованием канала 222 управления, и данные передаются