СПОСОБ И УСТРОЙСТВО ДЛЯ УПРАВЛЕНИЯ КЛЮЧАМИ ПОСЛЕ СБОЯ ПРИ ХЭНДОВЕРЕ
METHOD AND DEVICE FOR KEY MANAGEMENT AFTER HANDOVER FAILURE

ОБЛАСТЬ ТЕХНИКИ
Варианты осуществления настоящего изобретения в целом относятся к связи, осуществляемой в средах, использующих множество технологий радиодоступа (RAT, radio access technology) и/или одну технологию радиодоступа, и, в частности, к устройству и способу обеспечения управления ключами для поддержки мобильности между доменами (например, для обеспечения непрерывности речевого вызова с одиночным радиоинтерфейсом - SR-VCC (single radio voice call continuity)).
ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
В эпоху современных средств связи огромное распространение получают проводные и беспроводные сети. В ответ на потребительский спрос наблюдается беспрецедентное технологическое развитие компьютерных, телевизионных и телефонных сетей. Беспроводные и мобильные сетевые технологии направлены на удовлетворение соответствующих запросов потребителей и обеспечение при этом большей гибкости и оперативности передачи информации.
Используемые в настоящее время и разрабатываемые сетевые технологии продолжают обеспечивать упрощение процесса передачи информации и удобство для пользователей. Такая возрастающая простота передачи информации и удобства для пользователей в последнее время сопровождается возросшими возможностями обеспечения мобильной связи по относительно низкой стоимости. В связи с этим в современном мире устройства мобильной связи используются повсеместно. По мере быстрого развития технологии мобильной связи также наблюдается относительно быстрое распространение услуг, запрашиваемых и предоставляемых посредством устройств мобильной связи.
На протяжении всей истории развития мобильной связи было разработано множество различных поколений систем, позволяющих использовать такие устройства связи. Первые поколения этих систем иногда разрабатывались независимо друг от друга и, по меньшей мере в начале, не обязательно были пригодны для использования совместно с другими системами. Однако процесс сотрудничества между разработчиками систем связи начался, благодаря чему новые технологии могут потенциально обеспечивать совместное взаимодействие с другими технологиями для расширения общих возможностей системы. Таким образом, мобильный терминал, работающий в системах второго поколения (например, 2G), таких как GSM (Global System for Mobile communications, глобальная система мобильной связи) или IS-95, которые пришли на смену системам первого поколения, может в некоторых случаях использоваться совместно с системами новых поколений, такими как системы третьего поколения (например, 3G) и другими, разрабатываемыми в настоящий момент системами (например, E-UTRAN (Evolved Universal Terrestrial Radio Access Network, развитая универсальная наземная сеть радиодоступа)).
Возможность конкретного мобильного терминала получать доступ к множеству систем или осуществлять связь с использованием множества технологий радиодоступа (multi-RAT) иногда называют «мульти-радио доступом» (MRA, multi-radio access). Таким образом, терминал с возможностью MRA может переключаться между различными технологиями радиодоступа (например, UTRAN (Universal Terrestrial Radio Access Network, универсальная наземная сеть радиодоступа), E-UTRAN, GERAN (GSM EDGE Radio Access Network, сеть радиодоступа GSM EDGE), HSPA (High Speed Packet Access, высокоскоростной пакетный доступ)). Целью такого процесса переключения является, безусловно, поддержка непрерывности связи в течение каждого перехода. В рамках проекта партнерства третьего поколения (3GPP, Third Generation Partnership Project) определены различные спецификации для осуществления попытки стандартизации аспектов, касающихся механизмов, используемых для достижения этой и других целей. Одно из положений стандартов 3GPP предусматривает передачу речевого сеанса через E-UTRAN в GERAN в виде речевого вызова с коммутацией каналов (CS, circuit switched) (например, переход от соединения с коммутацией пакетов (PS, packet switched) к соединению CS). Другими словами, технология SR-VCC, например, обеспечивает механизм, посредством которого выполняется хэндовер из среды передачи речевого вызова с использованием Интернет-протокола (VoIP, Voice over Internet Protocol) через канал передачи данных в обычную среду передачи речевого вызова через канал CS. Однако механизм SR-VCC также способен обеспечить функционирование в среде, реализованной согласно одной технологии радиодоступа (single-RAT). Например, передача обслуживания устройства может быть осуществлена из HSPA в UTRAN, при этом HSPA является составной частью UTRAN.
Кроме того, возможны другие ситуации хэндовера между доменами вне SR-VCC. Одним из принципов или одной из целей реализации решений, соответствующих стандартам, является устранение или уменьшение влияния воздействий на целевую сеть доступа (например, GERAN). В частности, с учетом поддержки SR-VCC в направлении из E-UTRAN в целевую сеть предварительной версии 8 может оказаться желательным использовать существующие целевые узлы MSC (mobile switching center, центр коммутации мобильной связи) и BSS (base station system, система базовой станции) без необходимости существенных изменений таких узлов для поддержки решения SR-VCC. Однако в некоторых случаях проблемы могут возникать вследствие того, что сеть и пользовательское оборудование (UE, user equipment), для которого выполняется хэндовер, могут использовать различные концепции определения успешности выполнения процесса хэндовера. Например, в каждом из различных сценариев хэндовера SR-VCC оборудование UE может полагать, что процесс хэндовера завершен, и передавать сообщение об этом в сеть. Обычно сеть полагает, что процесс хэндовера завершен после приема сообщения, переданного пользовательским оборудованием. Соответственно, если установлены различия в условиях определения завершения процесса хэндовера, для одной стороны возможно сохранение нового набора ключей CS, а для другой стороны возможно отклонение нового набора ключей CS и вместо этого поддержание ранее сохраненного набора ключей CS. Этот сценарий может возникнуть, например, в случае сбоя при хэндовере. Более конкретно, если UE обеспечивает передачу (например, сообщения о завершении хэндовера), которая не принимается сетью, то UE сохраняет новый набор ключей CS, но сеть продолжает использовать старый набор ключей CS.
Управление ситуацией несоответствия наборов ключей обычно выполняют путем проверки соответствия идентификатора набора ключей (KSI (key set identifier, идентификатор набора ключей) или CKSN (ciphering key sequence number, порядковый номер ключа шифрования)) в сети и в UE при последующем соединении CS и/или PS, при котором несоответствие инициирует процедуру обмена новыми ключами (например, с помощью аутентификации и принятия соглашения о ключах (АКА, authentication and key agreement)). Сбой может возникнуть, если новый преобразованный набор ключей имеет преобразованный идентификатор, совпадающий с существующим сохраненным набором ключей. В частности, например, если неизвестно, какой из двух возможных наборов ключей сохранен с этим идентификатором набора ключей в сети и в UE, несоответствие наборов ключей может привести к серьезным последствиям, приводящим к сбою соединения или передаче неправильно шифрованного звукового сигнала. Выше приведен пример только одной ситуации, при которой несоответствие ключей может возникнуть в результате выполнения хэндовера между специфичными различными доменами, в которых поддерживается SR-VCC. Однако следует понимать, что подобные проблемы, связанные с несоответствием ключей, могут возникнуть также в отношении других процессов хэндовера между доменами, и эти проблемы не обязательно могут включать механизмы SR-VCC или MRA.
В связи с этим желательно внести изменения в процедуры управления ключами для процессов хэндовера между доменами.
КРАТКОЕ ОПИСАНИЕ ПРИМЕРОВ ОСУЩЕСТВЛЕНИЯ НАСТОЯЩЕГО
ИЗОБРЕТЕНИЯ
В связи с вышеизложенным предложены способ, устройство и компьютерный программный продукт, которые могут обеспечить внесение изменений в процесс хэндовера между доменами в средах multi-RAT или single-RAT. В этом отношении, например, в некоторых вариантах осуществления настоящего изобретения может быть реализован механизм, с помощью которого удается избежать встречающихся ситуаций, в которых определяют несоответствие наборов ключей, для того чтобы, например, поддерживать решение SR-VCC.
В одном из примеров осуществления настоящего изобретения предложен способ обеспечения управления ключами для выполнения хэндовера между различными доменами. Способ может включать определение того, имеется ли индикация потенциального несоответствия ключей, в ответ на попытку выполнения хэндовера между первым доменом и вторым доменом и установление действительности последнего набора ключей, используемого для осуществления шифрованной связи между мобильным терминалом и сетевым устройством, на основе результата указанного определения.
В другом примере осуществления настоящего изобретения предложено устройство для обеспечения управления ключами для выполнения хэндовера между различными доменами. Устройство может содержать по меньшей мере один процессор и по меньшей мере одну память, в которой хранится компьютерный программный код. Указанная по меньшей мере одна память и указанный компьютерный программный код конфигурированы так, чтобы, совместно с указанным по меньшей мере одним процессором, обеспечивать выполнение устройством по меньшей мере следующих операций: определение того, имеется ли индикация потенциального несоответствия ключей, в ответ на попытку выполнения хэндовера между первым доменом и вторым доменом и установление действительности последнего набора ключей, используемого для осуществления шифрованной связи между мобильным терминалом и сетевым устройством, на основе результата указанного определения
В другом примере осуществления настоящего изобретения предложен компьютерный программный продукт для обеспечения управления ключами для выполнения хэндовера между различными доменами. Компьютерный программный продукт содержит по меньшей мере один машиночитаемый носитель информации, на котором хранятся инструкции исполняемого компьютером программного кода. Указанные инструкции исполняемого компьютером программного кода могут включать инструкции программного кода для определения того, имеется ли индикация потенциального несоответствия ключей, в ответ на попытку выполнения хэндовера между первым доменом и вторым доменом, и установления действительности последнего набора ключей, используемого для осуществления шифрованной связи между мобильным терминалом и сетевым устройством, на основе результата указанного определения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
В рамках общего описания настоящего изобретения будут сделаны ссылки на сопровождающие чертежи, необязательно изображенные в масштабе, на которых:
на фиг.1 показана блок-схема системы беспроводной связи в соответствии с примером осуществления настоящего изобретения;
на фиг.2 показана блок-схема устройства для обеспечения управления ключами для выполнения хэндовера между различными доменами в соответствии с примером осуществления настоящего изобретения;
на фиг.3 показана блок-схема устройства для обеспечения управления ключами для выполнения хэндовера между различными доменами в соответствии с примером осуществления настоящего изобретения; и
на фиг.4 показана блок-схема алгоритма в соответствии с примером способа обеспечения управления ключами для выполнения хэндовера между различными доменами согласно примеру осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
Далее будут более подробно описаны некоторые варианты осуществления настоящего изобретения со ссылкой на сопровождающие чертежи, на которых показаны некоторые, но не все, варианты осуществления настоящего изобретения. Безусловно, варианты осуществления настоящего изобретения могут быть реализованы с использованием множества различных форм и не ограничиваются приведенными в этом описании вариантами; точнее, эти варианты осуществления настоящего изобретения приведены для того, чтобы раскрытие изобретения удовлетворяло соответствующим законным требованиям. В этом описании одинаковые цифровые ссылки соответствуют одинаковым элементам. Далее термины "данные", "содержимое", "информация" и подобные им термины могут использоваться взаимозаменяемо для указания на данные, которые можно передавать, принимать и/или сохранять в соответствии с вариантами осуществления настоящего изобретения.
Кроме того, термин «пример», используемый в этом описании, не предполагает каких-либо качественных оценок, а служит только для иллюстрации приводимого примера. Таким образом, использование любых таких терминов не должно рассматриваться в качестве ограничения сущности и объема вариантов осуществления настоящего изобретения.
Кроме того, используемый в этом описании термин «схема» относится (а) к только аппаратным реализациям схем (таким как реализации, выполненные в виде аналоговых и/или цифровых схем); (b) к комбинациям схем и компьютерного программного продукта (-ов), содержащего программные и/или микропрограммные инструкции, хранимые в одном или более машиночитаемых модулях памяти, которые работают совместно для обеспечения выполнения устройством одной или более описанных функций, и (с) к схемам, таким как, например, микропроцессор(ы) или часть микропроцессора(-ов), для работы которого требуется программное или микропрограммное обеспечение, даже если оно физически не установлено. Это определение термина "схема" применимо ко всем использованиям этого термина в данном описании, включая любые пункты формулы изобретения. В качестве другого примера, используемого в этом описании, термин "схема" также включает реализацию, включающую один или более процессоров и/или их части(-ей) и прилагаемого программного и/или микропрограммного обеспечения. Согласно другому примеру термин "схема", используемый в этом описании, также включает, например, интегральную микросхему для обработки сигнала основной полосы частот или интегральную микросхему прикладного процессора для мобильного телефона, или аналогичную интегральную микросхему в сервере, устройстве сотовой сети, в других сетевых устройствах и/или в других вычислительных устройствах.
Термин "машиночитаемый носитель информации" относится к физическому носителю информации (например, энергозависимому или энергонезависимому запоминающему устройству), в отличие от термина "машиночитаемое средство передачи", который относится к электромагнитному сигналу.
Согласно приведенной выше информации об уровне техники далее будет описан пример, в котором вариант осуществления настоящего изобретения применим в отношении процесса хэндовера, выполняемого в соответствии с решением SR-VCC. Однако необходимо понимать, что варианты осуществления настоящего изобретения также распространяются на другие решения для связи между доменами и не ограничены SR-VCC. Кроме того, хотя в этом примере, в частности, описан процесс хэндовера из домена PS в домен CS, варианты осуществления настоящего изобретения также применимы к процессам хэндовера из домена CS в домен PS. Таким образом, описанные примеры не следует рассматривать как ограничивающие по отношению к применению вариантов осуществления настоящего изобретения. По существу, процесс управления ключами, которые преобразуются между различными доменами (например, при хэндовере из домена PS в домен CS или в других примерах хэндовера), может быть усовершенствован посредством реализации вариантов осуществления настоящего изобретения. Например, обычно при выполнении процессов хэндовера SR-VCC шифрование поддерживается в коммутаторе в направлении из домена PS в домен CS путем получения новых ключей CS из ключей PS, используемых во время выполнения хэндовера. Сгенерированные ключи CS рассматриваются в качестве "новых", поскольку при преобразовании используется значение NONCE ("для данного случая"). После генерации ключей CS и успешного завершения процесса хэндовера SR-VCC пользовательское оборудование (UE), такое как мобильный телефон или другой мобильный терминал, может сохранить заново сгенерированные ключи CS для использования при последующих соединениях CS. Сеть также может сохранять ключи для последующего их использования в процессе поддержки соединений CS с UE. Идентификатор нового набора ключей CS (например, KSI или CKSN) копируется непосредственно из идентификационной информации набора ключей PS. Соответственно, как описано выше, при возникновении сбоя в процессе хэндовера одна сторона может сохранить новый набор ключей CS, в то время как другая сторона этот набор не сохраняет, в результате чего возникает несоответствие ключей.
Некоторые варианты осуществления настоящего изобретения могут обеспечивать выполнение процесса управления ключами, который может позволить избежать возникновения несоответствия ключей после сбоя при хэндовере SR-VCC. В этом отношении, например, некоторые варианты осуществления настоящего изобретения могут предусматривать процесс управления, который указывает на недействительность ключей в ситуациях, когда может быть определено, что в текущих условиях возможно несоответствие ключей. По существу, варианты осуществления настоящего изобретения предусматривают процедуры управления ключами для сетевой стороны и стороны UE, которые могут позволить избежать ситуаций несоответствия ключей.
На фиг.1 показана блок-схема системы беспроводной связи в соответствии с примером осуществления настоящего изобретения. На фиг.1 показан один тип системы, в которой может оказаться полезным применение вариантов осуществления настоящего изобретения. Система может включать множество сетевых устройств и один или более мобильных терминалов (например, пользовательское оборудование (UE) 10). В качестве примеров мобильных терминалов можно привести различные устройства мобильной связи, такие как портативные цифровые помощники (PDA, Personal Digital Assistant), пейджеры, мобильные телевизионные устройства, игровые устройства, ноутбуки, мобильные телефоны, камеры, видеомагнитофоны, звуковые/видео проигрыватели, радиоприемники, устройства системы глобального позиционирования (GPS, global positioning system) или любая комбинация вышеуказанных устройств, а также устройства передачи голоса и текста других типов. Однако следует понимать, что мобильный терминал, показанный на чертеже и описываемый далее, служит только в качестве иллюстрации одного типа устройства, для которого могло бы быть полезным применение вариантов осуществления настоящего изобретения, и, таким образом, его не следует рассматривать как устройство, ограничивающее объем вариантов осуществления настоящего изобретения.
В примере осуществления настоящего изобретения пользовательское оборудование UE 10 может содержать антенну (или множество антенн) для передачи сигналов в сетевой узел и для приема сигналов из сетевого узла, который может представлять собой базовый узел, базовую станцию, точку доступа, узел В (node В) или усовершенствованный узел В (e-node В). В примере осуществления настоящего изобретения UE 10 может сначала поддерживать связь с исходным узлом 20 (например, узлом e-node В сети Е-UTRAN) и может находиться в процессе передачи в зону обслуживания целевого узла 30 (например, базовой станции (BS, base station) сети GERAN). Однако следует понимать, что целевой узел 30 и исходный узел 20 могут соответствовать другим базовым станциям или точкам доступа, относящимся к различным сценариям хэндовера между доменами (например, из домена PS в домен CS или из домена CS в домен PS и т.д.).
В процессе выполнения хэндовера для предоставления идентификатора исходного узла 20 может быть ожидаемым получение сообщения с запросом хэндовера, используемого для инициирования хэндовера. Таким образом, центр коммутации мобильной связи (MSC) 32, связанный с целевым узлом, может принимать идентификационную информацию от исходного узла 20 совместно с запросом хэндовера. MSC 32 может направлять вызовы в UE 10 и принимать вызовы из UE 10, если UE 10 выполняет и принимает вызовы в процессе взаимодействия с целевым узлом 30. Таким образом, MSC 32 может поддерживать соединение с наземными линиями связи, когда UE 10 задействовано в процессе вызова. Кроме того, MSC 32 может управлять пересылкой сообщений в UE 10 и из UE 10, а также может управлять пересылкой сообщений для UE 10, передаваемых в центр сообщений и поступающих из этого центра. MSC 32 может соединяться с сетью передачи данных, такой как локальная сеть (LAN, local area network), региональная сеть (MAN, metropolitan area network) и/или глобальная сеть (WAN, wide area network) (например, мультимедийная подсистема 40 передачи данных по Интернет-протоколу (IMS, Internet Protocol Multimedia Subsystem), реализованная в рамках проекта партнерства третьего поколения (3GPP)). Исходный узел 20 может также соединяться с IMS 40 3GPP через один или более шлюзов (GW, gateway), таких как шлюз GW 22. Указанный шлюз GW 22 может представлять собой обслуживающий шлюз (S-GW, serving gateway) и/или шлюз сети передачи пакетных данных (PDN GW, packet data network gateway). Шлюз S-GW может маршрутизировать и пересылать пакеты пользовательских данных и в то же время функционировать как объект управления мобильностью для плоскости пользователя при выполнении процессов хэндовера в сети E-UTRAN или между E-UTRAN и другими сетями RAT (например, GERAN). PDN GW может обеспечивать для UE 10 связь с внешними сетями передачи пакетных данных, представляя собой точку выхода и входа трафика для UE 10.
Целевой узел 30 в этом примере может также соединяться с обслуживающим узлом 34 поддержки GPRS (SGSN, serving General Packet Radio Service (пакетная радиосвязь общего назначения) support node). SGSN 34 может выполнять функции, сходные с теми функциями, которые выполняет MSC 32, для услуг коммутации пакетов. SGSN 34 может соединяться с элементом 36 управления мобильностью (ММЕ, mobility management element), который также может поддерживать связь с MSC 32, исходным узлом 20 и GW 22. ММЕ 36 может, помимо прочего, отвечать за отслеживание режима ожидания UE и за процедуры пейджинга. ММЕ 36 может также управлять выбором GW для процессов подключения UE и хэндовера, а также может управлять аутентификацией пользователя. Таким образом, в некоторых случаях сеть (например, MSC 32, SGSN 34 или ММЕ 36) также управляет генерацией и/или сохранением ключей и преобразованием ключей между доменами PS и CS. Однако следует отметить, что в альтернативном варианте за генерацию и/или сохранение ключей и преобразование ключей может отвечать другой сетевой объект, отличный от ММЕ 36, MSC 32, SGSN 34 или иного объекта.
Например, в ситуации, когда запрошен хэндовер, ММЕ 36 может координировать процесс хэндовера UE 10 из исходного узла 20 в целевой узел 30. Как часть процесса хэндовера, MSC 32 может обеспечивать новый набор ключей CS для UE 10, который может быть предоставлен для UE 10 через SGSN 34. ММЕ 36 может использовать процедуры, описанные в технических спецификациях 3GPP TS-33.102 V.x.y и TS-33.401 V.x.y, для выполнения преобразования наборов ключей между доменом PS и доменом CS. После генерации нового набора ключей CS центр MSC 32 может локально сохранять новый набор ключей CS. Затем UE 10 может генерировать новый набор ключей CS на основе ключа PS и значения NONCE. После генерации нового набора ключей CS оборудование UE 10 может также сохранять новый набор ключей CS, например, в (U)SIM (UMTS subscriber identity module, модуль идентификации абонента системы UMTS) UE 10. Эти процедуры могут выполняться аналогично стандартным процедурам. Однако согласно вариантам осуществления настоящего изобретения может также использоваться устройство для управления ключами в случае сбоя при выполнении хэндовера между доменами (например, в случае сбоя при хэндовере).
На фиг.2 и 3 показаны блок-схемы устройства, для которого может оказаться полезным применение вариантов осуществления настоящего изобретения. Однако следует понимать, что устройство, показанное на чертеже и описываемое далее, служит только в качестве иллюстрации одного из устройств, для которого может оказаться полезным применение вариантов осуществления настоящего изобретения, и, таким образом, его не следует рассматривать как устройство, ограничивающее объем вариантов осуществления настоящего изобретения. В одном из примеров осуществления настоящего изобретения устройство, показанное на фиг.2, может использоваться в мобильном терминале (например, UE 10), способном поддерживать связь с другими устройствами через сеть. В другом примере осуществления устройство, показанное на фиг.3, может использоваться в сетевом устройстве (например, в MSC 32), конфигурированном для управления процессом координации хэндовера между доменами или для участия в этом процессе. Однако в данном описании не обязательно представлены все системы, которые могут использовать варианты осуществления настоящего изобретения. Кроме того, в устройствах, применяющих варианты осуществления настоящего изобретения, могут также быть представлены другие структуры, и такие структуры могут содержать большее или меньшее количество компонентов по сравнению со схемой, показанной на фиг.2 и 3. Таким образом, в некоторых вариантах осуществления настоящего изобретения может использоваться большее или меньшее количество устройств по сравнению с устройствами, показанными на чертежах и описываемыми ниже. Помимо этого, в некоторых вариантах осуществления настоящего изобретения, несмотря на то что устройства или элементы показаны в соединении друг с другом, они могут быть реализованы в одном и том же устройстве или элементе, и, таким образом, устройства или элементы, показанные в соединении друг с другом, в альтернативном варианте должны рассматриваться в качестве частей одного и того же устройства или элемента.
На фиг.2 показано устройство 50 для обеспечения процесса управления ключами после сбоя при выполнении хэндовера между доменами. Устройство 50 может применяться в мобильном терминале или быть реализовано в виде мобильного терминала (например, в виде UE 10, показанного на фиг.1). Устройство 50 может содержать (или иметь соединение с указанными ниже компонентами) процессор 70, пользовательский интерфейс 72, интерфейс 74 связи и запоминающее устройство 76. Запоминающее устройство 76 может содержать, например, одну или более энергозависимую и/или энергонезависимую память. Другими словами, запоминающее устройство 76, например, может представлять собой электронное устройство хранения данных (например, машиночитаемый носитель информации), содержащее логические схемы, конфигурированные для хранения данных (например, битов), которые могут быть извлечены машиной (например, вычислительным устройством). Запоминающее устройство 76 может быть конфигурировано для хранения информации, данных, приложений, инструкций или т.п., которые позволяют устройству выполнять различные функции в соответствии с примерами осуществления настоящего изобретения. Например, запоминающее устройство 76 может быть конфигурировано для буферизации входных данных для их последующей обработки процессором 70. Дополнительно или в качестве альтернативы запоминающее устройство 76 может быть конфигурировано для сохранения инструкций, подлежащих выполнению процессором 70.
Процессор 70 может быть реализован различными способами. Например, процессор 70 может быть реализован в виде одного или более различных средств обработки, таких как сопроцессор, микропроцессор, контроллер, цифровой сигнальный процессор (DSP, digital signal processor), процессорный элемент, работающий совместно с DSP или самостоятельно, или в виде других различных устройств обработки, включая интегральные схемы, такие как, например, специализированная интегральная схема (ASIC, application specific integrated circuit), программируемая вентильная матрица (FPGA, field programmable gate array), блок микроконтроллера (MCU, microcontroller unit), аппаратный ускоритель, микросхема специализированного компьютера и т.п. В примере осуществления настоящего изобретения процессор 70 может быть конфигурирован для исполнения инструкций, хранимых в запоминающем устройстве 76 или иным образом доступных процессору 70. В альтернативном варианте или дополнительно процессор 70 может быть конфигурирован для исполнения жестко закодированных функций. Таким образом, конфигурированный посредством аппаратного или программного обеспечения или посредством комбинации этих средств процессор 70 может представлять собой объект (например, физически реализованный в виде схемы), способный в соответствующей конфигурации выполнять операции в соответствии с вариантами осуществления настоящего изобретения. Таким образом, если процессор 70 реализован в виде ASIC, FPGA и т.п., он может представлять собой специальным образом конфигурированное аппаратное средство, служащее для выполнения описываемых операций. В альтернативном варианте, если процессор 70 реализован в виде средства исполнения программных инструкций, эти инструкции могут специальным образом конфигурировать процессор 70 для выполнения описываемых алгоритмов и/или операций в процессе исполнения инструкций. Однако в некоторых случаях процессор 70 может представлять собой процессор специального устройства (например, мобильного терминала или сетевого устройства), приспособленного для реализации вариантов осуществления настоящего изобретения путем дополнительного конфигурирования процессора 70 с помощью инструкций для выполнения описываемых алгоритмов и/или операций. Процессор 70 может содержать, помимо прочего, тактовый генератор, арифметико-логическое устройство (ALU, arithmetic logic unit) и логические элементы, конфигурированные для поддержки функционирования процессора 70.
В то же время интерфейс 74 связи может представлять собой любое средство (например, устройство или схему), реализованное аппаратно или программно, или в виде комбинации аппаратных и программных средств и конфигурированное для приема и/или передачи данных из сети/в сеть, и/или любое другое устройство или модуль, соединенное с указанным устройством. В этом отношении интерфейс 74 связи может содержать, например, антенну (или множество антенн) и аппаратное и/или программное обеспечение поддержки для обеспечения связи с сетью беспроводной связи. В некоторых средах интерфейс 74 связи может альтернативно или дополнительно поддерживать проводную связь. Таким образом, например, интерфейс 74 связи может включать модем для связи и/или другое аппаратное/программное обеспечение для поддержки связи с помощью кабеля, цифровой абонентской линии (DSL, digital subscriber line), универсальной последовательной шины (USB, universal serial bus) или других механизмов.
Пользовательский интерфейс 72 может осуществлять связь с процессором 70 для приема индикации о вводе пользователем данных через пользовательский интерфейс 72, и/или предоставлении пользователю звукового, визуального, механического или иного выходного сигнала. По существу пользовательский интерфейс 72 может содержать, например, клавиатуру, мышь, джойстик, дисплей, сенсорный экран, функциональные клавиши, микрофон, динамик или другие механизмы ввода/вывода. В примере осуществления настоящего изобретения, согласно которому устройство реализовано в виде сервера или некоторых других сетевых устройств, пользовательский интерфейс 72 может обладать ограниченными возможностями или отсутствовать.
Однако в вариантах осуществления настоящего изобретения, в которых устройство реализовано в виде устройства связи (например, в виде мобильного терминала 10), пользовательский интерфейс 72 может включать помимо других устройств или элементов все или любые из следующих компонентов: динамик, микрофон, дисплей, клавиатура и т.п. В этом отношении, например, процессор 70 может содержать схему пользовательского интерфейса, конфигурированную для управления по меньшей мере некоторыми функциями одного или более элементов пользовательского интерфейса, например, динамика, вызывного устройства, микрофона, дисплея и/или других подобных элементов. Процессор 70 и/или схема пользовательского интерфейса, содержащая процессор 70, могут быть конфигурированы для управления одной или более функциями одного или более элементов пользовательского интерфейса с помощью компьютерных программных инструкций (например, программного и/или микропрограммного обеспечения), хранимых в памяти, доступной процессору 70 (например, в запоминающем устройстве 76 и/или в другом подобном устройстве).
В примере осуществления настоящего изобретения процессор 70 может быть реализован как детектор 80 условия несоответствия и диспетчер 82 установления действительности ключей или же может содержать эти элементы или управлять ими. Детектор 80 условия несоответствия согласно этому варианту осуществления может также содержать детектор 84 сбоя при хэндовере в UE или же может быть реализован в виде этого элемента. Каждый из таких элементов, как детектор 80 условия несоответствия, диспетчер 82 установления действительности ключей и детектор 84 сбоя при хэндовере в UE, может представлять собой любое средство, такое как устройство или схема, работающие в соответствии с инструкциями программного обеспечения, или же эти элементы могут быть реализованы в виде аппаратных средств или комбинации аппаратных и программных средств (например, в виде процессора 70, функционирующего под управлением программного обеспечения, процессора 70, реализованного посредством схем ASIC или FPGA, специально конфигурированных для выполнения описанных операций, или в виде комбинации этих средств), конфигурирующих устройство или схему для выполнения соответствующих функций детектора 80 условия несоответствия, диспетчера 82 установления действительности ключей и детектора 84 сбоя при хэндовере в UE соответственно, как рассмотрено в настоящем описании. Таким образом, в примерах, в которых предполагается использование программного обеспечения, устройство или схема (например, процессор 70 в одном из примеров), исполняющее инструкции программного обеспечения, формируют структуру, связанную с такими средствами.
Детектор 80 условия несоответствия может быть конфигурирован для определения, с точки зрения UE 10, указывают ли существующие условия с определенной долей вероятности на потенциальное несоответствие между UE 10 и MSC 32 в том, что касается сохраненных в них наборов ключей CS. В этом отношении, например, для того чтобы определить, обнаружена ли индикация условия потенциального несоответствия ключей, детектор 80 условия несоответствия может быть конфигурирован для контроля трафика сообщений и действий UE 10 в ответ на генерацию нового набора ключей в процессе выполнения операции хэндовера между доменами. В ответ на обнаружение индикации условия потенциального несоответствия ключей детектор 80 условия несоответствия в соответствии с примером осуществления настоящего изобретения конфигурирован для уведомления или информирования об этом диспетчера 82 установления действительности ключей.
Детектор 84 сбоя при хэндовере в UE может быть конфигурирован для обнаружения специфического признака, который может быть обнаружен в UE 10, для индикации сбоя при хэндовере или сбоя при выполнении операции хэндовера между доменами с точки зрения UE. В частности, например, детектор 84 сбоя при хэндовере в UE может быть конфигурирован для определения того, подтверждено ли сетью завершение процесса хэндовера (например, поступило ли сообщение о завершении хэндовера). Сбой при приеме любого подтверждения завершения хэндовера может указывать на сбой при хэндовере. Дополнительно или в альтернативном варианте детектор 84 сбоя при хэндовере в UE может быть конфигурирован для определения того, достигнута ли в UE 10 синхронизация уровня 1 (например, L1 sync). Невозможность для UE 10 достичь синхронизации уровня 1 также может указывать на сбой при хэндовере. Дополнительно или в альтернативном варианте детектор 84 сбоя при хэндовере в UE может быть конфигурирован для определения, содержит ли принятая команда хэндовера действительные данные конфигурации. Обнаружение любой недействительной и/или неподдерживаемой конфигурации также может указывать на сбой при хэндовере. Дополнительно или в альтернативном варианте детектор 84 сбоя при хэндовере в UE может быть конфигурирован для определения, предпринимает ли UE 10 попытку вернуться в исходное состояние после сбоя при хэндовере, поскольку такая попытка также может указывать на сбой при хэндовере. Детектор 84 сбоя при хэндовере в UE альтернативно или дополнительно может обнаруживать другие потенциальные индикаторы сбоя при хэндовере.
Детектор 84 сбоя при хэндовере в UE может быть конфигурирован для того, чтобы по команде детектора 80 условия несоответствия уведомлять или информировать диспетчер 82 установления действительности ключей о наличии индикации условия потенциального несоответствия ключей в ответ на определение любой описанной выше индикации, указывающей на сбой при хэндовере. Диспетчер 82 установления действительности ключей затем может внести коррективы в работу UE 10, как описано ниже. Однако в тех ситуациях, в которых детектор 80 условия несоответствия (или детектор 84 сбоя при хэндовере в UE) не сообщает об условии потенциального несоответствия ключей, UE 10 может сохранить новый набор ключей, сгенерированный в соответствии с обычными процедурами хэндовера между доменами.
В ответ на прием от детектора 80 условия несоответствия (или от детектора 84 сбоя при хэндовере в UE) индикации того, что обнаружено условие потенциального несоответствия ключей, диспетчер 82 установления действительности ключей может быть конфигурирован для непосредственного установления недействительности принятого нового набора ключей в (U)SIM. Процедура установления недействительности нового набора ключей может включать (или ее выполнение может приводить к подобному результату) удаление такого набора ключей или назначение индикации, присоединяемой или сопоставляемой с набором ключей, для указания на состояние действительности этого набора ключей. Новому набору ключей может соответствовать другой набор ключей, который использовался ранее. Соответственно, любой другой набор ключей с идентификатором набора ключей (KSI или CKSN), соответствующим преобразованным ключам, связанным с операцией хэндовера между доменами, при выполнении которой может произойти сбой в процессе последующего соединения, также может быть признан недействительным диспетчером 82 установления действительности ключей. В ответ на установление диспетчером 82 установления действительности ключей недействительности преобразованных ключей, может принудительно осуществляться обмен новыми ключами (например, с помощью процедуры АКА). Посредством принудительного выполнения управляемой процедуры обмена новыми ключами таким образом, как описано выше, в случае обнаружения потенциального несоответствия ключей диспетчер 82 установления действительности ключей может управлять процессом установления действительности ключей в UE 10 так, чтобы по возможности предотвратить или по меньшей мере существенно уменьшить вероятность возникновения сбоя в процессе связи или затруднений, связанных с несоответствием ключей, которое не было предварительно устранено (например, с помощью процедуры АКА). В ответ на указание диспетчером 82 установления действительности ключей недействительности нового набора ключей на стороне UE 10 диспетчер 82 установления действительности ключей может отреагировать на определение того, что сетевая сторона скорее всего не примет подтверждение успешного завершения хэндовера и не сохранит корректно тот же самый новый набор ключей (например, в силу индикации потенциального несоответствия ключей, обнаруженного детектором 84 сбоя при хэндовере в UE), установлением недействительности нового набора ключей на стороне UE 10. В ответ на установление недействительности нового набора ключей на стороне UE 10 последний действительный набор ключей может быть сохранен для использования до тех пор, пока не будет предоставлен новый набор ключей.
Соответственно, несмотря на невозможность в настоящее время гарантировать синхронизацию сохранения преобразованных ключей как на сетевой стороне, так и на стороне UE в случае сбоя при выполнении хэндовера SR-VCC или другого процесса хэндовера между доменами, устройство 50 может быть конфигурировано для уменьшения вероятности возникновения затруднений в процессе связи, вызванных несоответствием ключей, путем управления процессом установления действительности ключей на основе индикации о потенциальном несоответствии ключей. Индикация о потенциальном несоответствии ключей может быть обнаружена на основе действий, выполняемых UE 10, и принятых в UE 10 сообщений, касающихся подтверждения успешного завершения хэндовера, в процессе выполнения операции хэндовера между доменами.
На фиг.3 показано устройство 50' для обеспечения управления ключами после сбоя при выполнении операции хэндовера между доменами. Устройство 50' может содержать (или иметь соединение с указанными ниже компонентами) процессор 70', интерфейс 74' связи и запоминающее устройство 76'. Таким образом, устройство 50' может быть аналогично устройству 50, показанному на фиг.2, за исключением того, что оно приспособлено к функционированию в сетевом устройстве, а не в UE 10.
Вследствие этого устройство 50' может, например, не включать пользовательский интерфейс. Однако процессор 70', интерфейс 74' связи и запоминающее устройство 76' могут выполнять те же функции, что и аналогичные компоненты устройства 50, показанного на фиг.2.
В примере осуществления настоящего изобретения процессор 70' может быть реализован как детектор 80' условия несоответствия и диспетчер 82' установления действительности ключей или же может содержать эти элементы или управлять ими. Детектор 80' условия несоответствия и диспетчер 82' установления действительности ключей согласно этому варианту осуществления могут быть аналогичны детектору 80 условия несоответствия и диспетчеру 82 установления действительности ключей, изображенным на фиг.2, за исключением того, что они работают на другой стороне (например, на стороне сети).
В примере осуществления настоящего изобретения детектор 80' условия несоответствия может также содержать (или же быть реализован в качестве этого элемента) детектор 86 сбоя при хэндовере в сети, который также может быть аналогичен детектору 84 сбоя при хэндовере в UE, показанному на фиг.2, за исключением того, что он работает на стороне сети, а не на стороне UE. Принцип работы детектора 86 сбоя при хэндовере в сети более подробно описывается ниже.
Каждый из таких элементов, как детектор 80' условия несоответствия, диспетчер 82' проверки действительности ключей и детектор 86 сбоя при хэндовере в сети, может представлять собой любое средство, такое как устройство или схема, работающее в соответствии с инструкциями программного обеспечения, или же эти элементы могут быть реализованы в виде аппаратных средств или комбинации аппаратных и программных средств (например, в виде процессора 70', функционирующего под управлением программного обеспечения, процессора 70', реализованного посредством схем ASIC или FPGA, специально конфигурированных для выполнения описанных операций, или в виде комбинации этих средств), конфигурирующих устройство или схему для выполнения соответствующих функций детектора 80' условия несоответствия, диспетчера 82' установления действительности ключей и детектора 86 сбоя при хэндовере в UE соответственно, как рассмотрено в настоящем описании. Таким образом, в примерах, в которых предполагается использование программного обеспечения, устройство или схема (например, процессор 70' в одном из примеров), исполняющее инструкции программного обеспечения, формирует структуру, связанную с такими средствами.
Детектор 80' условия несоответствия может быть конфигурирован для определения с точки зрения сети, указывают ли существующие условия с определенной долей вероятности на потенциальное несоответствие между UE 10 и MSC 32 в том, что касается сохраненных в них наборов ключей CS. В этом отношении, например, детектор 80' условия несоответствия, чтобы определить, обнаружена ли индикация условия потенциального несоответствия ключей, может быть конфигурирован для контроля трафика сообщений и действий в сети в ответ на предоставление нового набора ключей в UE 10 в процессе выполнения операции хэндовера между доменами. В ответ на обнаружение индикации условия потенциального несоответствия ключей детектор 80' условия несоответствия в соответствии с примером осуществления настоящего изобретения конфигурирован для уведомления или информирования об этом диспетчера 82' установления действительности ключей.
Детектор 86 сбоя при хэндовере в сети может быть конфигурирован для обнаружения специфического признака, который может быть обнаружен в сети (например, в MSC 32, ММЕ 36 или SGSN 34), для индикации сбоя при хэндовере или сбоя при выполнении операции хэндовера между доменами с точки зрения UE. В частности, например, детектор 86 сбоя при хэндовере в сети может быть конфигурирован для определения того, принята ли на стороне сети индикация о завершении хэндовера (например, сообщение о завершении хэндовера) от UE 10. Сбой при приеме индикации о завершении хэндовера может указывать на сбой при выполнении хэндовера. Дополнительно или в альтернативном варианте детектор 86 сбоя при хэндовере в сети может быть конфигурирован для определения того, достигнута ли синхронизация уровня 1 (L1 sync). Сбой при выполнении синхронизации уровня 1 также может указывать на сбой при хэндовере. Детектор 86 сбоя при хэндовере в сети альтернативно или дополнительно может обнаруживать другие потенциальные индикаторы сбоя при хэндовере.
Детектор 86 сбоя при хэндовере в сети может быть конфигурирован для того, чтобы по команде детектора 80' условия несоответствия уведомлять или иначе информировать диспетчер 82' установления действительности ключей о наличии индикации условия потенциального несоответствия ключей в ответ на определение любой описанной выше индикации, указывающей на сбой при хэндовере. Диспетчер 82' установления действительности ключей затем может внести коррективы в работу сети (например, в функционирование MSC 32, ММЕ 36 или SGSN 34), как это описано далее. Однако в тех ситуациях, в которых детектор 80' условия несоответствия (или детектор 86 сбоя при хэндовере в сети) не сигнализирует об условии потенциального несоответствия ключей, MSC 32 может сохранить новый набор ключей CS, предоставляемый оборудованию UE 10, в соответствии с обычными процедурами хэндовера между доменами.
В ответ на прием от детектора 80' условия несоответствия (или от детектора 86 сбоя при хэндовере в сети) индикации о том, что обнаружено условие потенциального несоответствия ключей, диспетчер 82' установления действительности ключей может быть конфигурирован для непосредственного установления недействительности нового набора ключей. Процедура установления недействительности нового набора ключей может включать (или ее выполнение может приводить к подобному результату) удаление такого набора ключей или назначение индикации, присоединяемой или сопоставляемой с набором ключей, для указания на состояние действительности этого набора ключей. В ответ на установление диспетчером 82' установления действительности ключей недействительности преобразованных ключей может принудительно осуществляться обмен новыми ключами (например, с помощью процедуры АКА). Посредством принудительного выполнения управляемой процедуры обмена новыми ключами таким образом, как это описано выше, в случае обнаружения потенциального несоответствия ключей диспетчер 82' установления действительности ключей может управлять процессом установления действительности ключей в сети так, чтобы по возможности предотвратить или по меньшей мере существенно уменьшить вероятность возникновения сбоя в процессе связи или затруднений, связанных с несоответствием ключей, которое не было предварительно устранено (например, с помощью процедуры АКА).
В ответ на установление диспетчером 82' установления действительности ключей недействительности нового набора ключей на стороне сети диспетчер 82' установления действительности ключей может отреагировать на определение того, что на стороне UE 10 скорее всего также не будет принят и корректно сохранен тот же новый набор ключей (например, в силу индикации потенциального несоответствия ключей, обнаруженного детектором 86 сбоя при хэндовере в сети), установлением недействительности нового набора ключей на стороне сети. В ответ на установление недействительности нового набора ключей на стороне сети (например, устройствами MSC 32, ММЕ 36 или SGSN 34) последний действительный набор ключей может быть сохранен для использования до тех пор, пока не будет предоставлен новый набор ключей.
Соответственно, несмотря на невозможность в настоящее время гарантировать синхронизацию сохранения преобразованных ключей как на сетевой стороне, так и на стороне UE в случае сбоя при выполнении процесса хэндовера между доменами, устройство 50' может быть конфигурировано для уменьшения вероятности возникновения затруднений в процессе связи, вызванных несоответствием ключей, путем управления процессом установления действительности ключей на основе индикации потенциального несоответствия ключей. Индикация потенциального несоответствия ключей может быть обнаружена на основе действий, выполняемых в сети, и принятых в сети сообщений, касающихся подтверждения успешного завершения хэндовера, в процессе выполнения операции хэндовера между доменами.
На фиг.4 показана блок-схема алгоритма работы системы, способа и компьютерного программного продукта в соответствии с примерами осуществления настоящего изобретения. Следует понимать, что каждый блок или шаг алгоритма и комбинации блоков алгоритма могут быть реализованы различными средствами, например, с помощью аппаратных средств, микропрограммного обеспечения, процессора, схемы и/или другого устройства, связанного с выполнением программного обеспечения, содержащего одну или более компьютерных программных инструкций.
Например, одна или более описанных выше процедур могут быть реализованы с использованием компьютерных программных инструкций. В этом отношении компьютерные программные инструкции, которые реализуют описанные выше процедуры, могут храниться в памяти устройства, использующего вариант осуществления настоящего изобретения, и исполняться процессором устройства. Следует понимать, что любые такие компьютерные программные инструкции могут быть загружены в компьютер или другое программируемое устройство (например, в аппаратное средство) для формирования механизма, с помощью которого в конечном итоге компьютер или другое программируемое устройство реализуют средства для выполнения функций, указанных в блоке(-ах) или шаге(-ах) алгоритма. Эти компьютерные программные инструкции могут также храниться на машиночитаемом носителе информации (в отличие от среды передачи машиночитаемых данных, такой как сигнал несущей или электромагнитный сигнал), который обеспечивает функционирование компьютера или другого программируемого устройства таким образом, чтобы хранимые на машиночитаемом носителе информации инструкции формировали изделие, в процессе работы которого реализуются функции, указанные в блоке(-ах) или на шаге(-ах) алгоритма. Компьютерные программные инструкции могут быть также загружены в компьютер или другое программируемое устройство для инициализации выполнения последовательности шагов компьютером или другим программируемым устройством для формирования процесса, реализуемого компьютером таким образом, чтобы инструкции, исполняемые компьютером или другим программируемым устройством, позволяли выполнять шаги для реализации функций, указанных в блоке(-ах) или на шаге(-ах) алгоритма.
Соответственно, блоки или шаги алгоритма поддерживают комбинации средств, комбинации шагов и средств программных инструкций для выполнения конкретных функций. Следует также понимать, что один или более блоков или шагов алгоритма, или комбинации блоков или шагов алгоритма, могут быть реализованы с помощью специализированных аппаратных компьютерных систем, которые выполняют конкретные функции или шаги, или с помощью комбинаций специализированного аппаратного обеспечения и компьютерных инструкций.
В этом отношении один из вариантов осуществления способа обеспечения управления ключами после потенциального сбоя при выполнении хэндовера в соответствии с примером осуществления настоящего изобретения, как показано на фиг.4, включает определение на шаге 100, имеется ли индикация потенциального несоответствия ключей в ответ на попытку выполнения хэндовера между первым доменом (например, доменом PS) и вторым (отличным от первого) доменом (например, доменом CS). Способ на шаге 110 может также включать установление действительности последнего набора ключей (например, набора ключей CS), используемого для осуществления шифрованной связи между мобильным терминалом и сетевым устройством, на основе результатов указанного определения.
В некоторых вариантах осуществления настоящего изобретения способ может включать дополнительные опциональные операции, пример которых показан на фиг.4 пунктирными линиями. Так, например, способ на шаге 120 может также включать инициирование обмена новыми ключами в ответ на установление недействительности последнего набора ключей.
В некоторых вариантах осуществления настоящего изобретения конкретные вышеописанные операции могут быть изменены или дополнены, как описано далее. Изменение или дополнение вышеописанных операций может быть выполнено в любом порядке и в любой комбинации. В этой связи, например, операция определения того, имеется ли индикация потенциального несоответствия ключей, может включать определение, принято ли в мобильном терминале от сетевого устройства подтверждение приема сообщения о завершении хэндовера, переданного мобильным терминалом. Дополнительно или альтернативно, определение того, имеется ли индикация потенциального несоответствия ключей, может включать определение, имеется ли синхронизация уровня 1. В качестве другой альтернативы или дополнительной возможности определение того, имеется ли индикация потенциального несоответствия ключей, может включать определение того, предпринимает ли мобильный терминал попытку вернуться в исходное состояние после сбоя при хэндовере. В альтернативном варианте осуществления определение того, имеется ли индикация потенциального несоответствия ключей, может включать определение того, содержит ли принятая команда хэндовера действительные данные конфигурации. В некоторых вариантах осуществления настоящего изобретения операция определения того, имеется ли индикация потенциального несоответствия ключей, может включать определение того, принято ли в сетевом устройстве сообщение о завершении хэндовера, переданное мобильным терминалом. В примере осуществления настоящего изобретения процедура установления действительности последнего набора ключей может включать установление недействительности последнего набора ключей в сетевом устройстве или в мобильном терминале в ответ на обнаружение наличия индикации потенциального несоответствия ключей.
В примере осуществления настоящего изобретения устройство для выполнения способа, описанного выше со ссылкой на фиг.4, может содержать один или более процессоров (например, процессоров 70 или 70'), конфигурированных для выполнения некоторых или всех описанных выше операций (100-120). Процессор может, например, быть конфигурирован для выполнения операций (100-120) путем выполнения аппаратно реализованных логических функций, исполнения сохраненных инструкций или алгоритмов выполнения каждой из операций. В альтернативном варианте устройство может содержать средства для выполнения каждой из описанных выше операций. В этом отношении в вариантах осуществления настоящего изобретения примеры средств для выполнения операций 100-120 могут включать, например, процессор 70 или 70', соответствующий один из детекторов 80 или 80' условия несоответствия, диспетчеров 82 или 82' установления действительности ключей, детектор 84 сбоя при хэндовере в UE, детектор 86 сбоя при хэндовере в сети и/или устройство или схема исполнения инструкций или выполнения алгоритма для обработки информации, как описано выше. Пример устройства в соответствии с примером осуществления настоящего изобретения может содержать по меньшей мере один процессор и по меньшей мере одну память, в которой хранится компьютерный программный код. Указанная по меньшей мере одна память и указанный компьютерный программный код могут быть конфигурированы таким образом, чтобы, совместно по меньшей мере с одним процессором, обеспечивать выполнение устройством операций 100-120 (с описанными выше изменениями или без изменений). Пример компьютерного программного продукта в соответствии с примером осуществления настоящего изобретения может содержать по меньшей мере один машиночитаемый носитель информации, на котором хранятся части исполняемого компьютером программного кода. Части исполняемого компьютером программного кода могут содержать инструкции программного кода для выполнения операций 100-120 (с описанными выше изменениями или без изменений). Различные изменения и другие варианты осуществления настоящего изобретения могут быть реализованы специалистом в данной области техники, к которой относятся эти варианты осуществления, для достижения преимуществ на основе идей, изложенных в приведенном выше описании и прилагаемых чертежах. Таким образом, следует понимать, что настоящее изобретение не ограничено конкретными раскрытыми вариантами его осуществления и что такие изменения и другие варианты осуществления не выходят за рамки объема приложенной формулы изобретения. Более того, хотя в изложенном выше описании и связанных с ним чертежах приводятся примеры осуществления настоящего изобретения в контексте конкретных комбинаций элементов и/или функций, следует понимать, что в альтернативных вариантах осуществления могут быть использованы другие комбинации элементов и/или функций без выхода за рамки объема приложенной формулы изобретения. В этом отношении, например, комбинации элементов и/или функций, отличные от тех, что явно описаны выше, также рассматриваются в качестве комбинаций, которые могут быть изложены в некоторых пунктах формулы изобретения. Хотя в этом описании используются конкретные термины, эти термины применяются только в общем и описательном смысле и не служат для ограничения изобретения.