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

Иллюстрации

Показать все

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

Реферат

ТРЕБОВАНИЕ ПРИОРИТЕТА ПО РАЗДЕЛУ 35 §119 СВОДА ЗАКОНОВ США

По данной заявке испрашивается приоритет по дате подачи предварительной заявки № 60/739873, озаглавленной «METHODS AND APPARATUS DELIVERY OF SOFTWARE UPGRADE NOTIFICATION TO DEVICES IN COMMUNICATION SYSTEMS», зарегистрированной 23 ноября 2005, которая во всей своей полноте представлена для справки.

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

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

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

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

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

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

Различные представленные аспекты относятся к обеспечению уведомления об обновлении программного обеспечения для прикладной программы в устройстве, которое использует сети групповой (широковещательной) передачи и однонаправленной передачи. Эти два вида сетей (групповой передачи и однонаправленной передачи) могут быть проводными или беспроводными сетями. Примером такой прикладной программы является система «только передающей линии связи» (FLO), которая имеет два вида доступных сетей: (1) FLO как сеть групповой (широковещательной) передачи и (2) сеть CDMA (множественного доступа с кодовым разделением каналов) 1x EV-DO как сеть однонаправленной передачи. Как правило, обновление программного обеспечения происходит не часто; однако устройства должны соответствовать современным требованиям к обновлению программного обеспечения, потому что программное обеспечение могут модернизировать по критически важным причинам, таким как расширение возможностей программных средств, устранение ошибок, устранение нарушений правил обеспечения безопасности и т.д. Представленные аспекты можно применять к доставке любого вида повторяющейся, редко встречающейся и/или критически важной информации на устройства в беспроводных сетях. Различные аспекты способствуют уменьшению используемых ресурсов и загрузки сервера с помощью быстрой доставки уведомления об обновлении программного обеспечения устройствам, такое устройство может быть на современном уровне по отношению к уведомлению об обновлении программного обеспечения всякий раз, когда устройство подключают к сети.

Согласно одному из аспектов способ обеспечения уведомления об обновлении программного обеспечения в среде беспроводной связи может содержать прием от сервера информации о версии программного обеспечения, выполнение протокола проверки для определения, доступно ли обновление программного обеспечения для пользовательского устройства, и выполнение протокола доступа для приема уведомления об обновлении программного обеспечения. Способ может дополнительно содержать передачу уведомления об обновлении программного обеспечения по каналу групповой передачи. Протокол проверки может быть протоколом проверки «выталкивания», выполняемым по соединению групповой передачи между сервером и по меньшей мере одним пользовательским устройством, который может содержать прием информации о версии программного обеспечения по каналу групповой передачи данных, и оценку, соответствует ли пользовательскому устройству идентификатор (ИД) программного обеспечения, принятый с информацией о версии, для определения, относится ли принятая информация о версии программного обеспечения к данному пользовательскому устройству. Протокол проверки может также быть протоколом проверки «вытягивания», который содержит генерацию двухточечного соединения между пользовательским устройством, запрос от сервера информации об обновлении программного обеспечения, прием ответа сервера, содержащего информацию о версии программного обеспечения, и прием уведомления об обновлении программного обеспечения, если номер версии в ответе сервера больше номера версии, связанного с программным обеспечением, хранящимся на пользовательском устройстве. Способ может дополнительно содержать использование основанного на маркере протокола доступа и определение, является ли правильным (действительным) маркер клиента в пользовательском устройстве, выполнение протокола проверки «вытягивания», создание маркера клиента и установку значения маркера клиента равным значению маркера сервера, если значение маркера клиента не является правильным, и определение, является ли значение маркера клиента большим или равным значению маркера сервера (по модулю n), если маркер клиента является правильным. Кроме того, способ может содержать определение, находится ли значение маркера клиента между значением маркера сервера минус m (по модулю n), причем сервер передает уведомления об обновлении программного обеспечения, связанные с m (положительным целым числом) самых последних значений маркера сервера, и значением маркера сервера - 1 (по модулю n), где n - максимальное значение маркера, если значение маркера клиента не является большим или равным значению маркера сервера (по модулю n). Способ может дополнительно содержать выполнение протокола проверки «выталкивания» и установку значения маркера клиента равным значению маркера сервера, если значение маркера клиента находится между значением маркера сервера минус m (по модулю n) и значением маркера сервера - 1 (по модулю n), и выполнение протокола проверки «вытягивания» и установку значения маркера клиента равным значению маркера сервера, если значение маркера клиента не находится между значением маркера сервера минус m (по модулю n) и значением маркера сервера - 1 (по модулю n).

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

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

Еще один аспект относится к считываемому компьютером носителю, имеющему компьютерную программу, содержащую выполняемые компьютером команды для приема от сервера служебного сообщения, содержащего информацию о версии программного обеспечения; выполнения протокола проверки для определения, доступно ли обновление программного обеспечения для пользовательского устройства, и выполнения протокола доступа для приема уведомления об обновлении программного обеспечения. Протокол проверки может быть протоколом проверки групповой передачи и/или протоколом проверки одноадресной передачи. Считываемые компьютером носители могут дополнительно иметь команды для определения, какой протокол проверки следует выполнять, которые включают в себя команды для анализа значения маркера клиента и сравнения значения маркера клиента со значением маркера сервера.

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

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

Фиг.2 является иллюстрацией способа выполнения протокола проверки «выталкивания» для определения, доступно ли обновление программного обеспечения для пользовательского устройства в среде беспроводной связи в соответствии с одним или большим количеством аспектов.

Фиг.3 является иллюстрацией способа выполнения протокола проверки «вытягивания» для определения, доступно ли обновление программного обеспечения для пользовательского устройства в среде беспроводной связи в соответствии с одним или большим количеством аспектов.

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

Фиг.5 показывает способ, который облегчает выполнение маркерного протокола доступа в комбинации с каждым из способа проверки «выталкивания» и протокола проверки «вытягивания» в соответствии с различными аспектами.

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

Фиг.7 является иллюстрацией системы концептуального краткого обзора способа «выталкивания», способа «вытягивания» и гибридного способа проверки с маркерным доступом.

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

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

Фиг.10 показывает различные аспекты сервера поставщика информационного наполнения, подходящего для использования в системе доставки информационного наполнения.

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

Фиг.12 является иллюстрацией устройства, которое способствует выполнению протокола проверки и протокола доступа в среде беспроводной связи в соответствии с различными аспектами.

ПОДРОБНОЕ ОПИСАНИЕ

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

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

Кроме того, различные варианты осуществления описаны в данной работе в связи с абонентской станцией. Абонентскую станцию можно также называть системой, абонентским устройством, подвижной станцией, мобильным телефоном, удаленной станцией, точкой доступа, удаленным терминалом, терминалом доступа, пользовательским терминалом, пользовательским агентом, пользовательским устройством или пользовательским оборудованием. Абонентская станция может быть мобильным телефоном, радиотелефоном, телефоном, поддерживающим протокол инициации сеанса (SIP), станцией местной линии радиосвязи (WLL), карманным персональным компьютером (КПК), карманным устройством, имеющим возможность беспроводной связи, или другим устройством обработки, подключенным к беспроводному модему.

Кроме того, различные описанные аспекты или особенности можно осуществлять как способ, устройство или изделие, используя стандартные методики программирования и/или конструирования. Термин «изделие» в данной работе охватывает компьютерную программу, доступную с любого считываемого компьютером устройства, средства связи или носителя данных. Например, считываемые компьютером носители могут включать в себя магнитные запоминающие устройства (например, жесткий диск, гибкий диск, магнитные полосы...), оптические диски (например, компакт-диск (CD), цифровой универсальный диск (DVD)...), интеллектуальные карты и устройства флэш-памяти (например, платы памяти, устройства типа «stick», «key drive»...). Дополнительно различные описанные носители данных могут представлять одно или большее количество устройств и/или других считываемых компьютером носителей для хранения информации. Термин «считываемый компьютером носитель» может включать в себя беспроводные каналы и различные другие носители, способные хранить, содержать и/или переносить команду(-ы) и/или данные, но не ограничен ими.

Обращаясь к фиг.1, система 100 беспроводной сети связи показана в соответствии с различными представленными вариантами осуществления. Система 100 может содержать одну или большее количество базовых станций 102 в одном или большем количестве секторов, которые принимают, передают, повторяют и т.д. сигналы беспроводной связи друг к другу и/или к одному или большему количеству мобильных устройств 104. Каждая базовая станция 102 может содержать цепь передатчика и цепь приемника, каждая из которых может, в свою очередь, содержать множество компонентов, связанных с передачей и приемом сигнала (например, процессоров, блоков модуляции, мультиплексоров, блоков демодуляции, демультиплексоров, антенн и т.д.) Специалисты должны признать, что мобильные устройства 104 могут быть, например, сотовыми телефонами, интеллектуальными телефонами, портативными компьютерами, карманными устройствами связи, карманными вычислительными устройствами, спутниковыми радиотелефонами, системами глобального позиционирования, КПК и/или любыми другими подходящими устройствами для осуществления связи по беспроводной сети. Систему 100 можно использовать вместе с различными описанными аспектами для облегчения уведомления пользовательских устройств об обновлении программного обеспечения в среде беспроводной связи, которые сформулированы относительно последующих чертежей.

В соответствии с различными представленными аспектами следующий пример относится к сценарию, в котором большое количество пользовательских устройств используют прикладную программу уведомления об обновлении программного обеспечения и хотят уведомлений об обновлении для большого количества классов программного обеспечения. Пусть версия программного обеспечения содержит два компонента X и Y, так что класс программного обеспечения описывают как ИД_ПРОГРАММЫ (X), и порядковый номер программного обеспечения определяют с помощью (Y). Могут существовать множество классов программного обеспечения для прикладных программ в зависимости от различных видов операционных систем (ОС), различных операторов связи и различных видов устройств. Таким образом, X может содержать любой уровень иерархии, так что, например, X=a.b.c, где «a» является ИД (идентификатором) типа ОС (операционной системы), «b» является ИД оператора связи и «c» является ИД типа устройства. Порядковый номер (Y) (например, «версия 3», «версия 5.2» и т.д.) увеличивают всякий раз, когда появляется новое программное обеспечение, доступное для данного ИД_ПРОГРАММЫ.

Для уведомления об обновлении программного обеспечения можно рассматривать два конструктивных параметра с точки зрения устройства, а именно: (1) способ получения информации и (2) время получения информации. Способ, с помощью которого получают информацию об обновлении, относится к выполнению протокола «проверки», и определение его времени относится к выполнению протокола доступа. Как описано, один или большее количество протоколов проверки можно объединять с любым из множества протоколов доступа. Таким образом представленные системы и способы могут сохранять ресурсы сети с помощью уменьшения потребности в долговременно потребляющих полосу пропускания передач обновления программного обеспечения, также облегчая обеспечение обновления программного обеспечения на пользовательские устройства в сети.

Обращаясь к фиг.2-5, показаны способы, относящиеся к уведомлению пользовательского устройства об обновлении программного обеспечения. Описанные способы можно выполнять в среде FDMA (множественного доступа с частотным разделением каналов), среде OFDMA (множественного доступа с ортогональным частотным разделением каналов), среде CDMA (множественного доступа с кодовым разделением каналов), среде WCDMA (широкополосного множественного доступа с кодовым разделением каналов), среде TDMA (множественного доступа с временным разделением каналов), среде SDMA (множественного доступа с пространственным разделением каналов) или в любой другой подходящей беспроводной среде. Хотя в целях простоты объяснения способы показаны и описаны как последовательность действий, следует понять и признать, что данные методологии не ограничены порядком действий, поскольку некоторые действия, в соответствии с одним или большим количеством вариантов осуществления, могут происходить в другом порядке и/или одновременно с другими действиями из действий, показанных и описанных в данной работе. Например, специалисты должны понять и признать, что данная методология может альтернативно быть представлена как последовательность взаимодействующих состояний или событий, таких как на диаграмме состояний. Кроме того, не все показанные действия могут быть обязаны осуществлять способ в соответствии с одним или большим количеством аспектов.

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

Согласно способу 200 на этапе 202 пользовательское устройство может принимать информацию о версии программного обеспечения от сервера по выделенному каналу групповой передачи данных. Сервер может непрерывно передавать самый последний порядковый номер версии программного обеспечения для всех классов программного обеспечения в канале передачи данных. ИД_ПРОГРАММЫ можно использовать для определения области действия информации последовательности и/или версии согласно различным аспектам. Например, ИД_ПРОГРАММЫ можно использовать как «адрес» сообщения, и устройство принимает только сообщение, «адресованное» к его конкретному ИД_ПРОГРАММЫ. Таким образом, на этапе 204 устройство с конкретным ИД_ПРОГРАММЫ настраивается на канал передачи данных и оценивает сигнал на нем до тех пор, пока оно не найдет последний порядковый номер, соответствующий его ИД_ПРОГРАММЫ. На этапе 206 определяют, больше или нет последний порядковый номер, который передают в канале передачи данных, чем порядковый номер существующего программного обеспечения устройства. Если да, то уведомление об обновлении программного обеспечения нужно доставлять пользовательскому устройству. На этапе 208 пользовательское устройство может перейти к выполнению протокола доступа для получения обновления программного обеспечения.

Фиг.3 является иллюстрацией способа 300 выполнения протокола проверки «вытягивания» для определения, доступно ли обновление программного обеспечения для пользовательского устройства в среде беспроводной связи в соответствии с одним или большим количеством аспектов. Протокол проверки «вытягивания» содержит двухточечную линию связи между сервером и пользовательским устройством. На этапе 302 устройство может отдельно создавать двухточечное (одноадресное) соединение на сервер. На этапе 304 устройство может посылать сообщение запроса информации об обновлении программного обеспечения для «вытягивания» такой информации от сервера. Сообщение запроса может содержать ИД_ПРОГРАММЫ устройства и порядковый номер, указывающий самую последнюю версию программного обеспечения на устройстве. На этапе 306 устройство может принимать сообщение ответа от сервера. Согласно одному из аспектов сообщение ответа может содержать последний порядковый номер, связанный с конкретной прикладной программой для ИД_ПРОГРАММЫ, обеспеченной устройством на этапе 304. В таком случае устройство может определять, требуется ли ему обновление программного обеспечения или нет (например, определяя, больше или нет порядковый номер, принятый в сообщении ответа, чем порядковый номер существующего программного обеспечения устройства). Согласно другому аспекту на этапе 306 сервер может определять, больше или нет последний порядковый номер программного обеспечения, чем указанный устройством порядковый номер, и может посылать уведомление об обновлении программного обеспечения в сообщении ответа (например, «необходима модернизация» или «модернизация не требуется», или подобное сообщение). В любом случае на этапе 308 устройство может принимать уведомление об обновлении.

Способы 200 и 300 можно объединять с любым из множества способов доступа. Например, может использоваться способ периодического доступа, в котором устройство периодически проверяет, доступно ли обновление программного обеспечения. Для каждого класса программного обеспечения устанавливают период проверки (например, 1 день, 5 дней, 7 дней, 30 дней и т.д.), который может отличаться для различных классов программного обеспечения. Согласно другому способу доступа устройство может проверять обновление при каждом запуске прикладной программы. Согласно еще одному аспекту пользователю можно разрешать инициировать проверку программного обеспечения. Еще один аспект относится к основанному на операции протоколу доступа, посредством которого устройство выполняет протокол проверки при операции между устройством и сервером. Дополнительный аспект относится к «маркерному» способу доступа, который использует выделенный канал групповой передачи, называемый «служебным» каналом, для передачи обновленной информации о состоянии системы, который описан более подробно ниже на фиг.4.

Фиг.4 является иллюстрацией способа 400, который облегчает предоставление возможности пользовательскому устройству принимать уведомление об обновлении программного обеспечения в соответствии с одним или большим количеством аспектов. Способ 400 является основанным на маркере подходом, в котором значение маркера клиента сравнивают со значением маркера сервера, которое периодически передают в канале групповой передачи. На этапе 402 устройство может настраиваться на служебный канал, по которому сервер непрерывно передает служебную информацию, которая может включать в себя последний номер версии программного обеспечения, или порядковый номер, информацию ИД устройства и т.д., и принимать служебное сообщение. Устройство может периодически настраиваться на служебный канал. В отличие от других каналов передачи данных, служебный канал содержит меньшее количество, но критически важной, информации для работы прикладной программы. Таким образом, ресурсы, необходимые пользовательскому устройству для настройки на этот канал и считывания служебного сообщения, являются относительно небольшими с точки зрения устройства. На этапе 404 можно определять, присутствует ли маркер клиента (МАРКЕР_КЛ). Согласно одному из аспектов устройство локально поддерживает целочисленное значение МАРКЕРА_КЛ (например, 1-байтовое целочисленное значение или некоторое другое подходящее значение). Первоначально МАРКЕР_КЛ не присутствует, однако, после приема служебного сообщения, если МАРКЕР_КЛ не присутствует в устройстве, как определено на этапе 404, то на этапе 406 устройство выполняет проверку обновления программного обеспечения. Также на этапе 406 устройство может создавать МАРКЕР_КЛ и устанавливать его равным МАРКЕРУ_СЕРВ в служебном канале.

Сервер поддерживает целочисленное значение МАРКЕРА_СЕРВ (например, 1 байт, или некоторое другое подходящее значение). Согласно 1-байтовому примеру, но не ограничиваясь им, значение МАРКЕРА_СЕРВ можно увеличивать на 1 по модулю 256 от 0 после выпуска новых обновлений программного обеспечения. Значение МАРКЕРА_СЕРВ можно непрерывно передавать в служебном канале. Если на этапе 404 МАРКЕР_КЛ присутствует, то на этапе 408 можно определять, равен или нет МАРКЕР_КЛ МАРКЕРУ_СЕРВ. Если значение МАРКЕРА_КЛ меньше значения МАРКЕРА_СЕРВ, то на этапе 412 устройство выполняет проверку обновления программного обеспечения, и значение МАРКЕРА_КЛ устанавливают в значение МАРКЕРА_СЕРВ. Если значение МАРКЕРА_КЛ больше или равно значению МАРКЕРА_СЕРВ, то устройство имеет последнюю версию программного обеспечения, и никакое обновление не требуется, как обозначено на этапе 410. Дополнительно МАРКЕР_СЕРВ может циклически возвращаться после 256 приращений. Таким образом, значение МАРКЕРА_КЛ может быть равным МАРКЕРУ_СЕРВ после циклического возврата, например, когда устройство было не подключено к сети в течение долгого времени. Для обработки этого сценария сохраненный МАРКЕР_КЛ можно стирать, если служебные сообщения не были получены за некоторый предопределенный период времени (например, 30 дней, 45 дней, 90 дней и т.д.). Эту продолжительность можно устанавливать так, чтобы она была существенно более короткой, чем предполагаемый период, требуемый для циклического возврата МАРКЕРА_СЕРВ.

Фиг.5 показывает способ 500, который облегчает выполнение маркерного протокола доступа в комбинации с каждым из способа проверки «выталкивания» и протокола проверки «вытягивания» в соответствии с различными аспектами. Подобно способу 400, способ 500 также использует основанный на маркере протокол, в котором значение маркера клиента сравнивают со значением маркера сервера, которое периодически передают в канале групповой передачи. Например, вместо передачи всех последних порядковых номеров для всех классов программного обеспечения, как описано выше, сервер может посылать информацию инкрементальных изменений между двумя МАРКЕРАМИ_СЕРВ в канале передачи данных. Например, в случае, когда существуют два новых обновления для класса программного обеспечения A и B с МАРКЕРОМ_СЕРВ=3, сервер может увеличивать свой МАРКЕР_СЕРВ (например, до 4) и передавать МАРКЕР_СЕРВ в служебном канале (например, способом, подобным описанно