Способы и устройство для синхронизации набора данных в среде беспроводной связи

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

 

Настоящая заявка на патент притязает на приоритет в соответствии с предварительной заявкой № 60/945.088, имеющей название «METHODS AND APPARATUS FOR DATASET SYNCHRONIZATION IN A WIRELESS ENVIRONMENT», поданной 19 июня 2007 года и переданной правопреемнику настоящей заявки, а также полностью включена в настоящий документ посредством ссылки.

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

Раскрытые аспекты относятся к устройствам беспроводной связи и, более конкретно, к системам, способам и устройству для беспроводной синхронизации наборов данных, сохраненных на устройстве беспроводной связи, с соответствующими наборами данных, сохраненными на сетевом узле.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Фиг.6 изображает блок-схему сети беспроводной связи в соответствии с аспектом.

Фиг.7 изображает пример синхронизации набора данных в соответствии с аспектом.

Фиг.8 изображает другой пример синхронизации набора данных в соответствии с другим аспектом.

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

Фиг.10 изображает схему последовательности операций способа синхронизации набора данных на сетевом устройстве в соответствии с аспектом.

Подробное описание

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

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

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

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

На фиг.1 изображена блок-схема системы для беспроводной синхронизации набора данных в соответствии с настоящим аспектом. Система 10 включает в себя одно или несколько устройств 12 беспроводной связи и сетевое устройство 14, такое как сетевой сервер, имеющий соответствующую базу данных, которое имеет беспроводное подключение по сети 16 беспроводной связи. Одно или несколько устройств 12 беспроводной связи и сетевое устройство 14 сохраняет набор 18 и 48 данных, которому необходима синхронизация. В некоторых аспектах, например в беспроводной среде сообщества, сетевое устройство 14 может первоначально распределить набор 48 данных сетевого устройства одному или нескольким устройствам 12 беспроводной связи, которые сохраняют принимаемый набор данных в качестве набора 18 данных устройства беспроводной связи. С течением времени, либо сетевой сервер 14, либо одно или несколько устройств 12 беспроводной связи, либо все эти устройства могут обновить свой соответствующий набор 48 и 18 данных. В силу этого система 10 обеспечивает устройство и способы, которые предоставляют одному или нескольким устройствам 12 беспроводной связи и сетевому устройству 14 возможность синхронизации своих соответствующих наборов 18 и 48 данных по беспроводному подключению.

Устройство 12 беспроводной связи включает в себя компьютерную платформу 20, содержащую процессор 22 и память 24. Память 24 устройства 12 беспроводной связи включает в себя модуль 26 синхронизации, функционирующий для синхронизации наборов 18 и 48 данных. Модуль 26 синхронизации может основываться на упрощенном протоколе для обмена данными, в качестве протокола несущей, для ограничения процесса синхронизации одной двусторонней передачей по беспроводному соединению между устройством 12 беспроводной связи и сетевым устройством 14. Упрощенный протокол для обмена данными может характерно основываться на двух структурах, на наборе пар имя/значение, а также на упорядоченном списке значений. Пары имя/значение могут включать в себя объект, запись, структуру, словарь, хэш-таблицу, ключевой список, ассоциативную матрицу или подобное. Упорядоченный список значений может включать в себя матрицу, вектор, список, последовательность или список. Одним примером упрощенного протокола для обмена данными является протокол представления объектов JavaScript (JSON). В протоколе JSON объект является неупорядоченным набором пар имя/значение, матрица является упорядоченным набором значений, а значение может являться последовательностью (строкой), номером, индикатором истина/ложь/нулевой, объектом или матрицей. В отличие от других протоколов для обмена данными протокол JSON поддерживает матрицы, а также требует более простого синтаксиса и меньшей разметки. Равномерная и простая структура синтаксиса протокола JSON, объединенная со встроенной поддержкой чисел и матрицы, предлагает большую эффективность по сравнению с другими протоколами для обмена данными в контексте более простого парсинга, тщательного представления структур данных, а также меньших размеров сообщения.

Модуль 26 синхронизации функционирует для формирования сообщения 30 с запросом синхронизации, которое передается на сетевое устройство 14, а также которое предназначено для запроса синхронизации набора данных с сетевым устройством 14. Сообщение 30 с запросом синхронизации формирует первую часть процесса синхронизации с одной двусторонней передачей. В некоторых аспектах модуль 26 синхронизации также может скомпилировать список 28 изменений устройства беспроводной связи, который указывает на изменения, сделанные в наборе 18 данных, начиная с предшествующего процесса синхронизации. Изменения могут включать в себя добавления, вставки и/или удаления в наборе 18 данных. Модуль 26 синхронизации также функционирует для передачи списка 28 изменений устройства беспроводной связи на сетевое устройство 14, например, в сообщении 30 с запросом синхронизации. Модуль 26 синхронизации также функционирует для приема сообщения 32 с подтверждением синхронизации, которое формирует вторую часть процесса синхронизации с одной двунаправленной передачей. Сообщение 32 с подтверждением синхронизации предназначено для проверки завершения процесса синхронизации. Кроме того, сообщение 32 с подтверждением синхронизации может включать в себя список 34 изменений сетевого устройства, который указывает на изменения, сделанные в соответствующем наборе 48 данных сетевого устройства, начиная с предшествующего процесса синхронизации. Следовательно, система 10 эффективно выполняет синхронизацию между набором 18 данных устройства беспроводной связи и набором 48 данных сетевого устройства за одну двустороннюю передачу посредством сообщения 30 с запросом синхронизации и сообщения 32 с подтверждением синхронизации.

Набор 18 данных устройства беспроводной связи характерно имеет номер 19 версии, который указывает на версию набора данных, соответствующую версии сетевой базы данных с последней синхронизации с сетевой базой данных. Кроме того, каждый набор 18 данных устройства беспроводной связи включает в себя один или несколько элементов 36 данных. Элементы 36 данных могут включать в себя одну или несколько полей 38 данных. Следует отметить, что несмотря на то, что иллюстрированные элементы 36 данных включают в себя различное количество полей данных, любой элемент 36 данных может включать в себя любое количество полей 38 данных. В соответствии с некоторыми аспектами изменения, сделанные в наборе данных, отражаются в контексте элементов 36 данных, в отличие от полей 38 данных, например, если какое-либо поле соответствующего элемента данных изменено, то предположительно соответствующий элемент данных изменяется. Следовательно, для выполнения процесса синхронизации, имеющего идемпотентную природу, означающую то, что изменения в наборе данных устройства беспроводной связи приводят к аналогичному изменению в наборе данных сетевого устройства и/или в другом наборе данных устройства беспроводной связи, список 28 изменений устройства беспроводной связи включает в себя изменения, касающиеся элементов данных. Следовательно, список 28 изменений устройства беспроводной связи включает в себя целостность любого элемента данных, то есть добавляемого или удаляемого, или же в который были добавлены, удалены или изменены соответствующие поля данных.

Сетевое устройство 14 включает в себя компьютерную платформу 40, содержащую процессор 42 и память 44. Память 44 сетевого устройства 14 включает в себя модуль 46 синхронизации, функционирующий для синхронизации набора 48 данных сетевого устройства с одним или несколькими наборами 18 данных устройства беспроводной связи. Подобно модулю 26 синхронизации устройства 12 беспроводной связи, модуль 46 синхронизации может использовать аналогичный упрощенный протокол для обмена данными в качестве протокола несущей для сокращения пропускной способности, а также для предоставления процессу синхронизации возможности выполнения за одну двустороннюю передачу по беспроводному соединению между устройством 12 беспроводной связи и сетевым устройством 14.

Модуль 46 синхронизации функционирует для приема сообщения 30 с запросом синхронизации, а также для реализации любого списка 28 изменений устройства беспроводной связи в сообщении 30 с запросом. Модуль 46 синхронизации также функционирует для компиляции списка 34 изменений сетевого устройства, который указывает на изменения, сделанные в наборе 48 данных сетевого устройства, начиная с предшествующего процесса синхронизации, выполненного посредством соответствующего устройства 12 беспроводной связи. Другими словами, список 34 изменений сетевого устройства включает в себя небольшие (дельта) или полные изменения в наборе 48 данных сетевого устройства на основе различия между принятой версией 19 набора данных устройства беспроводной связи и версией 50 набора данных сетевого устройства. Модуль 46 синхронизации также функционирует для передачи списка 34 изменений сетевого устройства в сообщении 32 с подтверждением синхронизации на требуемое устройство 12 беспроводной связи.

В соответствии с настоящими аспектами набор 48 данных сетевого устройства будет отличаться от соответствующего набора 18 данных устройства беспроводной связи в контексте указания изменений. Набор 48 данных сетевого устройства характерно имеет номер 50 версии, который указывает на версию набора данных сетевого устройства. Каждый набор 48 данных включает в себя один или несколько элементов 52 данных. Подобно элементам 36 данных, которые формируют наборы 18 данных устройства беспроводной связи, каждый элемент 52 данных может включать в себя одно или несколько полей 54 данных. В соответствии с настоящими аспектами изменения, сделанные в наборе 48 данных сетевого устройства, отражаются в контексте элементов 32 данных, которые указывают на изменение в одном или нескольких полях 54 данных.

Каждый элемент 50 данных набора 48 данных сетевого устройства имеет соответствующий номер 56 версии, который указывает на текущую версию элемента данных. В одном аспекте номера 56 версии элемента данных являются уникальными среди всех элементов данных, а также обновляются на основании изменений, сделанных в соответствующем элементе данных. Например, в некоторых аспектах номер 50 версии набора данных 50 сетевого устройства отражает наибольший номер 56 версии элемента данных. По существу, в одном аспекте, когда сетевое устройство 14 принимает сообщение 30 с запросом синхронизации, которое указывает на текущий номер 19 версии набора данных устройства беспроводной связи, а также после выполнения любого списка 28 изменений устройства беспроводной связи, модуль 46 синхронизации сравнивает номер 50 версии набора данных сетевого устройства с номером 19 версии устройства беспроводной связи, а также компилирует список 34 изменений сетевого устройства, который включает в себя элементы 52 данных, имеющие номера 56 версии, которые больше номера 19 версии устройства беспроводной связи (то есть дельта между текущим номером 19 версии набора данных устройства беспроводной связи и текущим номером 50 версии набора данных сетевого устройства). В одном аспекте для предоставления соответствующему устройству 12 беспроводной связи исключительно полных изменений, после выполнения списка 28 изменений устройства беспроводной связи, благодаря которому дополнительно сокращаются размеры сообщения, любой элемент 52 данных, имеющий версию 56 в пределах дельты на основе списка 28 изменений устройства беспроводной связи, не будет включаться в список 34 изменений сетевого устройства. В таком случае соответствующее устройство 12 беспроводной связи уже имеет в своем наборе 18 данных устройства беспроводной связи последнее значение соответствующего элемента данных. Кроме того, разъяснение номеров 56 версии элемента данных, а также способа их использования для компиляции списка 34 изменений сетевого устройства будет изложено ниже.

Фиг.2 изображает представление блок-схемы набора 18 данных устройства беспроводной связи в соответствии с настоящим аспектом. Набор 18 данных включает в себя идентификатор 70 набора данных, который указывает на идентификатор/имя набора данных, а также на номер 19 версии набора данных, который указывает на текущий номер версии набора данных. Номер 19 версии набора данных может быть обновлен после успешного завершения процесса синхронизации. Набор 18 данных также включает в себя один или несколько элементов 36 данных, каждый из которых содержит одно или несколько полей 38 данных. Как было отмечено ранее изменения, сделанные в наборе данных, могут быть отражены в контексте элементов 36 данных, в отличие от полей 38 данных. Следовательно, для гарантии идемпотентной природы процесса синхронизации, означающей то, что изменения в наборе данных устройства беспроводной связи приводят к аналогичному изменению в наборе данных сетевого устройства и/или в других наборах данных устройства беспроводной связи, список изменений устройства беспроводной связи включает в себя изменения в форме элементов данных. Набор 18 данных также включает в себя индикатор 72 изменения для каждого элемента данных, который указывает на то, встречалось ли изменение в элементе данных, начиная с предшествующего процесса синхронизации. В одном аспекте поле 72 индикатора изменения может включать в себя специальный бит для указания на изменение в элементе данных. Этот специальный бит обеспечивает элемент данных, который будет помечаться или выделяться на основе переделки или изменения.

Например, в одном аспекте индикатор 72 изменения может иметь числовое значение «0» в случае, если связанный элемент данных не подвергался никаким изменениям, начиная с предшествующего процесса синхронизации. Кроме того, индикатор 72 изменения может иметь числовое значение «1» в случае, если связанный элемент данных был обновлен (например, выполнена вставка, удаление или изменение в элементе данных) или в случае, если соответствующий элемент данных является недавно добавленным элементом данных. По существу, индикатор 72 изменения может иметь числовое значение «2» в случае, если соответствующий элемент данных был удален. Индикатор изменения используется при компиляции списка 28 изменений устройства беспроводной связи (как изображено на фиг.1). Если индикатор 72 изменения указывает на изменение, например, если индикатор устанавливается в «1» или «2», то соответствующий элемент данных включается в список 28 изменений устройства беспроводной связи. После успешного завершения процесса синхронизации все индикаторы изменения сбрасываются для указания того, что никаких изменений сделано не было, например, сбрасываются в «0».

В соответствии с одним аспектом это может быть необходимо для отличия, посредством индикатора 72 изменения, элементов данных, которые были обновлены или добавлены (например, элементов данных, имеющих индикатор изменения, установленный в «1»), от элементов данных, которые были удалены (например, элементов данных, имеющих индикатор изменения, установленный в «2»). Причина заключается в том, что набор данных сетевого устройства рассматривает удаление элементов данных иначе, по сравнению с изменениями или добавлениями элементов данных, и, следовательно, в случае, если элемент данных был удален, сеть должна быть уведомлена через список 28 изменений.

Фиг.3 изображает представление блок-схемы набора 48 данных сетевого устройства в соответствии с настоящим аспектом. Набор 48 данных сетевого устройства включает в себя идентификатор 80 набора данных сетевого устройства, который указывает на идентификатор/имя набора данных, а также на номер 50 версии набора данных, который указывает на текущий номер версии набора данных. Набор 48 данных сетевого устройства также включает в себя несколько элементов 52 данных, каждый из которых имеет один или несколько полей 54 данных. Каждый элемент данных имеет соответствующий номер 56 версии элемента данных.

Номер 50 версии набора данных, который отражает наибольший номер 56 версии, назначенный элементу 52 данных, может быть обновлен после реализации списка 28 изменений устройства беспроводной связи (изображенного на фиг.1), который проверяет номер 56 версии элементов данных, которые были изменены. Например, если список 28 изменений устройства беспроводной связи включает в себя изменения в трех элементах данных, а текущий номер 50 версии набора данных сетевого устройства равен «16», то реализация изменений приведет к назначению этим трем элементам 52 данных номеров «17», «18» и «19» версии элемента 56 данных, соответственно, а также номер версии набора данных сетевого устройства будет обновлен до «19» (то есть до наибольшего номера 56 версии, назначенного элементу 52 данных набора 48 данных сетевого устройства).

Набор 48 данных сетевого устройства также может включать в себя индикатор 82 удаления, который в одном примере называется «надгробной плитой». Индикатор 82 удаления устанавливается для указания того, что связанный элемент 52 данных был удален из набора данных. Однако удаленный элемент 52 данных, как правило, сохраняется в наборе 48 данных, по меньшей мере, в течение предварительно определенного временного интервала, с целью обеспечения средства для восстановления предшествующей версии набора данных на сетевом устройстве в случае команды приложения. Кроме того, посредством обеспечения индикатора 82 удаления, который указывает на то, что элемент 52 данных был удален, последующие попытки обновления или иного изменения удаленного элемента 52 данных игнорируются.

На фиг.4, в соответствии с одним аспектом, изображено подробное представление блок-схемы устройства 12 беспроводной связи. Устройство 12 беспроводной связи может включать в себя любой тип компьютеризированного устройства связи, такого как сотовый телефон, личное цифровое устройство (PDA), приемопередающий текстовый пейджер, портативный компьютер, а также отдельную компьютерную платформу, которая имеет портал беспроводной связи, а также которая может быть соединена с сетью или сетью Интернет посредством проводного соединения. Устройство беспроводной связи может являться ведомым и иметь дистанционное управление или же другим устройством, которое не имеет конечного пользователя и попросту передает данные по сети беспроводной связи, таким как датчики дистанционного считывания, диагностические средства, ретрансляторы и т.п. Настоящее устройство и способы синхронизации набора данных могут быть соответственно выполнены на устройстве беспроводной связи любого типа или на беспроводном компьютерном модуле, включающем в себя портал беспроводной связи, включающий в себя, в числе прочего, беспроводные модемы, карты PCMCIA, терминалы доступа, настольные компьютеры или любую их комбинацию или подкомбинацию.

Устройство 12 беспроводной связи включает в себя компьютерную платформу 20, которая может передавать данные по сети беспроводной связи, а также может принимать и выполнять подпрограммы и приложения. Компьютерная платформа 20 включает в себя память 24, которая может включать в себя энергозависимую и энергонезависимую память, такую как оперативная память и/или постоянная память (RAM и ROM), стираемая программируемая постоянная память (EPROM), электрически стираемая программируемая постоянная память (EEPROM), карты флэш-памяти, или любую память, обычно используемую в компьютерных платформах. Кроме того, память 24 может включать в себя одну или несколько ячеек флэш-памяти или же может являться любым вторичным или третичным устройством хранения, таким как магнитная среда (носитель), оптическая среда (носитель), лента, или же мягкий или жесткий диск.

Кроме того, компьютерная платформа 20 также включает в себя процессор 22, который может являться специализированной интегральной микросхемой («ASIC») или другим набором микросхем, процессором, логической схемой или другим устройством обработки данных. Процессор 22 или другой процессор, такой как микросхема ASIC, может выполнять уровень 100 прикладного программного интерфейса («API»), который взаимодействует с любыми резидентными программами, такими как модуль 26 синхронизации, сохраненный в памяти 24 устройства 12 беспроводной связи. Интерфейс 100 API является обычной средой выполнения, выполняемой на соответствующем устройстве беспроводной связи. Одной такой средой выполнения являются программные средства среды разработки приложений для устройств беспроводной связи (BREW®), разработанные компанией QUALCOMM Incorporated, Сан-Диего, Калифорния. Другие среды выполнения могут быть использованы, например, для управления выполнением приложений на вычислительных устройствах беспроводной связи.

Процессор 22 включает в себя различные подсистемы 102 обработки, реализованные в аппаратных средствах, микропрограммных средствах, программных средствах или же посредством их комбинаций, которые предоставляют функциональные возможности устройства 12 связи, а также удобство в использовании устройства связи в сети беспроводной связи. Например, подсистемы 100 обработки предоставляют возможность установления и поддержки связи, а также возможность обмена данными с другими сетевыми устройствами. В аспектах, в которых устройство связи определено в качестве сотового телефона, процессор 22 связи может дополнительно включать в себя одну или комбинацию подсистем 100 обработки, таких как: звук, энергонезависимая память, файловая система, передача, прием, поисковик, уровень 1, уровень 2, уровень 3, главное управление, удаленная процедура, телефонная трубка, управление мощностью, цифровой сигнальный процессор, передача сообщений, менеджер вызовов, система Bluetooth®, подсистема позиционирования Bluetooth® LPOS, пользовательский интерфейс, бездействие, службы передачи данных, безопасность, аутентификация, USIM/SIM, службы передачи речи, графика, USB, мультимедиа, как например MPEG, GPRS и т.д. (каждый из которых индивидуально не изображен на фиг.2 для ясности). В раскрытых аспектах подсистемы 100 обработки процессора 22 могут включать в себя любые компоненты подсистемы, которые взаимодействуют с модулем 26 синхронизации.

Компьютерная платформа 20 дополнительно включает в себя модуль 108 связи, реализованный в аппаратных средствах, микропрограммных средствах, программных средствах или же посредством их комбинаций, который предоставляет возможность связи среди различных компонентов устройства 12 беспроводной связи, а также между устройством 12 связи и сетью 16 беспроводной связи. В описанных аспектах модуль 108 связи предоставляет возможность передачи всей корреспонденции синхронизации между устройством 12 беспроводной связи и сетевым устройством 14. Модуль 108 связи может включать в себя необходимые аппаратные средства, микропрограммные средства, программные средства и/или их комбинацию, для установления соединения по сети беспроводной связи.

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

Память 24 компьютерной платформы 20 включает в себя модуль 26 синхронизации, функционирующий для синхронизации наборов 18 данных. Модуль 26 синхронизации может быть инициирован посредством предварительно определенного пользовательского действия, предварительно определенного действия устройства и/или в предварительно определенные моменты времени. Пользовательское действие может включать в себя подключение предварительно определенного пользовательского интерфейса, такого как специализированная клавишная панель или кнопка на устройстве беспроводной связи. Предварительно определенное действие устройства может включать в себя активацию сетевого радиосигнала таким образом, чтобы синхронизация выполнялась по каждому входу устройства в режим онлайн для передачи изменении, сделанных в наборе данных в автономном режиме.

Модуль 26 синхронизации может основываться на упрощенном протоколе для обмена данными в качестве протокола несущей для ограничения процесса синхронизации одной двусторонней передачей по беспроводному соединению между устройством 12 беспроводной связи и сетевым устройством 14. Упрощенный протокол для обмена данными может характерно основываться на двух структурах, на наборе пар имени/значение, а также на упорядоченном списке значений. Пары имя/значение могут включать в себя объект, запись, структуру, словарь, хэш-таблицу, ключевой список, ассоциативную матрицу или подобное. Упорядоченный список значений может включать в себя матрицу, вектор, список, последовательность или список. Одним примером упрощенного протокола для обмена данными является протокол представления объектов JavaScript (JSON). В протоколе JSON объект является неупорядоченным набором пар имя/значение, матрица является упорядоченным набором значений, а значение может являться последовательностью (строкой), номером, индикатором истина/ложь/нулевой, объектом или матрицей.

Модуль 26 синхронизации включает в себя блок 104 формирования сообщения с запросом синхронизации, который функционирует для формирования и передачи сообщения 30 с запросом синхронизации. Сообщение с запросом синхронизации включает в себя текущий номер 19 версии набора данных и, в случае, если были сделаны какие-либо изменения в наборе 18 данных, начиная с предшествующего сеанса синхронизации, список 28 изменений устройства беспроводной связи. По существу, блок 104 формирования сообщения с запросом синхронизации включает в себя блок 106 компиляции списка изменений, который функционирует для компиляции списка 28 изменений элементов 36 данных набора 18 данных, которые были изменены, начиная с предшествующего сеанса синхронизации. В этой связи блок 106 компиляции проверяет индикатор 72 изменения, такой как специальный бит или подобное, чтобы выполнить проверку на предмет изменения. Если индикатор 72 изменения указывает на изменение, то элемент данных добавляется в список 20 изменений. Как было отмечено ранее, в некоторых аспектах процесс синхронизации обращается к элементам 36 данных, в отличие от подгруппы элемента данных, называемой полями 38 данных (как изображено на фиг.1). Следовательно, весь измененный элемент 36 данных включается в список 28 изменений. Однако следует отметить, что в некоторых аспектах в список 28 изменений может быть включено исключительно соответствующее поле 38 данных, а также ссылка на соответствующий элемент 36 данных.

Как было отмечено раннее, индикатор 72 изменения может указать на добавленный элемент данных, вставку в элемент данных, удаление из элемента данных, изменение в элементе данных или на удаленный элемент данных. Для гарантии надлежащего объединения изменения на сетевом устройстве 14 индикатор 72 изменения может отличать добавленный или измененный элемент данных от удаленного элемента данных. Например, добавленным или измененным элементам данных можно задать небольшое числовое значение, равное «1», а удаленному элементу данных можно задать числовое значение, равное «2».

После формирования блоком 104 формирования сообщения с запросом синхронизации сообщения 30 с запросом синхронизации устройство 12 беспроводной связи реализует модуль 108 связи для упрощения беспроводной передачи сообщения 30 с запросом синхронизации. Передача сообщения с запросом синхронизации формирует первую часть одной двусторонней передачи, требуемой для завершения процесса синхронизации, в соответствии с настоящими аспектами.

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

В некоторых приложениях сообщение 32 с подтверждением синхронизации может включать в себя список изменений сетевого устройства 34, соответствующий элементам 52 данных (изображенных на фиг.1) в соответствующем наборе 48 данных сетевого устройства (изображенном на фиг.1), которые были изменены, а также которым требуется объединение в набор 18 данных устройства беспроводной связи. По существу, блок 110 реализации сообщения с подтверждением синхронизации включает в себя блок 112 обновления набора данных, функционирующий для выполнения изменений в элементах 36 данных набора 19 данных, в соответствии с принятым списком 34 изменений сетевого устройства. Кроме того, блок 112 обновления набора данных включает в себя блок 114 обновления версии, функционирующий для обновления номера 19 версии набора 18 данных устройства беспроводной связи для отражения текущего номера 50 версии сетевого устройства, как указано в сообщении 32 с подтверждением синхронизации. Блок 112 обновления набора данных включает в себя блок 116 повторной установки индикатора изменения, функционирующий для повторной установки всех индикаторов 72 изменения для указания на статус «отсутствие изменений» после уведомления об успешном завершении процесса синхронизации.

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

Сетевое устройство 14 включает в себя компьютерную платформу 40, которая может передавать и принимать данные по сети 16 беспроводной связи (изображенной на фиг.1), а также может выполнять подпрограммы и приложения. Компьютерная платформа 40 включает в себя память 42, которая может включать в себя энергозависимую и энергонезависимую память, такую как оперативная память и/или постоянная память (RAM и ROM), стираемая программируемая постоянная память (EPROM), электрически стираемая программируемая постоянная память (EEPROM), карты флэш-памяти, или любую память, обычно используемую в компьютерных платформах. Кроме того, память 42 может включать в себя одну или несколько ячеек флэш-памяти или же может являться любым вторичным или третичным устройством хранения, таким как магнитная среда (носитель), оптическая среда (носитель), лента, или же мягкий или жесткий диск.

Кроме того, компьютерная платформа 40 также включает в себя процессор 44, который может являться специализированной интегральной микросхемой («ASIC») или другим набором микросхем, логической схемой или другим устройством обработки данных. Процессор 44 включает в себя различные подсистемы 130 обработки, реализованные в аппаратных средствах, микропрограммных средствах, программных средствах или же посредством их комбинаций, которые предоставляют функциональные возможности сетевого устройства 14, а также удобство в использования сетевого устройства в сети беспроводной связи. Например, подсистемы 130 обработки предоставляют возможность установления и поддержки связи, а также возможность обмена данными с другими сетевыми устройствами. В раскрытых аспектах подсистемы 130 обработки процессора 44 могут включать в себя любые компоненты подсистемы, которые взаимодействуют с модулем 46 синхронизации.

Компьютерная платформа 40 также включает в себя модуль 132 связи, реализованный в аппаратных средствах, микропрограммных средствах, программных средствах или же посредством их комбинаций, который предоставляет возможность связи среди различных компонентов сетевого устройства 14, а также между сетевым устройством 14 и устройствами 12 беспроводной связи. Модуль 132 связи может включать в себя необходимые аппаратные средства, микропрограммные средства, программные средства и/или их комбинации для установления беспроводного соединения. Модуль 132 связи функционирует для приема сообщения 30 с запросом синхронизации, передаваемого по сети 16 беспроводной связи, а также для передачи сообщения 32 с подтверждением синхронизации по сети 16 беспроводной связи.

Память 42 сетевого устройства 14 включает в себя модуль 46 синхронизации, функционирующий для приема и обработки сообщений 30 с запросом синхронизации, а также для формирования и передачи сообщений 32 с подтверждением синхронизации, в ответ на сообщения 30 с запросом. Кроме того, модуль 46 синхронизации включает в себя блок 134 реализации сообщения с запросом синхронизации, функционирующий для приема сообщения 30 с запросом, а также для соответственной обработки сообщения. Если набор 18 данных устройства беспроводной связи (изображенный на фиг.1 и 4) подвергается изменениям элементов 36 данных (изображенных на фиг.1 и 4), начиная с предшествующего сеанса синхронизации, то сообщение 30 с запросом синхронизации будет включать в себя список 28 изменений устройства беспроводной связи, который включает в себя элементы данных, которые были изменены.

Блок 134 реализации сообщения с запросом синхронизации также включает в себя блок 136 обновления набора данных, который функционирует для обновления соответствующего набора 48 данных на сетевом устройстве, в соответствии со списком 28 изменений устройства беспроводной связи. По существу, блок 136 обновления набора данных изменяет элементы 52 данных, например, добавляет в элемент данных, удаляет из элемента данных, изменяет элемент данных, добавляет элемент данных или удаляет элемент данных, в соответствии с измененными элементами данных в списке 28 изменений устройства беспроводной связи. Блок 136 обновления набора данных включает в себя блок 138 обновления версии элемента данных, функционирующий для обновления номера 56 версии элемента 52 данных на основе изменения в элементе данных. Каждому элементу 52 данных назначается номер 56 версии, и любое изменение в элементе 52 данных диктует новый номер 56 версии. Номера 56 версии назначаются последовательно, начиная с номера, следующего после текущего номера 50 версии набора данных сетевого устройства. Например, если текущий номер 50 версии набора данных равен «20», а список 28 изменений устройства беспроводной связи включает в себя изменения в четырех элементах данных, то элементам 52 данных назначаются обновленные номера 56 версии, равные «21», «22», «23» и «24». Блок 138 обновления набора данных также включает в себя блок 140 обновления версии набора данных, функционирующий для обновления номера 50 версии набора 48 данных сетевого устройства на основе изменения в любом элементе 52 данных набора 48 данных. В одном примере номер 48 версии набора данных эквивалентен наибольшему номеру 56 версии элемента данных. Следовательно, в ранее представленном примере, в котором были изменены четыре элемента 52 данных, а также были обновлены номера 56 версии, которым были назначены числовые значения «21», «22», «23» и «24», номер 50 версии набора данных сетевого устройства обновляется с «20» до «24».

Кроме того, блок 136 обновления набора данных включает в себя блок 142 установки индикатора удаления, функционирующий для установки индикатора 82 удаления, иначе называемого «надгробной плитой», для любого элемента 52 данных, который был удален из набора 48 данных. В этой связи удаленному элементу 52 данных назначается обновленный номер 56 версии, а также устанавливается индикатор 82 удаления. Индикатор 82 удаления помечает удаленные элементы 52 в качестве удаленных, но еще сохраненных в наборе 48 данных. Посредством сохранения удаленных элементов 52 данных в наборе 48 данных, сетевое устройство может восстановить предшествующую версию набора данных в случае, если сеанс синхронизации подтверждает и предотвращает последующие попытки обновления соответствующего удаленного элемента 52 данных.

Модуль 46 синхронизации также включает в себя блок 144 формирования сообщения с подтверждением синхронизации, функционирующий для формирования сообщения 32 с подтверждением синхронизации, которое включает в себя индикатор статуса синхронизации (например, успешная синхронизация, сбой синхронизации и т.д.), а также обновленный и/или текущий номер 50 версии набора 48 данных сетевого устройства. Сообщение 32 с подтверждением синхронизации также может включать в себя список 34 изменений сетевого устройства в случае, если набор 48 данных сетевого устройства подвергался изменениям элемента 52 данных, начиная с предшествующего сеанса синхронизации с запрашивающим устройством 12 беспроводной связи. Кроме того, блок 144 формирования сообщения с подтверждением синхронизации включает в себя блок 146 компиляции списка изменений, который функционирует для компиляции списка 34 изменений сетевого устройства. Список 34 изменений сетевого устройства включает в себя элементы 52 данных с номерами 56 версии, которые больше номера 19 версии устройства 12 беспроводной связи, указанного в сообщении 30 с запросом синхронизации, а также меньше или равны номеру 50 версии 50 набора 48 данных сетевого устройства до обновления набора 48 данных сетевого устройства (то есть номеру 50 версии набора 48 данных сетевого устройства после приема сообщения 30 с запросом синхронизации).

После формирования сообщения 32 с подтверждением синхронизации сообщение передается на запрашивающее устройство 12 беспроводной связи через модуль 132 связи. Подобно сообщению 30 с запросом синхронизации сообщение 32 с подтверждением синхронизации может быть передано через упрощенный протокол несущей для обмена данными, такой как протокол представления объектов JavaScript (JSON).

Фиг.6 изображает блок-схему сотовой сети связи. Сеть 16 беспроводной связи может включать в себя сотовую сеть связи и помимо всего прочего может быть реализована для передачи сообщений 30 с запросом синхронизации на сетевое устройство 14, а также для приема сообщений 32 с подтверждением синхронизации от сетевого устройства 14. На фиг.6 в одном аспекте устройство 12 беспроводной связи включает в себя устройство беспроводной связи, такое как сотовый телефон. В настоящих аспектах устройства беспроводной связи сконфигурированы для взаимодействия по сотовой сети 150 связи. Сотовая сеть 150 связи предоставляет устройству 12 беспроводной связи возможность передачи сообщения 30 с запросом синхронизации на сетевое устройство 14, а также возможность приема сообщения 32 с подтверждением синхронизации от сетевого устройства 14, соответственно. Телефонная сотовая сеть 150 может включать в себя сеть 16 беспроводной связи, соединенный с проводной сетью 152 через основную сеть 154 связи. Фиг.6 изображает иллюстративную схему, которая более подробно иллюстрирует компоненты сети беспроводной связи, а также взаимосвязь элементов одного аспекта настоящей системы. Телефонная сотовая сеть 150 попросту является иллюстративной и может включать в себя любую систему, посредством которой удаленные модули, такие как устройства 12 беспроводной связи, взаимодействуют по воздуху друг с другом и/или среди компонентов сети 16 беспроводной связи, включающими в себя, в числе прочего, несущие сети беспроводной связи и/или сервера.

В сети 150 сетевое устройство 14, такое как сетевой сервер, может быть соединено по проводной сети 152 (например, по локальной сети (LAN)) с отдельной сетевой базой 156 данных для сохранения наборов 48 данных. Кроме того, сервер 158 управления данными может быть соединен с сетевым устройством 14 для предоставления возможности последующей обработки, управления потоком данных и т.д. Сетевое устройство 14, сетевая база 156 данных и сервер 158 управления данными могут находиться в сотовой телефонной сети 150 наряду с любыми другими сетевыми компонентами, которые необходимы для предоставления сотовых телекоммуникационных услуг. Сетевое устройство 14 и/или сервер 158 управления данными взаимодействуют с основной сетью 154 связи по каналам 160 и 162 связи, которые могут являться каналами связи, такими как сеть Интернет, защищенная локальная сеть (LAN), глобальная сеть WAN или другая сеть. Управляющие сообщения основной сети 154 связи (в целом, являющиеся пакетами данных) посылаются на мобильный коммутационный центр 164 («MSC»). Кроме того, основная сеть 154 связи взаимодействует с центром 164 MSC посредством сети 162, такой как сеть Интернет, и/или службы POTS («традиционной службы телефонной связи»). Как правило, в сети 162, сеть или часть сети Интернет передает данные, а часть службы POTS передает речевую информацию. Центр 164 MSC может быть соединен с несколькими базовыми станциями 166 («BTS») посредством другой сети 168, такой как сеть передачи данных и/или часть сети Интернет, для передачи данных, а также с частью службы POTS для передачи речевой информации. В конечном счете, станция 166 BTS транслирует сообщения по беспроводному соединению на устройства 12 беспроводной связи посредством любых приемлемых способов.

Фиг.7 и 8 изображают примеры синхронизации набора данных в соответствии с настоящими аспектами. На фиг.7, перед сеансом синхронизации, набор 200 данных устройства беспроводной связи имеет версию «3», а соответствующий набор данных 300 сетевого сервера имеет версию «4». Набор 200 данных устройства беспроводной связи версии «3» включает в себя три элемента 210 данных, имеющих названия «profile.im», «profile.tagline» и «profile.avatar». Каждый элемент 210 данных имеет соответствующее значение 220, значение элемента «profile.im» является «PLAYER45», значение элемента «profile.tagline» является «GO TIME!», а значение элемента «profile.avatar» является «Abc.png». Каждый элемент 210 данных имеет соответствующее поле 230 индикатора изменения. Поле 230 индикатора изменения указывает на то, что элементы 210 данных, имеющие названия «profile.im» и «profile.avatar», не подвергались никаким изменениям, начиная с предшествующего сеанса синхронизации, а также на то, что элемент 210 данных, имеющий название «profile.tagline», подвергался изменению, начиная с предшествующего сеанса синхронизации.

Набор 300 данных сетевого сервера версии «4» включает в себя четыре элемента 310 данных, имеющих названия «profile.im», «profile.tagline», «profile.age» и «profile/avatar». Каждый элемент 310 данных имеет соответствующее значение 320, значение элемента «profile.im» является «PLAYER45», значение элемента «profile.tagline» является «THE BEST!», значение элемента «profile.age» является «22», а значение элемента «profile.avatar» является «Abc.png». Каждый элемент 310 данных имеет соответствующий номер 340 версии: версия элемента «profile.im» имеет числовое значение «1», версия элемента «profile.tagline» имеет числовое значение «3», версия элемента «profile.age» имеет числовое значение «4», а версия элемента «profile.avatar» имеет числовое значение «2». Кроме того, каждый элемент 310 данных может иметь соответствующий индикатор 350 удаления, иначе называемый «надгробной плитой», который указывает на то, что соответствующий элемент данных был удален из соответствующего набора данных. В наборе 300 данных ни один из элементов 310 данных не был удален и, следовательно, никакие индикаторы удаления для указания удаления не устанавливаются.

Синхронизация между набором 200 данных устройства беспроводной связи и набором 300 данных сетевого сервера выполняется на основе сообщения 30 с запросом синхронизации. В частности, устройство 12 беспроводной связи формирует и посылает сообщение 30 с запросом синхронизации на сетевое устройство 14. В случае необходимости устройство 12 беспроводной связи компилирует список 28 изменений, который в данном случае включает в себя элемент данных «profile.tagline» и соответствующее значение «LET`S PLAY!» на основе индикатора 230 изменения, имеющего числовое значение «1». Помимо всего прочего, в данном случае список 28 изменений устройства беспроводной связи и текущая версия 19 набора данных устройства беспроводной связи, то есть версия «3», включаются в сообщение 30 с запросом синхронизации, которое передается на сетевой сервер. В свою очередь, на этапе 355 сетевой сервер 14 принимает сообщение 30 с запросом синхронизации и в случае необходимости реализует изменения в списке 28 изменений, обновляет соответствующие измененные номера 340 версии элемента данных, а также обновляет номер 50 версии набора данных сетевого сервера.

Набор данных 360 сетевого сервера иллюстрирует набор данных после реализации изменений в списке изменений устройства беспроводной связи, проверки номеров версии элемента данных и проверки номера версии набора данных сетевого сервера. В частности, элемент 310 данных, имеющий название «profile.tagline», был изменен для отображения значения «GO TIME!» на основе списка 28 изменений устройства беспроводной связи. Кроме того, номер 340 версии элемента данных для элемента 310 данных, имеющего название «profile.tagline», был обновлен с версии «3» до версии «5», а номер 50 версии набора данных сетевого сервера был обновлен с версии «4» до версии «5», причем версия «5» соответствует наибольшей последовательной версии 340 элемента данных.

Кроме того, в ответ на прием сообщения 30 с запросом синхронизации, сетевой сервер 14 формирует и посылает сообщение 32 с подтверждением синхронизации на запрашивающее устройство 12 беспроводной связи. Сообщение 32 с подтверждением синхронизации включает в себя последнюю версию 50 набора данных устройства беспроводной связи и в случае необходимости может включать в себя список 34 изменений сетевого устройства для синхронизации запрашивающего устройства беспроводной связи с последней версией соответствующего набора данных. В этом случае, например после реализации изменений устройства беспроводной связи на сетевом сервере, сетевой сервер компилирует список 34 изменений сетевого сервера так, чтобы он был включен в сообщение 32 с подтверждением синхронизации, а также передает сообщение с подтверждением на устройство беспроводной связи. Список 34 изменений сетевого устройства включает в себя все элементы данных с номерами версии, большими, чем принятый номер версии набора данных устройства беспроводной связи, вплоть до текущего номера версии набора данных сетевого сервера, минус любые изменения, вызванные списком 28 изменений устройства беспроводной связи, например дельта между последней версией набора данных сетевого устройства и текущей версией набора данных устройства беспроводной связи. Следовательно, в изображенном на фиг.7 примере, список 34 изменений сетевого сервера включает в себя элемент 310 данных, имеющий название «profile.age» с числовым значением «22», поскольку соответствующий номер версии элемента данных равен «4» и является больше номера версии устройства беспроводной связи, равного «3», но не включает в себя значение «GO TIME!» элемента 310 данных, имеющего название «profile.tagline», поскольку эта версия элемента данных была основана на списке 28 изменений устройства беспроводной связи. Кроме того, в некоторых аспектах сообщение 32 с подтверждением синхронизации может включать в себя индикатор статуса синхронизации. Следовательно, в иллюстрированном примере, сообщение с подтверждением синхронизации включает в себя номер версии набора данных сетевого сервера, равный «5», список 34 изменений сетевого устройства, а также может включать в себя индикатор «синхронизация успешна».

Набор 240 данных устройства беспроводной связи иллюстрирует набор данных после приема сообщения 32 с подтверждением синхронизации, реализации списка 34 изменений сетевого устройства и проверки номера 19 версии устройства беспроводной связи. В частности, элемент 210 данных, имеющий название «profile.age», с числовым значением «22» добавляется в набор 240 данных, а номер 19 версии набора данных обновляется с «3» до «5».

На фиг.8, в продолжение предшествующего примера, на основе работы приложения, использующего набор 250 данных устройства беспроводной связи, значение 220, соответствующее элементу 210 данных, имеющему название «profile.tagline», сбрасывается или удаляется. По существу, перед сеансом синхронизации набор 250 данных устройства беспроводной связи имеет версию 19 с числовым значением «5», а соответствующий набор 360 данных сетевого сервера имеет версию 50 с числовым значением «5». Версия «5» набора 250 данных устройства беспроводной связи включает в себя четыре элемента 210 данных, имеющих названия «profile.im», «profile.tagline», «profile.age» и «profile.avatar». Каждый элемент 210 данных имеет соответствующее значение 220: значение элемента «profile.im» является «PLAYER45», значение элемента «profile.tagline» является пустым или удаленным, числовое значение элемента «profile.age» равно «22», а значение элемента «profile.avatar» является «Abc.png». Каждый элемент 210 данных имеет соответствующее поле 230 индикатора изменения. Поле 230 индикатора изменения указывает на то, что элементы 210 данных, имеющие названия «profile.im», «profile.age» и «profile.avatar», не подвергались изменению, начиная с предшествующего сеанса синхронизации, а также на то, что элемент 210 данных, имеющий название «profile.tagline», был удален, начиная с предшествующего сеанса синхронизации. В данном случае удаление элемента 210 данных обозначается посредством установки бита, соответствующего индикатору 230 изменения, в значение «2».

Версия «5» набора 370 данных сетевого устройства включает в себя четыре элемента 310 данных, имеющих названия «profile.im», «profile.tagline», «profile.age» и «profile.avatar». Каждый элемент 310 данных имеет соответствующее значение 320: значение элемента «profile.im» является «PLAYER45», значение элемента «profile.tagline» является «GO TIME!», числовое значение элемента «profile.age» равно «22», а значение элемента «profile.avatar» является «Abc.png». Кроме того, каждый элемент 310 данных имеет соответствующий номер 340 версии: элемент «profile.im» имеет номер версии, равный «1», элемент «profile.tagline» имеет номер версии, равный «5», элемент «profile.age» имеет номер версии, равный «4», а элемент «profile.avatar» имеет номер версии, равный «2». Кроме того, каждый элемент 310 данных может иметь соответствующий индикатор 350 удаления, иначе называемый «надгробной плитой», который указывает на соответствующий элемент данных, который был удален из набора данных. В наборе 370 данных сетевого устройства ни один из элементов 310 данных удален не был, и, следовательно, никакие индикаторы 350 удаления не устанавливаются для указания на удаление.

Синхронизация между набором 250 данных устройства беспроводной связи и набором 370 данных сетевого сервера выполняется на основе сообщения 30 с запросом синхронизации, формируемого посредством соответствующего устройства 12 беспроводной связи, а также посылаемого на соответствующее сетевое устройство 14. В данном случае устройство беспроводной связи компилирует список 28 изменений устройства беспроводной связи, который включает в себя элемент данных, имеющий название «profile.tagline», и числовое значение «2» для соответствующего индикатора 230 изменения, посредством которого представляется удаление соответствующего элемента данных из набора 250 данных устройства беспроводной связи.

В данном случае список 28 изменений устройства беспроводной связи, а также текущее числовое значение версии 19 набора данных устройства беспроводной связи, например, равное «5», включаются в сообщение 30 с запросом синхронизации, которое передается на сетевое устройство 14, имеющее соответствующий набор данных сетевого устройства. В свою очередь, сетевое устройство принимает сообщение 30 с запросом синхронизации, и на этапе 375 реализует изменения в списке 28 изменений устройства беспроводной связи, обновляет соответствующие измененные номера 340 версии элемента данных, а также обновляет номер 50 версии набора данных сетевого сервера.

Набор 380 данных сетевого сервера иллюстрирует набор данных после реализации изменений в списке 30 изменений устройства беспроводной связи, проверки номеров версии элемента данных и проверки номера версии набора данных сетевого сервера. В частности, элемент 310 данных, имеющий название «profile.tagline», имеет индикатор 350 удаления с обновленным значением, и «Х» в данном случае, который определяет что, соответствующий элемент данных был удален из набора данных сетевого устройства. Кроме того, номер 340 версии элемента данных для элемента 310 данных, имеющего название «profile.tagline», обновляется с версии «5» до версии «6» для отражения изменения в элементе данных, а номер версии набора данных сетевого сервера обновляется с версии «5» до версии «6», причем версия «6» является наибольшей последовательной версией 340 элемента данных.

После реализации изменений сетевой сервер формирует сообщение 32 с подтверждением синхронизации и передает сообщение с подтверждением на устройство беспроводной связи. Поскольку в наборе 380 данных сетевого устройства никакие изменения не произошли, начиная с предшествующего сеанса синхронизации, то список 34 изменений сетевого сервера не компилируется, и, следовательно, список 34 изменений сетевого сервера не включается в сообщение с подтверждением синхронизации. По существу, в изображенном на фиг.8 примере сообщение 32 с подтверждением синхронизации включает в себя обновленный номер 50 версии набора данных сетевого сервера. Следовательно, в иллюстрированном примере сообщение 32 с подтверждением синхронизации включает в себя номер версии набора данных сетевого сервера, равный «6».

Набор 260 данных устройства беспроводной связи иллюстрирует набор данных после приема сообщения 32 с подтверждением синхронизации и проверки номера 19 версии устройства беспроводной связи. В данном случае, поскольку предшествующая версия набора данных устройства беспроводной связи указывала на то, что элемент данных был удален, после приема сообщения 32 с подтверждением синхронизации, устройство 12 беспроводной связи может удалить соответствующий элемент данных из набора данных устройства беспроводной связи. В частности, элемент 210 данных, имеющий название «profile.tagline», удаляется из набора 260 данных устройства беспроводной связи, а номер 19 версии набора данных обновляется с «5» до «6».

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

На фиг.9 изображена схема последовательности операций способа синхронизации набора данных на устройстве беспроводной связи. На этапе 400 на устройстве беспроводной связи инициируется сеанс синхронизации. Инициирование сеанса синхронизации может быть достигнуто посредством предварительно определенного пользовательского действия, такого как использование предварительно определенной клавишной панели, предварительно определенного события, такого как переход в режим онлайн, предварительно определенного времени и/или подобное. На этапе 410 модуль синхронизации проверяет индикатор изменения для каждого элемента данных набора данных и на этапе 420 выполняет определение того, был ли установлен какой-либо индикатор изменения для указания на изменение в элементе данных, добавление элемента данных или удаление элемента данных.

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

На этапе 440 формируется сообщение с запросом синхронизации, которое включает в себя текущий номер версии набора данных устройства беспроводной связи и, в случае необходимости, список изменений устройства беспроводной связи. На этапе 450 сообщение с запросом синхронизации передается на сетевое устройство. В некоторых аспектах сообщение с запросом синхронизации передается посредством упрощенного протокола несущей для обмена данными, такого как протокол представления объектов JavaScript (JSON), или подобного.

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

На этапе 470, если предварительно определенный временной интервал не истек, означая то, что сеанс синхронизации все еще находится в пределах допустимого временного предела, устройство беспроводной связи принимает сообщение с подтверждением синхронизации от сетевого устройства, иначе называемого сервером синхронизации. Сообщение с подтверждением синхронизации включает в себя текущий номер версии набора данных сетевого устройства, индикатор статуса синхронизации, а также любой применимый список изменений сетевого устройства. Дополнительно, на этапе 480 проверяется индикатор статуса синхронизации для определения того, была ли синхронизация выполнена на сетевом устройстве успешно. Если синхронизация была выполнена с ошибкой, то на этапе 490 устройство беспроводной связи инициирует процедуру «полной» синхронизации. В одном аспекте полная синхронизация требует, чтобы устройство беспроводной связи передало весь набор данных на сетевое устройство для полной синхронизации.

Если индикатор статуса синхронизации указывает на то, что синхронизация была выполнена на сетевом устройстве успешно, то на этапе 500 устройство беспроводной связи определяет, включает ли сообщение с подтверждением синхронизации в себя список изменений сетевого устройства. Если список изменений включен в сообщение с подтверждением, то на этапе 510 реализуются соответствующие изменения в наборе данных, включая изменения в элементах данных, добавление элементов данных и/или удаление элементов данных из набора данных. После реализации изменений в наборе данных на этапе 520 обновляется номер версии набора данных устройства беспроводной связи, чтобы отразить номер версии набора данных сетевого устройства, как указано в сообщении с подтверждением. На этапе 530 все индикаторы изменения элемента данных устанавливаются повторно (сбрасываются) для указания на статус «изменения отсутствуют», а также устройство беспроводной связи ожидает инициирование нового сеанса синхронизации на этапе 400.

Если на этапе 500 устройство беспроводной связи определяет, что никакой список изменений не был включен в сообщение с подтверждением синхронизации, то на этапе 540 выполняется определение того, отличается ли текущий номер версии набора данных устройства беспроводной связи от номера версии набора данных сетевого устройства, как указано в сообщении с подтверждением. Если номера версии набора данных различны, то на этапе 520 номер версии набора данных устройства беспроводной связи обновляется для отражения номера версии набора данных сетевого устройства, как указано в сообщении с подтверждением, а на этапе 530 все индикаторы изменения элемента данных устанавливаются повторно (сбрасываются) для указания на статус «изменения отсутствуют», и устройство беспроводной связи ожидает инициирование нового сеанса синхронизации на этапе 400. Если номера версии набора данных идентичны, то на этапе 530 все индикаторы изменения элемента данных устанавливаются повторно (сбрасываются) для указания на статус «изменения отсутствуют», а устройство беспроводной связи ожидает инициирования нового сеанса синхронизации на этапе 400.

На фиг.10 изображена схема последовательности операций способа синхронизации набора данных на сетевом устройстве. На этапе 600 сетевое устройство принимает сообщение с запросом синхронизации от устройства беспроводной связи. На этапе 610 выполняется определение того, включает ли сообщение с запросом в себя список изменений устройства беспроводной связи. Если список изменений включен в сообщение с запросом, то на этапе 620 выполняется определение того, соответствуют ли какие-либо индикаторы изменения в списке индикаторам удаления элементов данных. Если индикаторы изменения соответствуют индикаторам удаления, то на этапе 630 для удаленного элемента данных устанавливается индикатор удаления, а на этапе 640 обновляется номер версии элемента данных для удаленного элемента. Обновленный номер версии элемента данных отражает последовательный номер, следующий за наибольшим номером версии элемента данных.

На этапе 650 выполняется определение того, предусмотрены ли в списке изменений дополнительные удаления элементов данных. Если дополнительные удаления включены в список изменений, то процесс возвращается на этап 630, а индикатор удаления обеспечивается для дополнительного удаленного элемента данных, и на этапе 640 обновляется номер версии элемента данных для удаленного элемента. Если результат определения, выполняемого на этапе 650, указывает на то, что никакие дополнительные удаления не были включены в список изменений, то на этапе 660 выполняется определение того, соответствуют ли какие-либо изменения в списке изменениям элемента данных и/или добавлениям элемента данных.

Если изменения соответствуют добавлениям/изменениям, то на этапе 670 выполняется определение того, имеет ли измененный элемент данных индикатор удаления в наборе данных сетевого устройства, благодаря которому указывается на то, что в соответствующем элементе данных не могут быть сделаны никакие дополнительные обновления. Если измененный элемент данных имеет индикатор удаления, то на этапе 680 процесс переходит на этап 710 для определения того, присутствуют ли какие-либо оставшиеся элементы в списке изменений, имеющем обновления/добавления, который затем переходит на этап 670, как было описано выше. Если измененный элемент данных не имеет индикатора удаления, то на этапе 690, посредством замены элемента данных текущего набора данных сетевого устройства элементом данных списка изменений, выполняется применимое изменение элемента данных или применимое добавление элемента данных в набор данных. На этапе 700 обновляется номер версии элемента данных для измененных или добавленных элементов данных. Обновленный номер версии элемента данных отражает последовательный номер, следующий за наибольшим номером версии элемента данных.

На этапе 710 выполняется определение того, остались ли в списке изменений какие-либо дополнительные изменения или добавления элементов данных. Если дополнительные изменения/добавления существуют в списке изменений, то процесс возвращается на этап 670. Если никаких дополнительных изменений/добавлений не существует в списке изменений, то на этапе 720 номер версии набора данных сетевого устройства устанавливается равным наибольшему номеру версии элемента данных. Кроме того, на этапе 660 в случае, если список изменений не включает в себя изменений/добавлений, то на этапе 720 номер версии набора данных сетевого устройства устанавливается равным наибольшему номеру версии элемента данных.

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

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

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

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

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

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

Различные иллюстративные логические схемы, логические блоки, модули и схемы, описанные в связи с раскрытыми в настоящем документе вариантами осуществления, могут быть реализованы или выполнены с помощью универсального процессора, цифрового сигнального процессора (DSP), специализированной интегральной микросхемы (ASIC), логической матрицы с эксплуатационным программированием (FPGA) или другого программируемого логического устройства, логического элемента на дискретных компонентах или транзисторной логики, дискретных компонентов аппаратных средств, или с помощью любой комбинации вышеперечисленных компонентов, разработанной для выполнения описанных в настоящем документе функций. Универсальный процессор может являться микропроцессором, но, альтернативно, процессор также может являться любым обычным процессором, контроллером, микроконтроллером или конечным автоматом. Процессор также может быть реализован в качестве комбинации вычислительных устройств, например, комбинации процессора DSP и микропроцессора, нескольких микропроцессоров, одного или нескольких микропроцессоров в связи с ядром процессора DSP или любой другой подобной конфигурации. Кроме того, по меньшей мере, один процессор может включать в себя один или несколько модулей, функционирующих для выполнения одного или нескольких вышеописанных этапов и/или действий.

Кроме того, либо индивидуально, либо в любой комбинации этапы и/или действия способа или алгоритма, описанного в связи с раскрытыми в настоящем документе аспектами, могут быть реализованы непосредственно в аппаратных средствах, в программном модуле, выполнимом посредством процессора, или в их комбинации. Программный модуль может постоянно находиться в памяти RAM, флэш-памяти, памяти ROM, памяти EPROM, памяти EEPROM, регистрах, на жестком диске, сменном диске, диске CD-ROM или на информационном носителе любого другого типа, известного в уровне техники. Иллюстративный информационный носитель может быть соединен с процессором таким образом, чтобы процессор мог считывать информацию, а также записывать информацию на информационный носитель. В альтернативе, информационный носитель может являться неотъемлемой частью процессора. Кроме того, в некоторых аспектах процессор и информационный носитель могут постоянно находиться в микросхеме ASIC. Помимо всего прочего, микросхема ASIC может постоянно находиться в пользовательском терминале. В альтернативе, процессор и информационный носитель могут постоянно находиться в пользовательском терминале в качестве дискретных компонентов. Кроме того, в некоторых аспектах этапы и/или действия способа или алгоритма могут постоянно находиться в качестве одной или любой комбинации или набора кодов и/или команд на машиночитаемой среде и/или среде, считываемой посредством компьютера, которые могут быть включены в компьютерный программный продукт.

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

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

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

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

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

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

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

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

6. Способ по п.1, в котором сообщение с запросом синхронизации и сообщение с подтверждением синхронизации передают посредством упрощенного протокола несущей для обмена данными, поддерживающего матрицы.

7. Способ по п.6, в котором сообщение с запросом синхронизации и сообщение с подтверждением синхронизации передают посредством протокола представления объектов JavaScript (JSON).

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

24. Устройство по п.23, в котором сообщение с запросом синхронизации и сообщение с подтверждением синхронизации передают посредством протокола представления объектов JavaScript (JSON).

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

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

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

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

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

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

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

32. Способ по п.30, в котором этап изменения измененных элементов данных в наборе данных сетевого устройства также включает в себя этап, на котором обеспечивают индикатор удаления для элементов данных, которые были удалены из набора данных устройства беспроводной связи без удаления элементов данных из набора данных сетевого устройства.

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

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

35. Способ по п.29, в котором сообщение с запросом синхронизации и сообщение с подтверждением синхронизации передают посредством упрощенного протокола несущей для обмена данными, поддерживающего матрицы.

36. Способ по п.35, в котором сообщение с запросом синхронизации и сообщение с подтверждением синхронизации передают посредством протокола представления объектов JavaScript (JSON).

37. Способ по п.29, в котором сетевое устройство не информируется о номере версии набора данных устройства беспроводной связи до приема сообщения с запросом синхронизации.

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

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

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

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

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

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

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

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

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

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

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

49. Устройство по п.46, в котором модуль синхронизации также функционирует для обновления номера версии элемента данных на основе изменения в элементе данных, а также для обновления номера версии набора данных сетевого устройства для отражения номера версии наибольшего последовательного измененного элемента данных.

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

51. Устройство по п.45, в котором сетевое устройство не информируется о номере версии набора данных устройства беспроводной связи до приема сообщения с запросом синхронизации.

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



 

Похожие патенты:

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

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

Изобретение относится к мобильным устройствам связи. .

Изобретение относится к области управления передачей данных и обработки данных, поступающих с линий связи, а именно к установлению тематической коммуникационной связи между двумя абонентами (А-Tln, В-Tln) в сети связи (KN1).

Изобретение относится к способу и устройству управления скоростью передачи битов в кодировании, в котором внутрикадровое предсказание и межкадровое предсказание используются с переключением.

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

Изобретение относится к области сетей передачи данных. .

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

Изобретение относится к области передачи цифровой информации, а именно к передаче данных от датчика по компьютерной сети

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

Изобретение относится к области сетей передачи данных, а более конкретно - к способу восстановления файлов для повторного получения файла в системе для распространения контента более чем одному получателям

Изобретение относится к области передачи данных

Изобретение относится к области радиосвязи, в частности к структуре блоков данных для обмена информации по сети
Наверх