СПОСОБ И СИСТЕМА ДЛЯ ОБНОВЛЕНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
METHOD AND SYSTEM FOR SOFTWARE UPDATE

Настоящее изобретение испрашивает приоритет заявки на патент Китая № 201810037190.2, поданной в патентное ведомство Китая 15 января 2018 года и озаглавленной «СПОСОБ И СИСТЕМА ДЛЯ ОБНОВЛЕНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ», которая полностью включена в настоящий документ посредством ссылки.
Область техники, к которой относится изобретение
Настоящее изобретение относится к области технологий связи и, в частности, к способу и системе для обновления программного обеспечения.
Уровень техники
Система развитого пакетного ядра (Evolved Packet Core, EPC) в архитектуре стандарта «Долгосрочное развитие» (Long Term Evolution, LTE) включает в себя множество типов сетевых элементов. Сетевые элементы обмениваются данными друг с другом, используя интерфейсный протокол и, в основном, обеспечивают функции обработки и обмена голосовыми сообщениями и данными. Во время распределенного развертывания различных сетевых элементов каждый сетевой элемент обычно развертывается как множество серверов служб, установленных с одним и тем же сервисным программным обеспечением, и определяется механизм трафика. Таким образом, блок управления трафика может определить конкретный сервер службы, на который служба должна быть перенаправлена для обработки.
Когда требуется обновить сервисное программное обеспечение, системный менеджер в EPC системе управляет работой всех серверов служб, которые должны быть отключены от всех устройств пользователя, и затем управляет каждым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию. После успешного обновления сервисного программного обеспечения на всех серверах службы блок управления трафиком принимает запрос службы, отправленный устройством пользователя, и перенаправляет запрос службы на обновленный сервер службы.
Сервисное программное обеспечение второй версии не может быть верифицировано с использованием сервисных данных в существующей сети. Следовательно, потенциальная уязвимость в служебном программном обеспечении второй версии может быть выявлена только после того, как служебное программное обеспечение подключится к сети, что приведет к прерыванию всех служб. Кроме того, после прерывания службы служебное программное обеспечение на сервере службы также необходимо вернуть со второй версии к первой версии, и вызывается прерывание всех служб также в процессе возврата.
Сущность изобретения
Для решения технических задач, связанных с тем, что все службы прерываются из-за потенциальной уязвимости в процессе обновления, и все службы прерываются из-за возврата к пройдённой точке программы для повторного пуска, настоящее изобретение предоставляет способ и систему для обновления программного обеспечения.
Согласно первому аспекту, предоставляется способ обновления программного обеспечения. Способ применяется к EPC системе, EPC система включает в себя системный администратор, блок управления трафика, первый сервер службы и второй сервер службы, и первый сервер службы и второй сервер службы устанавливаются с сервисным программным обеспечением первой версии. Способ включает в себя: управление системным администратором вторым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию, управление блоком управления трафика для установки идентификатора потока службы, содержащегося в потоке данных службы на первом сервере службы для указания второго сервера службы и управления первым сервером службы для передачи на второй сервер службы потока данных службы, который включает в себя идентификатор потока службы и который находится на первом сервере службы; прием блоком управления трафика потока данных службы, отправленного устройством пользователя, и пересылку потока данных службы на второй сервер службы на основе идентификатора потока службы в потоке данных службы; и после того, как второй сервер службы становится стабильным, управление системным администратором первым сервером службы для обновления установленного сервисного программного обеспечения с первой версии га вторую версию.
Сервисное программное обеспечение, установленное на втором сервере службы, который обслуживает небольшое количество пользователей, обновляется. Таким образом, даже если обнаруживается потенциальная уязвимость в служебном программном обеспечении второй версии, прерываются только службы небольшого количества пользователей, обслуживаемых обновленным вторым сервером служб, и службы на первом сервере служб, который обслуживает большое количество пользователей по-прежнему нормально работают на первом сервере службы. Это позволяет избежать прерывания работы всех служб при потенциальной уязвимости после обновления служебного программного обеспечения, установленного на всех серверах служб, а также избежать прерывания всех служб во время возврата к пройдённой точке программы для повторного пуска, что обеспечивает непрерывность службы. После того как обновленный второй сервер службы становится стабильным, оставшиеся первые серверы службы постепенно контролируются для обновления установленного сервисного программного обеспечения. Это также может рассматриваться как проверка служебного программного обеспечения с использованием данных службы в существующей сети, что обеспечивает стабильность EPC системы.
Для некоторых устройств пользователя, которые не отключаются от сети, поток данных службы на первом сервере службы передается на обновленный второй сервер службы вместо того, чтобы отключать EPC систему от устройств пользователя и повторно подключать устройства пользователя к EPC системе. Это может обеспечить непрерывность службы и улучшить пользовательский опыт.
Идентификатор потока службы используется для указания, должен ли поток данных службы быть перенаправлен на первый сервер службы или обновленный второй сервер службы. Это может избежать увеличенного объема служебной сигнализации, вызванного, когда новая сигнализация специально установлена для передачи идентификатора потока службы, тем самым, уменьшая объем служебной сигнализации.
В возможном решении реализации способ дополнительно включает в себя: прием блока управления трафика запроса службы, отправленного устройством пользователя, и пересылку запроса службы на второй сервер службы; выделение вторым сервером службы идентификатора потока службы для запроса службы из устройства пользователя; и прием блоком управления трафика потока данных службы, отправленного устройством пользователя, и пересылку потока данных службы на второй сервер службы на основании идентификатора потока данных службы в потоке данных службы.
Запрос службы, отправленный устройством пользователя, которое впервые подключено к EPC системе, пересылается на обновленный второй сервер службы. Это может решить техническую задачу, заключающейся в том, что если запрос службы перенаправляется на первый сервер службы, поток данных службы, отправляемый устройством пользователя, должен быть передан в обновленный второй сервер службы, когда служебное программное обеспечение, установленное на первом сервере службы. впоследствии должно быть обновлено, тем самым, упростив схему обновления программного обеспечения.
Поток данных службы, отправляемый устройством пользователя, которое недавно подключено к EPC системе, пересылается на обновленный второй сервер службы, и затем переносится поток данных службы в первый сервер службы. Таким образом, потоки данных службы переносятся партиями. Это позволяет решить техническую задачу, связанную с тем, что все службы прерываются, когда потенциальная уязвимость обнаруживается после одновременного переноса всех потоков данных службы на обновленный второй сервер службы, а также позволяет решить техническую задачу, связанную с прерыванием всех служб во время возврата. После того, как обновленный второй сервер службы становится стабильным, потоки служебных данных, пересылаемые на обновленный второй сервер службы для обработки, постепенно увеличиваются, что обеспечивает стабильность EPC системы.
В возможном решении для реализации способ дополнительно включает в себя: получение вторым сервером службы интервала значений выделенного идентификатора потока службы, где интервалы значений идентификаторов потоков службы программного обеспечения службы разных версий различны; и выделение вторым сервером службы идентификатора потока службы для запроса службы из устройства пользователя включает в себя: выбор вторым сервером службы значения из интервала значений в качестве идентификатора потока службы.
В возможном решении реализации способ дополнительно включает в себя: получение блоком управления трафика информации атрибута устройства пользователя; и когда информация атрибута указывает, что устройство пользователя принадлежит к заданной группе пользователей, инициирование выполнения этапа пересылки запроса службы второму серверу службы; или, когда информация атрибута указывает, что устройство пользователя не принадлежит заданной группе пользователей, пересылку запроса службы первому серверу службы.
Когда заданная группа пользователей является дружественной группой пользователей, служебное программное обеспечение второй версии используется для изучения среди дружественных пользователей. Таким образом, даже если потенциальная уязвимость в служебном программном обеспечении второй версии выявляется и вызывает прерывание службы, дружественные пользователи не ссылаются на обеспечение доверия EPC системы.
В возможном решении для реализации, после управления системным администратором вторым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию, способ дополнительно включает в себя: после возникновения исключения во втором сервере службы, управление системным администратором вторым сервером службы для возврата установленного сервисного программного обеспечения из второй версии в первую версию.
Во-первых, когда исключение во втором сервере службы означает, что исключение возникает при обработке потока данных службы, второй сервер службы переносит поток данных службы на втором сервере службы в первый сервер службы, и системный администратор управляет вторым сервером службы для возврата установленного сервисного программного обеспечения со второй версии в первую версию.
Во-вторых, когда исключение во втором сервере службы означает, что второй сервер службы выходит из строя, системный администратор управляет вторым сервером службы, чтобы возвратить установленное сервисное программное обеспечение со второй версии к первой версии.
Поскольку только второй сервер службы управляется для возврата сервисного программного обеспечения к первой версии, скорость возврата может быть увеличена, не вызывая сбой.
В возможном варианте реализации запрос службы включает в себя запрос службы плоскости управления и запрос службы плоскости пользователя, и поток данных службы включает в себя поток данных службы плоскости управления и поток данных службы плоскости пользователя.
В возможном решении реализации протокол плоскости управления включает в себя протокол плоскости GTP-C управления туннелирования пакетной радиосвязи общего назначения GPRS, протокол управления передачей потоком SCTP, протокол IP PMIP прокси мобильного интернета, протокол приложения S1 интерфейса S1-AP и прикладная часть сети радиодоступа RANAP; и протокол плоскости пользователя включает в себя GPRS-протокол туннелирования плоскости пользователя GTP-U или IP.
Согласно второму аспекту, предоставляется усовершенствованная EPC система с пакетным ядром. EPC система включает в себя системный администратор, блок управления трафика, первый сервер службы и второй сервер службы, и первый сервер службы и второй сервер службы устанавливаются с сервисным программным обеспечением первой версии.
Системный администратор выполнен с возможностью управлять вторым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию, управления блоком управления трафиком, чтобы устанавливать идентификатор потока службы, содержащейся в потоке данных службы на первом сервере службы для указания второму серверу службы и управления первым сервером службы для передачи на второй сервер службы потока данных службы, который включает в себя идентификатор потока службы и который находится на первом сервере службы; блок управления трафика дополнительно выполнено с возможностью принимать поток данных службы, отправленного устройством пользователя, и пересылки потока данных службы на второй сервер службы на основе идентификатора потока службы в потоке данных службы; и системный администратор дополнительно выполнен с возможностью: после того, как второй сервер службы стал стабильным, управлять первым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию.
Сервисное программное обеспечение, установленное на втором сервере службы, который обслуживает небольшое количество пользователей, обновляется. Таким образом, даже если обнаруживается потенциальная уязвимость в служебном программном обеспечении второй версии, прерываются только службы небольшого количества пользователей, обслуживаемых обновленным вторым сервером служб, и службы на первом сервере служб, который обслуживает большое количество пользователей по-прежнему нормально работают на первом сервере службы. Это позволяет избежать прерывание работы всех служб при потенциальной уязвимости после обновления служебного программного обеспечения, установленного на всех серверах служб, и избежать прерывание всех служб во время возврата, что обеспечивает непрерывность службы. После того, как обновленный второй сервер службы становится стабильным, оставшиеся первые серверы службы постепенно контролируются для обновления установленного сервисного программного обеспечения. Это также может рассматриваться как верификация служебного программного обеспечения с использованием данных службы в существующей сети, что обеспечивает стабильность EPC системы.
Для некоторых устройств пользователя, которые не выходят в автономный режим, поток данных службы на первом сервере службы передается на обновленный второй сервер службы вместо отключения EPC системы от устройств пользователя и повторного подключения устройств пользователя к EPC системе. Это может обеспечить непрерывность службы и улучшить пользовательский опыт.
Идентификатор потока службы используется для указания, должен ли поток данных службы направлен на первый сервер службы или обновленный второй сервер службы. Это может решить техническую задачу большого объема служебной сигнализации, возникающего, когда новая сигнализация специально установлена для передачи идентификатора потока службы, тем самым, уменьшая объем служебной сигнализации.
В возможном решении по реализации блок управления трафика дополнительно выполнен с возможностью: получать информацию атрибута устройства пользователя; и когда информация атрибута указывает, что устройство пользователя принадлежит заданной группе пользователей, инициировать выполнение этапа пересылки запроса службы второму серверу службы; или когда информация атрибута указывает, что устройство пользователя не принадлежит заданной группе пользователей, блок управления трафика дополнительно выполнен с возможностью пересылать запрос службы в первый сервер службы.
Сервисное программное обеспечение второй версии используется для изучения среди дружественных пользователей. Таким образом, даже если потенциальная уязвимость в служебном программном обеспечении второй версии выявляется и вызывает прерывание службы, дружественные пользователи оказывают доверие к EPC системе.
В возможном решении для реализации второй сервер службы дополнительно выполнен с возможностью получать интервал значений выделенного идентификатора потока службы, где интервалы значений идентификаторов потока службы программного обеспечения службы разных версий различны; и второй сервер службы дополнительно выполнен с возможностью выбирать значение из интервала значений в качестве идентификатора потока службы.
В возможном варианте реализации блок управления трафика выполнен с возможностью принимать запрос службы, отправленный устройством пользователя, и пересылать запрос службы второму серверу службы; второй сервер службы выполнен с возможностью выделять идентификатор потока службы для запроса службы от устройства пользователя; и блок управления трафика дополнительно выполнен с возможностью принимать поток данных службы, отправленный устройством пользователя, пересылать поток данных службы на второй сервер службы на основе идентификатора потока службы в потоке данных службы и передачи на второй сервер службы, поток данных службы, который включает в себя идентификатор потока службы и который находится на первом сервере службы.
Запрос службы, отправленный устройством пользователя, которое впервые подключено к EPC системе, пересылается на обновленный второй сервер службы. Это может решить техническую задачу, заключающейся в том, что если запрос службы перенаправляется на первый сервер службы, поток данных службы, отправляемый устройством пользователя, должен быть перенесен на обновленный второй сервер службы, когда необходимо установить служебное программное обеспечение, установленное на первом сервере службы. впоследствии обновлено, тем самым, упростив схему обновления программного обеспечения.
Поток служебных данных, отправляемый устройством пользователя, которое недавно подключено к EPC системе, пересылается на обновленный второй сервер службы, и затем переносится поток данных службы на первый сервер службы. Таким образом, потоки данных службы переносятся партиями. Это позволяет решить техническую задачу, связанную с тем, что все службы прерываются, когда потенциальная уязвимость обнаруживается после одновременного переноса всех потоков данных службы на обновленный второй сервер службы, а также позволяет решить техническую задачу, связанную с прерыванием всех служб во время возврата. После того как обновленный второй сервер службы становится стабильным, потоки служебных данных, пересылаемые на обновленный второй сервер службы для обработки, постепенно увеличиваются, что обеспечивает стабильность EPC системы.
В возможном решении реализации второй сервер службы дополнительно выполнен с возможностью получать интервал значений выделенного идентификатора потока службы, где интервалы значений идентификаторов потока службы программного обеспечения службы разных версий различны; и второй сервер службы дополнительно выполнен с возможностью выбирать значения из интервала значений в качестве идентификатора потока службы.
В возможном решении по реализации блок управления трафика дополнительно выполнен с возможностью: получать информацию атрибута устройства пользователя; и когда информация атрибута указывает, что устройство пользователя принадлежит заданной группе пользователей, инициировать выполнение этапа пересылки запроса службы второму серверу службы; или когда информация атрибута указывает, что устройство пользователя не принадлежит заданной группе пользователей, пересылать запрос службы в первый сервер службы.
Когда заданная группа пользователей является дружественной группой пользователей, служебное программное обеспечение второй версии используется для ознакомления среди дружественных пользователей. Таким образом, даже если потенциальная уязвимость в служебном программном обеспечении второй версии выявляется и вызывает прерывание службы, дружественные пользователи оказывают доверие к EPC системе.
В возможном решении для реализации системный администратор дополнительно выполнен с возможностью: после управления вторым сервером службы обновлять установленное сервисное программное обеспечение с первой версии до второй версии и, если возникает исключение на втором сервере службы, управлять вторым сервером службы возвратить установленное сервисное программное обеспечение со второй версии к первой версии.
Во-первых, когда исключение во втором сервере службы означает, что исключение происходит при обработке потока данных службы, второй сервер службы дополнительно выполнен с возможностью миграции потока данных службы на втором сервере службы на первый сервер службы, и системный администратор дополнительно выполнен с возможностью управлять вторым сервером службы для возврата установленного сервисного программного обеспечения со второй версии к первой версии.
Во-вторых, когда исключение во втором сервере службы означает, что второй сервер службы выходит из строя, системный администратор дополнительно выполнен с возможностью управлять вторым сервером службы для возврата установленного сервисного программного обеспечения со второй версии к первой версии.
Поскольку только второй сервер службы управляется для возврата сервисного программного обеспечения к первой версии, скорость возврата можно увеличить, не вызывая сбоя.
В возможном варианте реализации запрос службы включает в себя запрос службы плоскости управления и запрос службы плоскости пользователя, и поток данных службы включает в себя поток данных для службы плоскости управления и поток данных для службы на плоскости пользователя.
В возможном решении для реализации протокол плоскости управления включает в себя протокол плоскости GTP-C управления туннелирования пакетной радиосвязи общего назначения GPRS, протокол управления передачей потоком SCTP, протокол IP PMIP прокси мобильного интернета, протокол приложения S1 интерфейса S1-AP и прикладная часть сети радиодоступа RANAP; и протокол плоскости пользователя включает в себя GPRS-протокол туннелирования плоскости пользователя GTP-U или IP.
Краткое описание чертежей
Фиг. 1 является структурной схемой LTE системы согласно примерному варианту осуществления настоящего изобретения;
фиг. 2 является структурной схемой сетевого элемента согласно примерному варианту осуществления настоящего изобретения;
фиг. 3 является схемой обновления программного обеспечения в соответствующей технологии в соответствии с примерным вариантом осуществления настоящего изобретения;
фиг. 4 является блок-схемой алгоритма способа обновления программного обеспечения согласно примерному варианту осуществления настоящего изобретения;
фиг. 5 является схемой распределения блоков управления трафика в протокольных блоках согласно примерному варианту осуществления настоящего изобретения;
фиг. 6 является схемой тракта обработки запроса службы, отправляемого устройством пользователя согласно примерному варианту осуществления настоящего изобретения;
фиг. 7 является схемой тракта обработки потока данных службы, отправленных устройством пользователя, согласно примерному варианту осуществления настоящего изобретения;
фиг. 8 является схемой обновления программного обеспечения в настоящем изобретении согласно примерному варианту осуществления настоящего изобретения; и
фиг. 9 является структурной схемой устройства обновления программного обеспечения согласно примерному варианту осуществления настоящего изобретения.
Описание вариантов осуществления
С целью более подробного описания задач, технических решений и преимуществ настоящего изобретения ниже дополнительно подробно описываются реализации настоящего изобретения со ссылкой на прилагаемые чертежи.
«Блок», упомянутый в данном описании, относится к функциональной структуре, полученной посредством логического разделения, и «блок» может быть реализован только аппаратными средствами или комбинацией аппаратного и программного обеспечения.
Фиг. 1 является схематической структурной схемой LTE системы 100 согласно примерному варианту осуществления настоящего изобретения. LTE система 100 включает в себя устройство пользователя (user equipment, сокращенно UE), развитую наземную сеть радиодоступа UMTS (Evolved UMTS Terrestrial Radio Access Network, UMTS, сокращенно E-UTRAN), наземную сеть радиодоступа UMTS (UMTS Terrestrial Radio Access Network, UTRAN для краткости), сеть радиодоступа GSM/EDGE (GSM/EDGE Radio Access Network, GERAN для краткости), EPC система и служба интернет-протокола (Internet Protocol, IP). EPC система включает в себя следующие сетевые элементы: объект сети управления мобильностью (Mobility Management Entity, MME для краткости), обслуживающий шлюз (Serving Gateway, S-GW для краткости), объект шлюза сети пакетной передачи данных (Packet Data Network Gateway, P-GW для краткости), функциональный блок политики и правил тарификации (Policy and Charging Rules Function, PCRF для краткости), домашний абонентский сервер (Home Subscriber Server, HSS для краткости), обслуживающий общий узел поддержки службы пакетной радиосвязи (Serving GPRS supporting node, сокращенно SGSN), регистр идентификации оборудования (Equipment Identity Register, EIR) и общее пространство поиска (Common Search Space, CSS).
rd
E-UTRAN выполнена с возможностью реализации функции, связанной с развитой радиосетью. MME выполнен с возможностью управлять мобильностью в плоскости управления, например, управлять контекстом пользователя и статусом мобильности, а также за распределение временных идентификаторов пользователя. S-GW является привязкой пользовательской плоскости между сетями доступа проекта партнерства 3-го поколения (3 Generation Partner Project, сокращенно 3GPP). P-GW является привязкой пользовательской плоскости между сетью доступа 3GPP и сетью доступа не 3GPP и является интерфейсом внешней сети пакетной передачи данных (Packet Data Network, сокращенно PDN). PCRF выполнена с возможностью формулировать правила управления политикой и выполнения тарификации на основе потока. HSS выполнен с возможностью хранить информацию о подписке пользователя. UE выполняет взаимодействие плоскости управления и плоскости пользователя с сетью эволюции архитектуры системы (SAE) через E-UTRAN. UTRAN и GERAN выполнены с возможностью реализации всех связанных с функций радиосвязи в существующей GPRS/UMTS сети. SGSN выполнен с возможностью реализации таких функций, как маршрутизация и пересылка, управление мобильностью, управление сеансами и хранение пользовательской информации в GPRS/UMTS сети.
Сетевые элементы связываются друг с другом с использованием протоколов и интерфейсов. За подробностями обращайтесь к интерфейсам и протоколам, показанным на фиг. 1. Протоколы плоскости управления включают в себя плоскость управления протоколом туннелирования GPRS (General Packet Radio Service Tunnel Protocol-Control, GTP-C), протокол передачи управления потоком (Stream Control Transmission Protocol, SCTP), прокси мобильный IP-адрес (Proxy Mobile Internet Протокол, PMIP) и протокол прикладного интерфейса S1 (S1 Application Protocol, S1-AP) и прикладная часть сети радиодоступа (Radio Access Network Application, RANAP). Протокол пользовательской плоскости включает в себя плоскость пользовательского протокола туннелирования GPRS (Generation Packet Radio Service Tunnel Protocol-User, GTP-U) или IP.
Реализована связь между различными сетевыми элементами. Дополнительно, каждый сетевой элемент в EPC системе может быть развернут как множество серверов служб. Все серверы служб установлены с одним и тем же сервисным программным обеспечением, чтобы предоставлять одинаковый сервис для устройства пользователя в разных областях, тем самым, реализуя распределенное развертывание. В этом случае системный администратор и блок управления трафика также должны быть расположены в EPC системе. Системный администратор выполнен с возможностью управлять каждым сетевым элементом в EPC системе, и блок управления трафика выполнен с возможностью определять конкретный сервер службы, на который направляется поток данных службы, полученный после отправки запроса службы.
Фиг. 2 является структурной схемой сетевого элемента 200 согласно другому примерному варианту осуществления настоящего изобретения. Сетевой элемент 200 включает в себя процессор 220 и беспроводной приемопередатчик 240, подключенный к процессору 220.
Беспроводной приемопередатчик 240 может включать в себя одну или несколько антенн, и антенна позволяет сетевому элементу 200 отправлять или принимать радиосигнал.
Беспроводной приемопередатчик 240 может быть соединен со схемой 260 связи. Схема 260 связи может выполнять различную обработку сигнала, принятого беспроводным приемопередатчиком 240 или отправленного беспроводным приемопередатчиком 240, например, модулировать сигнал, отправленный беспроводным приемопередатчиком 240, и демодулирует сигнал, принятый беспроводным приемопередатчиком 240. Во время фактической реализации схема 260 связи может включать в себя радиочастотную (radio frequency, RF) микросхему и микросхему основной полосы частот.
Схема 260 связи может быть соединена с процессором 220. Альтернативно, схема 260 связи может быть интегрирована в процессор 220. Процессор 220 является центром управления сетевого элемента. Процессор 220 может быть центральным процессором (Central Processing Unit, CPU), сетевым процессором (network processor, NP) или комбинацией CPU и NP. Процессор 220 может дополнительно включать в себя аппаратную микросхему. Аппаратная микросхема может быть специализированной интегральной схемой (application-specific integrated circuit, ASIC), программируемым логическим устройством (programmable logic device, PLD) или их комбинацией. PLD может представлять собой комплексное программируемое логическое устройство (Complex programmable logic device, CPLD), программируемую пользователем полевую матрицу (field-programmable gate array, FPGA), логику универсального массива (generic array logic, GAL) или их комбинацию Память 280 соединена с процессором 220 с помощью шины или иным образом. Память 280 может быть энергозависимой памятью (volatile memory), энергонезависимой памятью (non-volatile memory) или их комбинацией. Энергозависимая память может быть оперативной памятью (random-access memory, RAM), например, статической памятью с произвольным доступом (static random-access memory, SRAM) или динамической памятью с произвольным доступом (dynamic random-access memory, DRAM). Энергонезависимая память может представлять собой постоянное запоминающее устройство (read only memory, ROM), например, программируемое постоянное запоминающее устройство (programmable read only memory, PROM), стираемое программируемое постоянное запоминающее устройство (erasable programmable read only memory, EPROM) или электрически стираемое программируемое постоянное запоминающее устройство (electrically erasable programmable read only memory, EEPROM). Энергонезависимая память может альтернативно представлять собой флэш-память (flash memory) или магнитную память, например, магнитную ленту (magnetic tape), дискету (floppy disk) или жесткий диск. Энергонезависимая память альтернативно может быть компакт-диском.
Ссылаясь на фиг. 3, в соответствующей технологии потоки служебных данных, отправляемые всеми устройствами пользователя, все одновременно передаются на обновленный сервер службы, что приводит к ситуации, при которой все службы прерываются из-за потенциальной уязвимости в процессе обновления и все службы прерываются из-за возврата. Для решения вышеуказанной технической задачи в настоящем изобретении серверы служб обновляются пакетами, а затем потоки данных служб, отправленные устройствами пользователя, переносят на обновленный сервер службы партиями. За подробностями обращайтесь к описаниям в следующих вариантах осуществления.
Следует отметить, что одно устройство сетевого элемента может включать в себя множество серверов служб, и серверы служб могут обновляться партиями согласно пропорции. Например, серверы службы с фиксированной пропорцией обновляются каждый раз, например, на 10%. В качестве альтернативы пропорция серверов службы в каждом обновлении постепенно увеличивается. Например, пропорция серверов службы в первом обновлении составляет 5%, и пропорция серверов службы во втором обновлении составляет 10%. Это не ограничено в этом варианте осуществления. Для простоты описания, что только два сервисных сервера обновляются, используется в качестве примера в следующих вариантах осуществления. Сервер службы, который обновляется первым, упоминается как второй сервер службы, и сервер службы, который обновляется позже, упоминается как первый сервер службы.
На фиг. 4 показана блок-схема алгоритма способа обновления программного обеспечения согласно примерному варианту осуществления настоящего изобретения. В этом варианте осуществления способ применяется к EPC системе, показанной на фиг. 1. В этом варианте осуществления используют только один первый сервер службы и один второй сервер службы в качестве примера для описания. Способ включает в себя следующие несколько этапов.
Этап 401. Системный администратор управляет вторым сервером службы, чтобы обновить установленное сервисное программное обеспечение с первой версии на вторую версию.
В этом варианте осуществления версия служебного программного обеспечения перед обновлением упоминается как первая версия, и версия служебного программного обеспечения после обновления упоминается как вторая версия.
Системный администратор может случайным образом выбрать один из двух серверов службы в качестве второго сервера службы и напрямую управлять вторым сервером службы, чтобы обновить установленное сервисное программное обеспечение с первой версии на вторую версию. Однако, когда второй сервер службы обрабатывает поток служебных данных, отправленный устройством пользователя, если сервисное программное обеспечение на втором сервере службы необходимо обновить, EPC систему необходимо отключить от устройства пользователя, чтобы побудить устройство пользователя получить в автономном режиме, влияя на пользовательский опыт. Следовательно, в возможной реализации системный администратор может выбрать сервер службы в состоянии ожидания в качестве второго сервисного сервера и управлять вторым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию. Сервер службы, находящийся в состоянии ожидания, означает, что сервер службы не обрабатывает поток данных службы или обрабатывает небольшое количество потоков служебных данных.
В реализации администратор системы может отправлять инструкцию обновления на второй сервер службы. После получения инструкции по обновлению второй сервер службы получает и устанавливает сервисное программное обеспечение второй версии и обновляет сервисное программное обеспечение с первой версии на вторую версию. Второй сервер службы, описанный ниже, является вторым сервером службы, установленного сервисного программного обеспечения которого обновлено до второй версии.
Этап 402. Блок управления трафика принимает запрос службы, отправленный устройством пользователя, и направляет запрос службы второму серверу службы.
В этом случае устройство пользователя является устройством пользователя, которое подключается к EPC системе впервые. Например, устройство пользователя может быть устройством пользователя, которое снова подключается к сети после выхода из сети. После того, как устройство пользователя отключается, поток служебных данных, который ранее отправлялся устройством пользователя и который перенаправляется блоком управления трафика на первый сервер службы, удаляется.
После приема запроса службы блок управления трафика анализирует запрос службы. Когда результатом анализа является новая пользовательская сигнализация или начальный запрос доступа службы, блок управления трафика определяет, что устройство пользователя является устройством пользователя, которое подключено к EPC системе в первый раз, и отправляет запрос службы второму серверу службы. Запрос службы включает в себя запрос службы плоскости управления и запрос службы плоскости пользователя. Это может решить техническую задачу, заключающейся в том, что если запрос службы перенаправляется на первый сервер службы, поток данных службы, отправляемый устройством пользователя, должен быть перенесен на обновленный второй сервер службы, когда необходимо установить служебное программное обеспечение, установленное на первом сервере службы. впоследствии обновлено, тем самым, упростив схему обновления программного обеспечения.
Возможно, блок управления трафика получает информацию атрибута устройства пользователя; и когда информация атрибута указывает, что устройство пользователя принадлежит заданной группе пользователей, блок управления трафика инициирует выполнение этапа пересылки запроса службы второму серверу службы; или, когда информация атрибута указывает, что устройство пользователя не принадлежит заданной группе пользователей, блок управления трафика пересылает запрос службы первому серверу службы. В этом случае, когда заданная группа пользователей является дружественной группой пользователей, служебное программное обеспечение второй версии используется для ознакомления среди дружественных пользователей. Таким образом, даже если выявляется потенциальная уязвимость в служебном программном обеспечении второй версии и вызывает прерывание службы, дружественные пользователи обеспечивают доверие к EPC системе.
В этом варианте осуществления EPC система включает в себя логическое средство определения трафика. Логическое средство определения трафика может быть развернуто распределенным способом. Например, средство определения трафика развертывается на балансировщике нагрузки и протокольном блоке или в другом месте. Ссылаясь на фиг. 5, средство определения трафика представлено круглым кольцом на фиг. 5. Если быть точным, то один блок управления трафика расположен на каждом протокольном блоке.
Ссылаясь на фиг. 6, пример, в котором первый сервер службы соответствует ранее использованному блоку управления трафика, второй сервер службы соответствует новому блоку управления трафика, и каждый протокольный блок соответствует одному блоку управления трафика, используется для описания. DB (ранее использованная) является сервисным программным обеспечением для хранения базы данных первой версии, и DB (новая) является сервисным программным обеспечением для хранения базы данных второй версии. Блок управления трафика является блоком управления трафика, и каждый сервер службы включает в себя протокольный блок Diameter/SCTP и GTP-C. После приема запроса службы ранее использованный блок управления трафика не может проанализировать запрос службы и перенаправляет запрос службы в протокольный блок GTP-C на первом сервере службы. Протокольный блок GTP-C узнает, анализируя, что запрос службы является сигнализацией нового пользователя или первоначальным запросом на доступ к службе, определяет, что устройство пользователя подключено к EPC системе в первый раз, и перенаправляет запрос службы в новый блок управления трафика с помощью блока управления трафика протокольного блока GTP-C. Новый блок управления трафика направляет запрос службы в протокольный блок GTP-C на втором сервере службы, и протокольный блок GTP-C отправляет результат обработки новому блоку управления трафика. Если имеется только один канал передачи данных, новый блок управления трафика отправляет результат обработки ранее использованному блоку управления трафика, и ранее использованный блок управления трафика выводит результат обработки. Если имеется множество каналов передачи данных, новый блок управления трафика может выводить результат обработки через другую линию связи. Вышеупомянутый процесс обработки может быть представлен с использованием стрелок на фиг. 6.
Этап 403. Второй сервер службы выделяет идентификатор потока службы для запроса службы из устройства пользователя.
Идентификатор потока службы может переноситься в потоке данных службы для передачи. Это может решить техническую задачу большого объема служебной сигнализации, возникающего, когда новая сигнализация специально установлена для передачи идентификатора потока службы, тем самым, уменьшая объем служебной сигнализации.
Перед выделением идентификатора потока службы для запроса службы от устройства пользователя второй сервер службы получает интервал значений выделенного идентификатора потока службы. Интервалы значений идентификаторов потока службы служебного программного обеспечения разных версий различны. Здесь идентификатор потока службы также может упоминаться как идентификатор протокола.
В этом случае второй сервер службы выбирает значение из интервала значений в качестве идентификатора потока службы.
Далее описывается идентификатор потока службы. Идентификаторы потока службы GTP-C и GTP-U являются TEID; идентификатор потока службы PMIP является MNNAI; идентификатор потока службы SCTP является пятикратный умножитель или vTag; идентификатор потока службы IP (Diameter) является пятикратный умножитель; идентификатор потока службы S1-AP является идентификатором S1-AP; и идентификатор потока службы RANAP является идентификатором RANAP.
Интервал значений идентификатора потока службы может быть назначен системным администратором второму серверу службы или может быть предварительно сконфигурирован. Это не ограничено в этом варианте осуществления.
В этом варианте осуществления блок управления трафика дополнительно должно быть уведомлено об интервале значений идентификатора потока службы, соответствующего второму серверу службы. Поскольку первый сервер службы хранит интервал значений идентификатора потока службы, соответствующего первому серверу службы, и интервалы значений идентификаторов потока службы программного обеспечения службы разных версий различны, идентификатор потока службы, выделенный вторым сервером службы для запроса службы из устройства пользователя определенно отличается от идентификатора потока службы, выделенного первым сервером службы для запроса службы из устройства пользователя. На основе идентификатора потока службы блок управления трафика может определить, следует ли пересылать поток данных службы первому серверу службы или второму серверу службы.
Этап 404. Блок управления трафика принимает поток данных службы из устройства пользователя и направляет поток данных службы на второй сервер службы на основании идентификатора потока службы в потоке данных службы.
В этом случае устройство пользователя подключается к EPC системе не в первый раз, и ранее отправленный запрос службы перенаправляется устройству пользователя, обслуживаемому вторым сервером службы.
Поток данных службы включает в себя поток данных службы плоскости управления и поток данных службы плоскости пользователя.
Контекст новых данных регистрации пользователя или нового пакета плоскости управления генерируется на втором сервере службы с использованием потока данных службы и плоскости управления, и контекст новых данных регистрации пользователя или нового пакета плоскости пользователя генерируется на втором сервере службы с использованием потока данных службы плоскости пользователя.
Обратимся к фиг. 7. Фиг. 7 отличается от фиг. 6 тем, что принимается поток данных службы. Ранее использованный блок управления трафика может идентифицировать идентификатор потока службы и определять, на основе идентификатора потока службы, пересылку потока данных службы в протокольный блок GTP-C на втором сервере службы. Протокольный блок GTP-C отправляет результат обработки новому блоку управления трафика. Если имеется только один канал передачи данных, новый блок управления трафика отправляет результат обработки ранее использованному блоку управления трафика, и ранее использованный блок управления трафика выводит результат обработки. Если имеется множество каналов передачи данных, новый блок управления трафика может выводить результат обработки через другую линии связи. Вышеупомянутый процесс обработки может быть представлен с использованием стрелок на фиг. 7.
Этапы с 402 по 404 обеспечивают способ обработки, соответствующий устройству пользователя, которое снова подключается к сети после выхода из EPC системы в автономном режиме. Для некоторых устройств пользователя, которые не отключаются, EPC система может быть принудительно отключена от этих устройств пользователя, чтобы вывести эти устройства пользователя в автономный режим. Однако это вызывает прерывание службы и влияет на взаимодействие с пользователем. Следовательно, передача потока данных службы может быть реализована с использованием этапов 405 и 406. Последовательность выполнения этапов 402-404 и выполнения этапов 405 и 406 не ограничена в этом варианте осуществления.
Этап 405. Системный администратор управляет блоком управления трафика, чтобы установить идентификатор потока службы, включенный в поток данных службы на первом сервере службы, для указания второго сервера службы, и управляет первым сервером службы для передачи во второй сервер службы поток данных службы, который включает в себя идентификатор потока службы и который находится на первом сервере службы.
Передача потока данных службы означает передачу контекста пакета плоскости управления и контекста пакета пользовательской плоскости на первом сервере службы на второй сервер службы. Возможно, переданный контекст может быть дополнительно преобразован, так что контекст применим ко второму серверу службы.
Для некоторых устройств пользователя, которые не выходят в автономный режим, поток данных службы на первом сервере службы передается на второй сервер службы вместо того, чтобы отключать EPC систему от устройств пользователя и повторно подключать устройства пользователя к EPC системе. Это может обеспечить непрерывность службы и улучшить пользовательский опыт.
Этап 406. Блок управления трафика принимает поток данных службы, отправленный устройством пользователя, и направляет поток данных службы на второй сервер службы на основании идентификатора потока службы в потоке данных службы.
В этом случае устройство пользователя является устройством пользователя, отправляющим поток служебных данных, который впоследствии передается с первого сервера службы на второй сервер службы.
Возможно, этапы 405 и 406 могут дополнительно выполняться множество раз, чтобы передавать потоки данных службы на первом сервере службы второму серверу службы пакетами. Ссылаясь на фиг. 8 потоки данных службы передаются в пяти пакетах. Например, потоки данных службы 10% пользователей передаются в первом пакете, потоки данных службы 20% пользователей передаются во втором пакете, потоки данных службы 40% пользователей передаются в третьем пакете, потоки данных службы 60% пользователей передаются в четвертой партии и потоки данных службы 100% пользователей передаются во второй партии.
Поток служебных данных, отправляемый устройством пользователя, которое вновь подключено к EPC системе, пересылается на второй сервер службы, и затем передают поток данных службы на первом сервере службы. Таким образом, потоки данных службы переносятся партиями. Это позволяет решить техническую задачу, связанную с тем, что все службы прерываются, когда потенциальная уязвимость обнаруживается после одновременного переноса всех потоков данных службы на второй сервер службы, а также позволяет избежать проблемы, связанной с прерыванием всех служб во время возврата.
Этап 407. После того как второй сервер службы становится стабильным, системный администратор управляет первым сервером службы обновить установленное сервисное программное обеспечение с первой версии на вторую версию.
То, что второй сервер службы становится стабильным, означает, что индикаторы на втором сервере службы являются нормальными и стабильными в процессе обработки запроса службы и потока данных службы.
После того, как второй сервер службы становится стабильным, системный администратор может напрямую управлять первым сервером службы, чтобы обновить установленное сервисное программное обеспечение с первой версии на вторую версию. Однако, когда первый сервер службы обрабатывает поток служебных данных, отправленный устройством пользователя, если сервисное программное обеспечение на первом сервере службы необходимо обновить, EPC систему необходимо отключить от устройства пользователя, чтобы побудить устройство пользователя получить в автономном режиме, влияя на пользовательский опыт. Следовательно, в возможной реализации после того, как все потоки данных службы на первом сервере службы переданы или удалены, то есть, они находятся в состоянии ожидания, системный администратор может управлять первым сервером службы для обновления установленного сервисного программного обеспечения с первой версии на вторую версию.
Процесс обновления сервисного программного обеспечения, установленного на первом сервере службы, такой же, как и у сервисного программного обеспечения, установленного на втором сервере службы. За подробностями обращайтесь к описанию на этапе 401. Подробности здесь снова не описываются.
Этап 408. После того, как на втором сервере службы происходит исключение, системный администратор управляет вторым сервисным сервером, чтобы возвратить установленное сервисное программное обеспечение со второй версии к первой версии.
После того, как второй сервер службы выходит из строя из-за потенциальной уязвимости в сервисном программном обеспечении второй версии, когда исключение во втором сервере службы означает, что исключение возникает при обработке потока сервисных данных, поток сервисных данных может быть дополнительно передан. В этом случае второй сервер службы переносит поток сервисных данных на втором сервере службы на первый сервер службы, и системный менеджер управляет вторым сервисным сервером, чтобы возвратить установленное сервисное программное обеспечение со второй версии к первой версии. Когда исключение на втором сервере службы означает, что второй сервер службы выходит из строя, поток данных сервиса не может быть перенесен. В этом случае устройство пользователя, обслуживаемое вторым сервером службы, отключается от EPC системы, то есть, устройство пользователя отключается. Когда устройство пользователя повторно подключается к EPC системе, запрос службы поток данных службы, которые отправляются устройством пользователя, перенаправляются блоком управления трафика на первый сервер службы.
Поскольку только второй сервер службы управляется для возврата сервисного программного обеспечения к первой версии, скорость возврата можно увеличить, не вызывая сбоя.
В заключение, согласно способу обновления программного обеспечения, предусмотренному в этом варианте осуществления настоящего изобретения, обновляется служебное программное обеспечение, установленное на втором сервере службы, который обслуживает небольшое количество пользователей. Таким образом, даже если обнаруживается потенциальная уязвимость в служебном программном обеспечении второй версии, только службы на обновленном втором служебном сервере прерываются, и службы на первом сервере службы, обслуживающем большое количество пользователей, по-прежнему работают в обычном режиме. Это позволяет решить техническую задачу, связанную с прерыванием работы всех служб при потенциальной уязвимости после обновления служебного программного обеспечения, установленного на всех серверах служб, а также избежать сбоя работы, вызванного прерыванием всех служб во время возврата, что обеспечивает непрерывность службы. После того, как обновленный второй сервер службы становится стабильным, оставшиеся первые сервисные серверы постепенно управляются для обновления установленного сервисного программного обеспечения. Это также может рассматриваться как верификация служебного программного обеспечения с использованием данных службы в существующей сети, что обеспечивает стабильность EPC системы.
Для некоторых устройств пользователя, которые не отключаются, поток данных службы на первом сервере службы передается на обновленный второй сервер службы вместо отключения EPC системы от устройств пользователя и повторного подключения устройств пользователя к EPC системе. Это может обеспечить непрерывность службы и улучшить пользовательский опыт.
Запрос службы, отправленный устройством пользователя, которое впервые подключено к EPC системе, направляется на обновленный второй сервер службы. Это может решить техническую задачу, заключающейся в том, что если запрос службы перенаправляется на первый сервер службы, поток данных службы, отправляемый устройством пользователя, должен быть перенесен на обновленный второй сервер службы, когда необходимо установить служебное программное обеспечение, установленное на первом сервере службы. впоследствии обновлено, тем самым, упростив схему обновления программного обеспечения.
Идентификатор потока службы используется для указания, должен ли поток данных службы передаваться на первый сервер службы или обновленный второй сервер службы. Это может предотвратить использование большего объема служебной сигнализации, возникающей, когда новая сигнализация специально установлена для передачи идентификатора потока службы, тем самым, снижая объем служебной сигнализации.
Сервисное программное обеспечение второй версии используется для ознакомления среди дружелюбных пользователей. Таким образом, даже если потенциальная уязвимость в служебном программном обеспечении второй версии выявляется и вызывает прерывание службы, дружественные пользователи оказывают доверие EPC системе.
Поток служебных данных, отправляемый устройством пользователя, которое вновь подключено к EPC системе, пересылается на обновленный второй сервер службы, и затем переносится поток данных службы на первый сервер службы. Таким образом, потоки данных службы переносятся партиями. Это позволяет решить техническую задачу, заключающуюся в том, что все службы прерываются, когда потенциальная уязвимость обнаруживается после одновременного переноса всех потоков данных службы на обновленный второй сервер службы, и позволяет предотвратить прерывание всех служб во время возврата. После того как обновленный второй сервер службы становится стабильным, потоки служебных данных, пересылаемые на обновленный второй сервер службы для обработки, постепенно увеличиваются, что обеспечивает стабильность EPC системы.
Поскольку для возврата сервисного программного обеспечения до первой версии используют только второй сервер службы, скорость возврата может быть увеличена без возникновения сбоя. Фиг. 9 является блок-схемой EPC системы согласно варианту осуществления настоящего изобретения. EPC система может включать в себя системный администратор, блок управления трафика, первый сервер службы и второй сервер службы.
Системный администратор выполнен с возможностью реализации функций этапов 401, 405, 407 и 408.
Блок управления трафика выполнен с возможностью реализации функций этапов 402 и 404, функции установки идентификатора потока службы на этапе 405 и функции этапа 406.
Первый сервер службы выполнен с возможностью реализации функции передачи потока сервисных данных на этапе 405 и функции обновления программного обеспечения на этапе 407.
Второй сервер службы выполнен с возможностью реализации функции обновления программного обеспечения на этапе 401, функции этапа 403 и функции возврата программного обеспечения на этапе 408.
Для связанных деталей, обратитесь к варианту осуществления способа на фиг. 4.
Специалист в данной области техники может знать, что блоки и этапы алгоритма в примерах, описанных со ссылкой на варианты осуществления, раскрытые в этом описании, могут быть реализованы посредством электронного аппаратного обеспечения или комбинации компьютерного программного обеспечения и электронного аппаратного обеспечения. Выполнение функций аппаратным или программным обеспечением зависит от конкретных приложений и конструктивных ограничений технических решений.
Специалист в данной области техники может четко понимать, что в целях удобного и краткого описания подробных рабочих процессов вышеупомянутой системы, устройства и блока ссылаются на соответствующие процессы в вышеупомянутых вариантах осуществления способа, и подробности не описано здесь снова.
В вариантах осуществления, предоставленных в настоящем изобретении, следует понимать, что раскрытое устройство и способ могут быть реализованы другими способами. Например, описанные варианты осуществления устройства являются просто примерами. Например, разделение на блоки может быть просто разделением логической функции и может быть разделением другим способом во время фактической реализации. Например, множество блоков или компонентов могут быть объединены или интегрированы в другую систему, или некоторые функции могут игнорироваться или не выполняться.
Блоки, описанные как отдельные части, могут быть или не быть физически отдельными, и части, отображаемые как блоки, могут быть или не быть физическими блоками, могут быть расположены в одной позиции или могут быть распределены по множеству сетевых блоков. Некоторые или все блоки могут быть выбраны на основе фактических требований для достижения целей решений вариантов осуществления.
Вышеприведенные описания являются просто конкретными реализациями настоящего изобретения, но область защиты настоящего изобретения не ограничивается этим. Любое изменение или замена, легко обнаруживаемая специалистом в данной области техники в рамках технического объема, раскрытого в настоящей изобретении, должны находиться в рамках объема защиты настоящего изобретения. Следовательно, объем защиты настоящего изобретения должен быть предметом защиты формулы изобретения.