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

Иллюстрации

Показать все

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

Реферат

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

[0001] Настоящее изобретение, в общем, относится к системам, программному обеспечению и способам, а более конкретно к механизмам и технологиям для выполнения и/или перемещения приложения через распределенные облачные домены, когда изменяется местоположение пользовательского терминала, который выполняет приложение.

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

[0002] Облачные вычисления представляют собой доставку вычислений в качестве услуги, а не продукта, за счет чего совместно используемые ресурсы, программное обеспечение и информация предоставляются в компьютеры и другие устройства в качестве полезных свойств по сети (например, по Интернету) по мере необходимости. Облачные вычисления описывают новую модель потребления и доставки для ИТ-услуг на основе Интернет-протоколов, и она типично заключает в себе предоставление динамически масштабируемых и зачастую виртуализированных ресурсов.

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

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

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

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

[0007] Распределенное облако 106, пример которого проиллюстрирован на фиг. 1 в качестве части системы 100, развертывает меньший набор вычислительных ресурсов и ресурсов хранения (облачных доменов 106a-106n) в нескольких местоположениях вместо их централизации в крупных центрах обработки и хранения данных. Это обеспечивает возможность распределения приложений в различных местоположениях для того, чтобы лучше удовлетворять требованиям по времени задержки и улучшать взаимодействия между пользовательскими терминалами и облачными приложениями. Сеть 102 связи, которая включает в себя, по меньшей мере, базовую станцию 102a и ассоциированные средства 102b хранения, предоставляет для пользовательского терминала 110 возможность использовать ресурсы облачного домена 106n. Когда пользователь 110 перемещается в другую сеть связи 104, пользовательский терминал подключается к другой базовой станции 104a, имеющей свои средства 104b хранения. Новая базовая станция 104a по-прежнему подключается к исходному облачному домену 106n. Таким образом, может увеличиваться время задержки приложения, выполняющегося в пользовательском терминале 110.

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

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

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

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

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

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

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

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

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

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

[0016] Прилагаемые чертежи, которые включены и составляют часть подробного описания, иллюстрируют один или более вариантов осуществления и вместе с описанием поясняют эти варианты осуществления. На чертежах:

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

[0018] Фиг. 2 является принципиальной схемой, иллюстрирующей перемещение связанных с приложением записей при инициировании посредством изменения местоположения пользовательского терминала согласно примерному варианту осуществления;

[0019] Фиг. 3 является принципиальной схемой, иллюстрирующей различные объекты, которые перемещают связанные с приложением записи из текущего облачного домена в новый облачный домен согласно примерному варианту осуществления;

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

[0021] Фиг. 5 является принципиальной схемой 3GPP-сети, в которой связанные с приложением записи перемещаются из текущего облачного домена в новый облачный домен согласно примерному варианту осуществления;

[0022] Фиг. 6 является блок-схемой последовательности операций способа для перемещения связанных с приложением записей из текущего облачного домена в новый облачный домен, когда пользовательский терминал изменяет свое местоположение согласно примерному варианту осуществления; и

[0023] Фиг. 7 является принципиальной схемой устройства обработки, в котором может реализовываться способ по фиг. 6.

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

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

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

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

[0027] Согласно примерному варианту осуществления, проиллюстрированному на фиг. 2, предусмотрена система 200, которая включает в себя сеть 201 связи и распределенное облако 206. Сеть 201 связи может представлять собой сеть по стандарту Партнерского проекта третьего поколения (3GPP) или мобильную сеть на основе Интернет-протокола (IP) либо любую беспроводную сеть, например, Wi-Fi, WiMax. Сеть 201 связи включает в себя, по меньшей мере, первую сетевую зону 202. Обычно, сеть 201 связи включает в себя множество сетевых зон. Тем не менее, для простоты, фиг. 2 показывает только первую сетевую зону 202. Аналогично, другая сеть связи 203 может включать в себя несколько сетевых зон. Фиг. 2 показывает только вторую сетевую зону 204. В одном варианте применения, сеть 201 связи и сеть 203 связи являются идентичной сетью, т.е. управляются посредством идентичного оператора. Далее считается, что две сети 201 и 203 управляются посредством различных операторов. Новые признаки, поясненные в данном документе, в равной степени применяются к одной или более сетей связи.

[0028] Первая сетевая зона 202 может включать в себя базовую станцию 202a и соответствующие ресурсы 202b хранения (например, запоминающее устройство, процессор и т.д.). Вторая сетевая зона 204 может иметь аналогичную структуру. Термин "базовая станция" должен истолковываться как включающий в себя, по меньшей мере, одно из узла B (для универсальной системы мобильной связи (UMTS)), усовершенствованного узла B (для системы по стандарту долгосрочного развития (LTE)), базовой приемо-передающей станции (BTS) для глобальной системы мобильной связи (GSM), модема, маршрутизатора или других устройств (например, устройств, используемых в межмашинном типе связи или сети), которые известны как предоставляющие Интернет-подключение для пользовательского терминала.

[0029] Пользовательский терминал 210 первоначально находится в местоположении 210a в первой сетевой зоне 202. Терминал использования 210 представляет собой беспроводное устройство, например, смартфон, переносной компьютер, персональное цифровое устройство, планшетный компьютер и т.д. Пользовательский терминал 210 обменивается данными с базовой станцией 202a для получения Интернет-подключения.

[0030] Распределенное облако 206 может включать в себя распределенные облачные домены 206a-206w. Распределенный облачный домен, например, 206a может включать в себя средства обработки и/или хранения. Каждый распределенный облачный домен может быть расположен в физическом местоположении, которое отличается от физического местоположения другого распределенного облачного домена. Распределенные облачные домены подключаются друг к другу через линии 207 связи. Распределенные облачные домены 206a-w могут принадлежать идентичному оператору или различным операторам. Если распределенные облачные домены принадлежат различным операторам, то вовлекается более одного распределенного облака 206. Для простоты, данные, поясненные в данном документе, показывают только одно распределенное облако. Тем не менее, новые признаки являются в равной степени применимыми более чем к одному распределенному облаку.

[0031] Некоторые распределенные облачные домены могут фактически находиться в сетях связи. Например, ресурсы 202b и/или 204b хранения могут размещать один или более распределенных облачных доменов. Эти распределенные облачные домены могут принадлежать владельцу, идентичному владельцу сети связи или владельцу распределенного облака 206. Фиг. 2 для простоты показывает то, что все распределенные облачные домены расположены в распределенном облаке 206.

[0032] Распределенное облако 206 включает в себя различные компоненты для управления распределенными облачными доменами. Один такой компонент представляет собой диспетчер 208 распределенного облака (DCM). DCM представляет собой приложение/функцию, которое развертывает меньший набор вычислительных ресурсов и ресурсов хранения (например, для обработки, хранения и т.д.) в нескольких доменах в распределенном облаке 206, вместо их централизации в крупных информационных центрах. DCM обеспечивает возможность распределения приложений в различных местоположениях для того, чтобы лучше удовлетворять различным требованиям, например, требованиям по времени задержки, и улучшать взаимодействия между пользовательскими терминалами и облачными приложениями.

[0033] Другой компонент для управления распределенными облачными доменами представляет собой распределенную облачную плоскость 209 (DCP). DCP представляет собой объект, который управляет тем, какие облачные вычислительные ресурсы доступны для конкретного приложения. DCP 209 имеет распределенный облачный компонент 209a и компоненты 209b и 209c сети связи.

[0034] Приложение App, которое выполняется посредством пользовательского терминала, рассматривается в качестве услуги, предложенной посредством оператора сети связи либо посредством оператора распределенного облака, либо посредством третьей стороны, например, поставщика приложений, когда приложение использует функциональность, предоставленную посредством распределенного облака. Приложение App включает в себя, по меньшей мере, пользовательский компонент App1, который выполняется в пользовательском терминале, и облачный компонент App2, который выполняется в распределенном облачном домене 206n. Приложение App также может включать в себя центральный компонент App3, который выполняется в централизованном облаке или в другом местоположении распределенного облака 206. Фиксированное или централизованное местоположение может учитываться при оценке ограничений, которые поясняются ниже. В другом варианте осуществления, фиксированное местоположение для App3 может быть развернуто за пределами распределенного облака.

[0035] Когда приложение получено (например, куплено) пользователем, устанавливается соглашение об уровне обслуживания (SLA) между пользователем и поставщиком приложения. SLA указывает набор параметров, который должен удовлетворяться для приложения, чтобы предоставлять требуемые результаты по фактическому качеству услуг (QoE). Например, набор параметров может включать в себя, по меньшей мере, одно из времени задержки приложения и/или полосы пропускания приложения, затрат на доставку приложения в выбранном местоположении, размера приложения, операционной системы приложения и доступных компонентов в выбранном облачном домене. Могут рассматриваться другие наборы параметров, как должны признавать специалисты в данной области техники. Таким образом, приложение доставляет ожидаемые результаты, если обеспечивается выбранный набор параметров, когда выполняется приложение.

[0036] Тем не менее, возникают случаи, когда пользовательский терминал 210 перемещается из местоположения 210a в другое географическое местоположение 210b, как проиллюстрировано на фиг. 2. Когда пользовательский терминал 210 изменяет свое местоположение, как отмечено выше, возможно то, что новый распределенный облачный домен 206w становится более подходящим для хостинга облачного компонента App2 приложения App. Интеллектуальные функции и ассоциированные управляющие функции (поясняются относительно фиг. 3) могут предоставляться в первой сетевой зоне 202 или в ее соответствующей сети 201 связи для обработки этого аспекта. Другими словами, новые интеллектуальные функции определяют то, что пользовательский терминал изменяет свое местоположение, и оценивают то, может или нет удовлетворяться одно или более ограничений, ассоциированных с приложением, если новый распределенный облачный домен 206w используется вместо текущего распределенного облачного домена 206n.

[0037] Одно или более ограничений включает в себя, по меньшей мере, одно из сетевой задержки (ассоциированной с расстоянием), характеристик сети (например, перегрузки, доступной полосы пропускания сети), доступности облачных ресурсов (например, вычислительных, хранения, сетевых), шаблона трафика между приложением и пользовательским терминалом, объема данных, которые должны передаваться, затрат на облачные ресурсы, интенсивности мобильного сетевого сигнала, ограничений по времени задержки и полосе пропускания для приложения и т.д. Одно или более ограничений ассоциировано с (i) местоположением 210b пользовательского терминала 210 во второй сетевой зоне 204, (ii) местоположением облачного компонента App2 приложения App в текущем облачном домене 206n, и (iii) местоположением нового распределенного облачного домена 206w.

[0038] Два случая могут возникать в качестве результата оценки одного или более ограничений. Если одно или более ограничений удовлетворяет предварительно определенному условию (пояснено ниже), интеллектуальные функции решают перемещать связанные с приложением записи 220 из текущего распределенного облачного домена 206n в новый распределенный облачный домен 206w. Связанные с приложением записи 220 могут представлять собой программный код, связанный с облачным компонентом App2 приложения, если новый распределенный облачный домен 206w уже не выполняет хостинг приложения. Тем не менее, если новый распределенный облачный домен 206w выполняет хостинг приложения, то связанные с приложением записи 220 могут включать в себя данные (различные параметры), связанные с приложением. После того, как связанные с приложением записи 220 перемещаются в новый распределенный облачный домен 206w, пользовательский компонент App1 приложения обменивается данными с облачным компонентом App2, хостинг которого выполняется посредством нового распределенного облачного домена, что фактически повышает или сохраняет требуемое QoE пользователя.

[0039] Если одно или более ограничений не удовлетворяет предварительно определенному условию, интеллектуальные функции решают либо перемещать облачный компонент App2 приложения App в облачный домен по умолчанию, либо выполнять приложение в режиме с ухудшенным качеством из текущего распределенного облачного домена (206n).

[0040] Предварительно определенное условие требует, чтобы, по меньшей мере, один параметр набора параметров имел идентичное или лучшее значение, чем значение соответствующего ограничения из одного или более ограничений. Например, если приложение требует скорости в 1 МБ данных в секунду между пользовательским терминалом и текущим распределенным облачным доменом, скорость в 0,5 МБ между пользовательским терминалом и новым распределенным облачным доменом препятствует интеллектуальным функциям перемещать облачный компонент в новый распределенный облачный домен. Следует отметить, что предварительно определенное условие может включать в себя любое число параметров, и оценка предварительно определенного условия инициируется, когда изменяется местоположение пользовательского терминала.

[0041] Изменение местоположения пользовательского терминала рассматривается, когда пользовательский терминал перемещен из одной соты в другую соту или из группы сот в другую группу сот, или из города в другой город, или из региона в другой регион, или из страны в другую страну.

[0042] Тогда как выше пояснен, относительно фиг. 2, общий принцип перемещения, из одного распределенного облачного домена в другой, либо программного кода, либо данных, ассоциированных с приложением, далее подробнее поясняется реализация такого принципа. Таким образом, согласно примерному варианту осуществления, различные процессы и модули управления, которые могут вовлекаться в этот новый принцип, показаны на фиг 3. Описание элементов, аналогичных элементам на фиг. 2, опускается для простоты. Фиг. 3 показывает диспетчер 350 приложений и диспетчер 360 пользовательской мобильности (UMM), предоставленные в сети 301 связи. Эти два объекта формируют модуль 370 управления. Диспетчер 350 приложений и UMM 360 могут быть расположены в центральном сервере сети 301 связи в первой сетевой зоне 302, или они могут быть распределены по сети связи. В другом варианте применения, диспетчер 350 приложений может управляться посредством распределенного облака и, возможно, может быть расположен на его сервере в распределенном облаке.

[0043] Диспетчер 350 приложений может представлять собой объект, который выполняет следующие роли: A) регистратор для MobileAppSubscription (пояснен ниже), который сохраняет идентификационные данные пользовательского терминала, связанного с прикладной услугой, и B) арбитр для определения того, соответствуют или нет условия для нового местоположения пользовательского терминала критериям для перемещения облачного компонента приложения. Если определяется соответствие, диспетчер 350 приложений инструктирует DCM 340 инициировать процедуру перемещения приложения.

[0044] UMM 360 представляет собой объект, который отслеживает в реальном времени местоположения пользовательских терминалов в сети связи и вызывает диспетчер 350 приложений, когда инициирующее условие для нового местоположения пользовательского терминала удовлетворяется для определенной подписки пользовательского терминала. В этом отношении, система 300, проиллюстрированная на фиг. 3, может использовать поле или процедуру MobileAppSubscription и поле или процедуру MobileUserLocation для отслеживания позиции пользовательского терминала, уровня соглашения, QoE и т.д. В этом отношении, MobileAppSubscription может быть записью данных подписки, связанных с определенным набором приложений, принадлежащих пользовательскому терминалу. MobileAppSubscription может обрабатываться посредством диспетчера приложений. В этом случае, UMM отправляет новое местоположение пользовательского терминала в диспетчер приложений, когда изменяется его позиция. Оптимизация связи UMM/диспетчера приложений может реализовываться посредством задания дополнительной записи в UMM. Эта дополнительная запись идентифицирует то, какие пользовательские уведомления должны отправляться в диспетчер приложений. Дополнительная запись может добавляться посредством диспетчера приложений, когда пользователь подписывается, по меньшей мере, на одно приложение для мобильных устройств.

[0045] Приложения предоставляются в качестве услуги в пользовательский терминал, и эта услуга может управляться посредством процедуры MobileApp в распределенном облачном окружении. Приложения могут иметь ассоциированные требования соглашения об уровне обслуживания (SLA), согласованные с оператором сети связи и/или с поставщиком приложений, и/или с оператором распределенного облака. За счет соответствия этим требованиям, сеть связи удовлетворяет QoE, ожидаемому пользователем.

[0046] MobileUserLocation может представлять собой процедуру, которая предоставляет последнее известное географическое местоположение каждого пользовательского терминала и последнее известное географическое местоположение соответствующего MobileAppSubscription, например, местоположение облачного компонента приложения.

[0047] При наличии этих объектов, предположим, что пользователь, подписанный на услугу MobileApp, перемещается в сети связи, например, из одной страны до другой или из одной сетевой зоны в другую сетевую зону. Услуга MobileApp представляет персонализированные облачные приложения, т.е. приложения индивидуально адаптированы для пользователя и имеют желательные требования по QoE. Пример приложения, которое индивидуально адаптировано, - это когда пользователь выбирает данное приложение, и из десяти параметров, ассоциированных с приложением, пользователь выбирает шесть таких параметров, которые имеют соответствующие минимальные или максимальные значения.

[0048] Услуга MobileApp предоставляет инфраструктуру, которая позволяет перемещать программный код (например, выполняемый код) и/или данные, связанные с этими приложениями, по мере того, как пользовательский терминал перемещается по сети, чтобы удовлетворять QoE, ожидаемому покупателем этого приложения. Перемещение приложений инициировано посредством обусловленного изменения местоположения пользователя. Выполнение перемещения приложения выполняется посредством серии тесных взаимодействий между объектами услуги MobileApp и реализациями распределенного облака по определенным интерфейсам, как пояснено ниже относительно фиг. 4.

[0049] Фиг. 4 иллюстрирует систему 400, которая включает в себя пользовательский терминал 410, UMM 460, диспетчер 450 приложений и DCM 440. На этапе 470, пользовательский терминал 410 подписывается на определенное приложение посредством отправки запроса в диспетчер 450 приложений. Диспетчер 450 приложений информирует UMM 460 на этапе 472 относительно этого события и регистрирует как пользовательский терминал, так и приложение, создающее MobileAppSubscription. Определенное QoE ожидается пользователем при регистрации в любом приложении, и QoE может отражаться посредством SLA. Кроме того, пользователь ассоциирован с первым географическим местоположением при приеме пользовательского компонента приложения.

[0050] Когда изменяется местоположение пользовательского терминала, этой информацией обмениваются на этапе 474 между пользовательским терминалом 410 и UMM 460. Обмен информацией может осуществляться согласно, по меньшей мере, двум сценариям. В первом сценарии, пользовательский терминал отслеживает географическое местоположение и информирует UMM относительно изменений (посредством использования, например, GPS-координат, изменения идентификатора соты, процедур обновления зоны расположения или отслеживания и т.д.). Во втором сценарии, UMM отслеживает географическое местоположение пользовательского терминала. Могут использоваться другие сценарии для определения изменения местоположения пользовательского терминала. Новое местоположение пользовательского терминала передается на этапе 476 в диспетчер 450 приложений. Диспетчер 450 приложений определяет на этапе 778 то, удовлетворяется или нет предварительно определенное условие (или условия) в новом местоположении. Другими словами, диспетчер 450 приложений рассматривает одно или более ограничений, ассоциированных с (i) местоположением пользовательского терминала 310 во второй сетевой зоне 304, (ii) местоположением облачного компонента App2 приложения App в первом облачном домене 3206n, и (iii) местоположением второго облачного домена 306w, ассоциированного со второй сетевой зоной 304.

[0051] После оценки того, удовлетворяет или нет одно или более ограничений предварительно определенному условию для второго облачного домена и для первого облачного домена, диспетчер приложений принимает решение, чтобы перемещать связанные с приложением записи 320 из текущего облачного домена 306n в новый облачный домен 306w. В одном варианте осуществления, перемещение выполняется только тогда, когда результат этапа оценки является положительным для нового облачного домена 306w и отрицательным для текущего облачного домена 306n, т.е. одно или более ограничений удовлетворяется для второго (нового) облачного домена, но не для первого (текущего) облачного домена. Следует отметить, что для оценки одного или более ограничений, диспетчер приложений проверяет условия, записываемые в MobileAppSubscription.

[0052] Таким образом, на этапе 780, диспетчер 450 приложений перемещает связанные с приложением записи (например, само приложение на основе облачного компонента, если новый облачный домен не выполняет его хостинг, или данные, связанные с приложением, если новый облачный домен уже выполняет хостинг этого приложения) в новый облачный домен. В одном варианте осуществления, поставщик приложений может предоставлять в диспетчер 450 приложений компоненты приложения, которые должны быть развернуты, вместе с одним или более ограничений, которые должны применяться в новом распределенном облаке для этих компонентов. Степень детализации, на которой приложение заинтересовано в получении обновления местоположения (пороговый уровень), может указываться посредством приложения. Она может представлять собой, например, соту, группу сот, город, регион или страну.

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