РАСШИРЕННОЕ ДИНАМИЧЕСКОЕ СЖАТИЕ
ENHANCED DYNAMIC COMPRESSION

Область техники, к которой относится изобретение
Настоящее изобретение относится к сокращению данных, передаваемых в сеансах связи передачи данных. Изобретение более конкретно относится к способам сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сжатием в сеансах связи, вовлекающих оконечный терминал, устройству связи для выполнения упомянутого сокращения, а также компьютерным программным продуктам для сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером.
Описание уровня техники
В последние годы появилось большое множество путей для пользователей различных типов оконечных терминалов наслаждаться мультимедийными сеансами связи, которые обычно основаны на IP. Такие сеансы связи включают в себя сеансы связи VoIP (Передачу речи по IP), но также могут быть реализованы и другие типы сеансов связи, подобные сеансам видеосвязи и "Нажми и говори". Одним из стандартов, который был разработан для таких IP-основанных сеансов связи, является стандарт SIP (Протокол инициирования сеанса связи). Этот стандарт описан, например, в Rosenberg, J. et al in SIP: Session Initiation Protocol, IETF RFC 3261, June 2002.
Однако при использовании такого протокола количество передаваемых данных является очень большим, что является проблематичным, если используются беспроводные сети, имеющие ограниченную полосу частот.
Из-за этого развивались различные способы сжатия данных, передаваемых согласно такому протоколу.
Одной из методик сжатия, разработанных для SIP, является SigComp. SigComp описан более подробно в Price, R. et. al. "Signaling Compression (SigComp)", IETF RFC 3320, January 2003. SigComp является важной методикой минимизации размера передаваемых сообщений SIP по радиоинтерфейсу сотовой сети связи. Это важно прежде всего по двум причинам; размер сообщений приводит к длительным временам передачи в случае линий связи с низкой скоростью передачи данных, что будет негативно воздействовать, например, на времена установки услуг IMS (Подсистемы IP мультимедиа). Большой размер несжатых сообщений также приводит к уменьшенной емкости сети, что также является негативным фактором, который нужно избежать насколько это возможно.
Чтобы сделать сжатие эффективным, переменное содержимое сообщений SIP должно использоваться некоторым способом. Имеется множество способов сделать это, и наиболее важными методами являются статические словари, определенные пользователем словари (USD) и динамическое сжатие.
Статические словари SIP описаны Garcia-Martin, M. et. al. in "The Session Initiation Protocol (SIP) and Session Description Protocol (SDP) static dictionary for Signaling Compression (SigComp)", IETF RFC 3485, February 2003. Статическая библиотека прежде всего полезна для сжатия начального сообщения SIP, после того как оконечный терминал регистрирует самого себя в сетевом функциональном средстве, часто называемом P-CSCF (проксифункциональное средство управления сеансом связи вызова). Однако SIP статический словарь сам по себе не будет приводить к удовлетворительной эффективности сжатия, необходимы также другие средства.
В документе "SigComp-Extended Operations" by Hannu, H. et. al., "Signaling Compression (SigComp) Extended Operations", IETF RFC 3321, January 2003 вводятся концепция USD (определенный пользователем словарь) и межсеансные состояния. Определенный пользователем словарь является статическим словарем, который является специфичным для индивидуального пользователя. Содержание USD не стандартизировано, что означает, что оно должно быть послано от стороны сжатия к стороне декомпрессии до его использования. В случае, если USD является большим, это может потребовать нескольких сообщений для передачи. Это ограничивает полезность словаря для начального сообщения.
Межсеансное состояние описано как продление срока использования SigComp-отделения, которое является областью памяти, назначенной пользователю. Однако это состояние не является дополнительно определенным и это делает невозможным его использование, так как необходимо знать две оконечные точки SigComp, точнее, насколько долгим является срок использования отделения. Неудача при выполнении этого приведет к потере синхронизации и сбою при декомпрессии.
В 3GPP TS 24.229, IP Multimedia Call Control Protocol based on Session Initiation Protocol (SIP) and Session Description Protocol (SDP), Release 6, V6.6.0, (2005-03) В 3GPP TS 24.229 сроком использования отделения по определению является время, когда пользователь зарегистрирован, то есть отделение открывается, когда пользователь регистрируется, и закрывается, когда для пользователя отменяется регистрация. Любое отклонение от этого (принципа) вызовет потерю синхронизации и сбой декомпрессии.
Наиболее эффективная методика получения высокого уровня эффективности сжатия должна использовать динамическое сжатие. Динамическое сжатие получают посредством сохранения состояний, например содержания сообщения, и использования его в качестве словаря при сжатии последующих сообщений. Отделение тогда открывается для оконечного терминала для сохранения состояний. Повторяя этот процесс для добавления сообщений или их части к состоянию, формируют эффективный словарь. Кроме того, он будет приспосабливаться к долговременным изменениям в сообщениях SIP, следующих из новых услуг или потоков сообщения.
Однако динамическое сжатие страдает от одного недостатка; оно не эффективно, пока достаточное количество сообщений не было сохранено в состоянии. Количество сообщений не важно, но сообщения должны быть достаточно разнообразны, чтобы фиксировать различия, которые являются типичными для сообщений SIP. Основная проблема состоит в том, что словарь должен быть построен заново каждый раз, когда отделение открывается, так как состояния в отделении всегда удаляются, когда отделение закрывается. Для типичного пользователя это означает, что каждый раз, когда терминал включается и регистрируется в сетевом сервере, эффективность сжатия является низкой, пока отделение не будет заполнено полезными данными. В качестве следствия установка первого вызова будет медленной из-за неэффективного сжатия.
Использование USD страдает от того же недостатка, то есть не имеется никакого USD, доступного для первого(ых) сообщения(й). После загрузки следует ожидать, что эффективность сжатия USD будет удовлетворительной.
Имеется таким образом потребность в ускорении динамического сжатия так, чтобы оно функционировало хорошо даже на начальных стадиях его использования при выполнении новой регистрации оконечного терминала в сетевом сервере.
Сущность изобретения
Настоящее изобретение поэтому посвящено решению проблемы ускорения динамического сжатия, так чтобы оно функционировало хорошо даже на начальных стадиях его использования при повторной регистрации оконечного терминала в сетевом сервере, управляющем сжатием в сеансах связи, вовлекающих (в работу) оконечный терминал.
Это обычно решается посредством сохранения состояний, относящихся к терминалу, каждый раз когда для оконечного терминала отменяется регистрация из сетевого сервера, управляющего сеансами связи, вовлекающими оконечный терминал.
Одна задача настоящего изобретения таким образом направлена на обеспечение способа сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сеансами связи, вовлекающими оконечный терминал.
Эта задача согласно первому аспекту настоящего изобретения достигается посредством способа сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сжатием в сеансах связи, вовлекающих оконечный терминал, содержащего этапы: создание по меньшей мере одного состояния, относящегося к оконечному терминалу, который регистрируется в первом сетевом сервере, в течение первого сеанса связи между оконечным терминалом и первым сетевым сервером, причем упомянутое состояние посвящено (относится к) оконечному терминалу, сжатие данных для передачи между оконечным терминалом и упомянутым сервером на основании упомянутого состояния по меньшей мере в первом сеансе связи, сохранение упомянутого состояния для более позднего использования, когда для оконечного терминала удаляется регистрация из первого сетевого сервера, и при последующей регистрации оконечного терминала в сетевом сервере для второго сеанса связи, вовлекающего оконечный терминал, сжатие данных для передачи между оконечным терминалом и сетевым сервером во втором сеансе связи на основании упомянутого сохраненного состояния.
Эта задача согласно второму аспекту настоящего изобретения также достигается посредством способа сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сжатием в сеансах связи, вовлекающих оконечный терминал, содержащего этапы: получение по меньшей мере одного состояния, относящегося к оконечному терминалу, который регистрируется в первом сетевом сервере, в течение первого сеанса связи между оконечным терминалом и первым сетевым сервером, причем упомянутое состояние относится к оконечному терминалу, декомпрессия данных, передаваемых между оконечным терминалом и сервером, используя упомянутое состояние по меньшей мере в первом сеансе связи, сохранение упомянутого состояния для более позднего использования, когда для оконечного терминала удаляется регистрация из сетевого сервера, и при последующей регистрации оконечного терминала в сетевом сервере для второго сеанса связи - декомпрессию данных, передаваемых между оконечным терминалом и сетевым сервером, используя упомянутое состояние.
Другая задача настоящего изобретения посвящена обеспечению устройства связи, которое уменьшает объем данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сжатием в сеансах связи, вовлекающих оконечный терминал.
Эта задача согласно третьему аспекту настоящего изобретения достигается посредством устройства связи, содержащего: интерфейсный модуль для передачи данных между оконечным терминалом и первым сетевым сервером, модуль сжатия для сжатия данных, которые должны быть переданы через интерфейсный модуль между оконечным терминалом и первым сетевым сервером, и блок управления, выполненный с возможностью создавать по меньшей мере одно состояние, относящееся к оконечному терминалу, который зарегистрирован в первом сетевом сервере, в течение первого сеанса связи между оконечным терминалом и первым сетевым сервером, причем упомянутое состояние относится к оконечному терминалу, выдавать команды модулю сжатия, чтобы сжать данные, которые должны быть переданы между оконечным терминалом и первым сетевым сервером на основании упомянутого состояния по меньшей мере в первом сеансе связи, сохранять упомянутое состояние для более позднего использования, когда для оконечного терминала удаляется регистрация из первого сетевого сервера, и при последующей регистрации оконечного терминала в сетевом сервере для второго сеанса связи, вовлекающего оконечный терминал, выдавать команды модулю сжатия - сжать данные, которые должны быть переданы между оконечным терминалом и первым сетевым сервером во втором сеансе связи на основании упомянутого состояния.
Эта задача согласно четвертому аспекту настоящего изобретения также достигается посредством устройства связи, содержащего: интерфейсный модуль для передачи данных между оконечным терминалом и первым сетевым сервером, модуль декомпрессии для декомпрессии данных, передаваемых через интерфейсный модуль между оконечным терминалом и сетевым сервером, и блок управления, выполненный с возможностью получать по меньшей мере одно состояние, относящееся к оконечному терминалу, который зарегистрирован в первом сетевом сервере, в течение первого сеанса связи между оконечным терминалом и первым сетевым сервером, причем упомянутое состояние относится к оконечному терминалу, выдавать команду модулю декомпрессии - декомпрессировать данные, передаваемые между оконечным терминалом и упомянутым сервером на основании упомянутого состояния по меньшей мере в первом сеансе связи, сохранять упомянутое состояние для более позднего использования, когда для оконечного терминала удаляется регистрация из первого сетевого сервера, и после последующей регистрации оконечного терминала в первом сетевом сервере для второго сеанса связи между оконечным терминалом и сетевым сервером, выдавать команды модулю декомпрессии - декомпрессировать данные, передаваемые между оконечным терминалом и сетевым сервером во втором сеансе связи, на основании упомянутого состояния.
Еще одна задача настоящего изобретения состоит в обеспечении компьютерного программного продукта, который позволяет сократить объем данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сжатием в сеансах связи, вовлекающих оконечный терминал.
Эта задача согласно пятому аспекту настоящего изобретения также достигается посредством компьютерного программного продукта для сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сжатием в сеансах связи, вовлекающих оконечный терминал, содержащего компьютерный программный код, чтобы заставить устройство связи выполнять этапы, когда упомянутый код загружен в устройство связи: создание по меньшей мере одного состояния, относящегося к оконечному терминалу, который зарегистрирован в первом сетевом сервере, в течение первого сеанса связи между оконечным терминалом и первым сетевым сервером, причем упомянутое состояние относится к оконечному терминалу и используется для сжатия данных, которые должны быть переданы между оконечным терминалом и сервером по меньшей мере в первом сеансе связи, сохранение упомянутого состояния для более позднего использования, когда для оконечного терминала удаляется регистрация из сетевого сервера, и после последующей регистрации оконечного терминала в сетевом сервере для второго сеанса связи - установление упомянутого состояния для использования при сжатии данных, которые должны быть переданы между оконечным терминалом и сетевым сервером во втором сеансе связи.
Эта задача согласно шестому аспекту настоящего изобретения также достигается посредством компьютерного программного продукта для сокращения объема данных, передаваемых между оконечным терминалом и первым сетевым сервером, управляющим сеансами связи, вовлекающими оконечный терминал, содержащего компьютерный программный код, чтобы заставить устройство связи выполнять этапы, когда упомянутый код загружен в устройство связи: получение по меньшей мере одного состояния, относящегося к оконечному терминалу, который зарегистрирован в первом сетевом сервере, в течение первого сеанса связи между оконечным терминалом и первым сетевым сервером, причем упомянутое состояние относится к оконечному терминалу и используется при декомпрессии данных, передаваемых между оконечным терминалом и первым сетевым сервером по меньшей мере в первом сеансе связи, сохранение упомянутого состояния для более позднего использования, когда для оконечного терминала удаляется регистрация из сетевого сервера, и после последующей регистрации оконечного терминала в сетевом сервере для второго сеанса связи между оконечным терминалом и другим терминалом, установление упомянутого состояния для использования при декомпрессии данных, передаваемых между оконечным терминалом и первым сетевым сервером во втором сеансе связи.
Настоящее изобретение имеет много преимуществ. Оно позволяет начать сжатие сообщений, используя сохраненные состояния, немедленно, когда начат второй сеанс связи. Это означает, что сжатие является более эффективным, чем ранее, при котором требовалось анализировать сообщения также после последующей регистрации оконечного терминала и сохранять состояния заново. Другое преимущество заключается в том, что не имеется никакой передачи информации, обеспеченной в состоянии. Это уменьшает количество передаваемых данных, что обычно положительно влияет на связанные затраты для конечного пользователя и также ограничивает нагрузку сети. Риск для перегрузки в сети поэтому также понижается.
Согласно выгодному варианту настоящего изобретения состояние объявляется от стороны декомпрессии к стороне сжатия. Этот вариант осуществления имеет преимущество разрешить сохранение состояний в ином месте, чем в блоках памяти состояний, что не может быть сделано, если требуется соответствие с SigComp, но все еще используется структура SigComp для сохранения состояний, также когда оконечный терминал не зарегистрирован в первом сетевом сервере, что упрощает реализацию изобретения в среде SigComp.
Согласно другому выгодному варианту осуществления информация о состоянии согласно настоящему изобретению сохраняется для более позднего использования во втором сетевом сервере. Сохранение может быть выполнено посредством, после отмены регистрации, посылки сообщения отмены регистрации, содержащего информацию о состоянии, к сетевому серверу, обрабатывающему сеансы связи для первого оконечного терминала, причем упомянутая информация о состоянии предназначена для сохранения в упомянутом втором сетевом сервере, посылки сообщения регистрации к сетевому серверу, обрабатывающему сеансы связи для первого оконечного терминала при новой регистрации, и приема ответа на упомянутое сообщение регистрации, включая информацию о состоянии. Это имеет преимущество в том, что домашняя сеть имеет управление состояниями, сохраненными для оконечного терминала.
Термин "состояние", как используется здесь, предназначен, чтобы означать по меньшей мере одну строку данных, которая затем используется посредством замены этой строки в сообщении, которое должно быть передано со ссылкой на это состояние.
Следует заметить, что термин "содержит/включает в себя", когда используется в настоящем описании, используется, чтобы указать присутствие описанных признаков, целых чисел, этапов или компонентов, но не препятствуют присутствию или добавлению одного или более других признаков, целых чисел, этапов, компонентов или их групп.
Краткое описание чертежей
Настоящее изобретение ниже описано более подробно со ссылками на включенные чертежи, на которых:
фиг. 1 схематично иллюстрирует множество оконечных терминалов, соединенных с первым сетевым сервером сети сотовой связи, а также второй сети, включающей в себя множество сетевых серверов,
фиг. 2 иллюстрирует блок-схему различных частей, обеспеченных в устройстве связи согласно настоящему изобретению, обеспечивающему функциональные возможности сжатия,
фиг. 3 иллюстрирует блок-схему различных частей, обеспеченных в устройстве связи согласно настоящему изобретению, обеспечивающему функциональные возможности декомпрессии,
фиг. 4A схематично показывает содержимое отделения для оконечного терминала и постоянное хранилище состояний для терминала перед тем, как для терминала удаляется регистрация из первого сетевого сервера,
фиг. 4B схематично показывает содержимое отделения для оконечного терминала и постоянное хранилище состояний для терминала после того, как терминал снова был зарегистрирован в первом сетевом сервере,
фиг. 5 иллюстрирует схему последовательности операций способа, обеспеченного в устройстве связи, имеющем функциональные возможности декомпрессии,
фиг. 6 иллюстрирует схему последовательности операций способа, обеспеченного в устройстве связи, имеющем функциональные возможности сжатия, и
фиг. 7 схематично иллюстрирует компьютерный программный продукт в форме диска CD-ROM, содержащего компьютерный программный код для выполнения изобретения.
Подробное описание вариантов осуществления
Настоящее изобретение описано ниже со ссылками на SIP (Протокол инициирования сеанса связи) и сжатие SigComp, обеспеченные для беспроводной сотовой сети связи. Должно однако быть понятно, что изобретение не ограничено SIP, SigComp или беспроводными сотовыми сетями связи, но применимо к любой сети, где выполняется сжатие данных, которые должны быть переданы, используя предварительно переданные данные.
Фиг. 1 иллюстрирует первую беспроводную сеть 10 сотовой связи, где первый оконечный терминал 12 обменивается с первым сетевым сервером 20 через первую базовую станцию 16. Имеется также второй терминал 14, также обменивающийся с первым сетевым сервером 20 через вторую базовую станцию 18. Первый сетевой сервер 20 является сервером P-CSCF (проксифункциональное средство управления вызовом сеанса связи). Имеется, кроме того, вторая сеть 11, которая является домашней сетью первого оконечного терминала 12. В этой второй сети 11 имеется второй сетевой сервер 23, который является так называемым сервером HSS (домашний сервер абонента), который следит за абонентами (терминалами) и данными, относящимися к ним, такими как их подписки, такие как услуги, доступные оконечному терминалу. Этот второй сетевой сервер 23 обменивается с третьим сетевым сервером 21 и четвертым сетевым сервером 22, где два последних сервера 21 и 22 также обмениваются друг с другом. Третий сетевой сервер 21 является сервером I-CSCF (функциональное средство управления сеансом связи опрашивающего вызова), в то время как четвертый сетевой сервер 22 является сервером S-CSCF (функциональное средство управления сеансом связи служебного вызова). Первый сетевой сервер 20, кроме того, обменивается с третьим сетевым сервером 21. Первый сервер 20 таким образом позволяет терминалам участвовать в IP-основанных сеансах связи подобно сеансам связи VoIP (передача речи по IP). В этом отношении возможно, что первый оконечный терминал 12 участвует в сеансе связи со вторым оконечным терминалом 14. Однако возможно, что первый оконечный терминал 12 может участвовать в сеансах связи с другими оконечными терминалами в других сетях, причем другая сеть тогда обычно может требовать соответствующего первого сетевого сервера 20. Должно быть, кроме того, понятно, что сети, представленные на фиг. 1, являются упрощенным сетями и что можно было бы обеспечить еще несколько серверов и базовых станций. Они могут также содержать множество обменов. Первый оконечный терминал 12 является в данном примере портативным устройством связи в форме сотового телефона. Аналогично должно быть понятно, что оконечный терминал может быть оконечным терминалом любого типа с возможностью компьютерной связи.
Согласно SIP сообщения обмениваются между оконечными терминалами через сервер SIP. Сообщения данных или дейтаграммы затем обмениваются между первым оконечным терминалом и первым сетевым сервером, где первый сетевой сервер затем передает и принимает сообщения, предназначенные для другого оконечного терминала сеанса связи, подобного, например, второму оконечному терминалу 14. Однако из-за ограниченной полосы частот беспроводной линии связи между первым оконечным терминалом и первой базовой станцией имеется потребность уменьшить объем данных в передаваемых сообщениях. Таким образом имеется потребность в сжатии данных.
По этой причине используется алгоритм SigComp сжатия/декомпрессии. SigComp описан более подробно в документе Price, R. et al. "Signaling Compression (SigComp)", IETF RFC 3320, январь 2003, который здесь включен по ссылке. Обычно функция сжатия и функция декомпрессии обеспечиваются с обеих сторон линии связи, то есть и в оконечном терминале, и сервере, чтобы обеспечить двустороннюю связь. Однако эти принципы могут также применяться к односторонней связи. По этой причине нижеследующее описание настоящего изобретения основано только на одном компрессоре (устройстве сжатия), который, кроме того, обеспечивается в первом оконечном терминале, и только одном декомпрессоре, который обеспечивается в первом сетевом сервере. Должно однако быть понятно, что вместо этого компрессор можно было бы обеспечивать в первом сетевом сервере и декомпрессор - в первом оконечном терминале. В нормальных случаях имеется, кроме того, одна пара компрессор/декомпрессор, обеспеченная и в сервере, и в оконечном терминале. Сервер также обслуживает более одного оконечного терминала. Чтобы упростить описание настоящего изобретения, описан случай обслуживания только одного оконечного терминала.
Фиг. 2 иллюстрирует блок-схему релевантных частей одного устройства связи согласно настоящему изобретению, которое является здесь первым сетевым сервером 20 для обработки связи с первым оконечным терминалом. Сетевой сервер 20 поэтому обеспечивается первым интерфейсным модулем 24 для связи с другими объектами, подобными первому оконечному терминалу 12, через первую базовую станцию 16. Интерфейсный модуль 24 соединен с декомпрессором 26 и с блоком 28 управления сервером, обеспечивающим обработку SIP, а также обработчик состояния и диспетчер декомпрессора согласно SigComp. Блок 28 управления сервером соединен с декомпрессором 26, с локальным хранилищем 30, обеспечивающим память состояний (SM) согласно SigComp, где установлено отделение (часть памяти) для первого терминала, а также с долговременным хранилищем состояний 32. Долговременное хранилище состояний может быть обеспечено как локальное доступное хранилище состояний, обеспеченное SigComp. Декомпрессор 26 также соединен с локальным хранилищем 30, а также с долговременным хранилищем состояний 32. Должно быть понятно, что локальное 30 хранилище может включать в себя больше отделений для других оконечных терминалов, с которыми первый сетевой сервер 20 соединен. Долговременное хранилище 32 состояний может, кроме того, включать в себя секции для других оконечных терминалов, отличных от первого оконечного терминала. Какое состояние является и как состояние используется, кратко описано ниже. Функциональные возможности, обеспеченные этими объектами, ниже также названы стороной декомпрессии.
Фиг. 3 иллюстрирует блок-схему релевантных частей другого устройства связи согласно настоящему изобретению, которое является здесь первым оконечным терминалом 12 для обработки обмена с первым сетевым сервером 20. По этой причине первый оконечный терминал 12 оборудован антенной 34, соединенной со вторым интерфейсным модулем 36 для обеспечения радиосвязи, например согласно стандарту системы пакетной радиосвязи общего пользования (GPRS). Интерфейсный модуль 34 соединен с блоком управления 38 терминалом и с компрессором 40. Блок 38 управления терминалом обеспечивает обработку SIP, а также обработчик состояния и диспетчер компрессора согласно SigComp. Блок 38 управления терминалом также соединен с компрессором 40, а также с локальным хранилищем 41 и долговременным хранилищем 42 состояний. Компрессор 40 также соединен с локальным хранилищем 41 и долговременным хранилищем 42 состояний. Устройство и функциональность согласно фиг. 3 ниже могут быть названы стороной сжатия. Локальное хранилище 41 и долговременное хранилище 42 состояний по существу имеет ту же самую функцию, что локальное 30 хранилище и долговременное хранилище 32 состояний на стороне декомпрессии. Хотя имеется одно различие, которое относится к различию между оконечным терминалом и сервером, а не к компрессору и декомпрессору и заключается в том, что локальное хранилище 41 и долговременное хранилище 42 состояний на стороне терминала хранят состояния, относящиеся только к первому оконечному терминалу и не относящиеся к другим терминалам, в то время как это возможно на стороне сервера. Декомпрессор на стороне оконечного терминала может быть получен посредством замены компрессора 40 декомпрессором 26 или посредством добавления декомпрессора 26 и подсоединения его к локальному хранилищу 30, долговременному хранилищу 32 состояний, блоку 38 управления терминалом и интерфейсному модулю 36. Аналогичным образом сервер 20 может быть модифицирован для обеспечения функциональных возможностей компрессора в дополнение к или вместо функции декомпрессора.
Фиг. 4A показывает локальное хранилище 30 для первого терминала в первом сетевом сервере, где отделение для первого терминала, которое имеет идентификационную информацию UE_ID_0 терминала, было создано, резервируя некоторое пространство памяти. Содержимое здесь обеспечивается, поскольку первый терминал соединен с первым сетевым сервером в течение первого набора сеансов связи и включает в себя набор состояний STATE_ID:5555, STATE_ID:7777 и STATE_ID:8888. Долговременное хранилище 32 состояний также показано. Однако оно является пустым для первого терминала с идентификационной информацией UE_ID_0. Фиг. 4B показывает локальное хранилище 30 и долговременное хранилище 32 состояний на фиг. 4A, когда для оконечного терминала удаляется регистрация (происходит дерегистрация) из первого сетевого сервера. Может быть замечено, что содержимое, которое было предварительно в отделении, было перемещено в долговременное хранилище состояний.
Ниже описано функционирование изобретения согласно варианту осуществления настоящего изобретения со ссылками на описанные выше фиг. 1-4, а также на фиг. 5, которая показывает последовательность этапов способа, обеспеченных на стороне декомпрессии и в этом примере - в первом сетевом сервере, и на фиг. 6, которая показывает последовательность этапов способа, обеспечиваемых на стороне сжатия и в этом примере - в первом оконечном терминале.
Все начинается с первого оконечного терминала 12, выполняющего начальную регистрацию себя в первом сетевом сервере 20 для того, чтобы начать сеанс связи, например сеанс связи со вторым оконечным терминалом 14, этапы 43 и 66. "Функциональное средство управления сеансом связи вызова" (CSCF) обеспечивает основанную на IP-мультимедиа обработку сеанса связи SIP. Оно имеет три функциональных роли - "обслуживающее CSCF" (S-CSCF), "опрашивающее CSCF" (I-CSCF) и "прокси-CSCF" (P-CSCF).
Первый сетевой сервер 20 является первой точкой контакта для первого оконечного терминала 12 и здесь обеспечивается в посещаемой сети 10, то есть в сети, которую первый оконечный терминал 12, желающий участвовать в сеансе связи SIP, посещает. Первый оконечный терминал 12 таким образом посылает сообщение регистрации первому сетевому серверу 20. Первый сетевой сервер 20 просматривает URI (универсальный идентификатор ресурса) этого сообщения регистрации. Он может затем выполнить DNS-запрос (службы доменных имен), чтобы обнаружить IP-адрес для направления сообщения регистрации и затем получить адрес третьего сетевого сервера 21 во второй сети 11. Первый сетевой сервер 20 выполняет роль посредника для передачи сообщения SIP к домашней сети 11 для абонента оконечного терминала 12. Первый сетевой сервер 20 может выполнить интернационализацию номера, и он может предписывать политику в GGSN (узле поддержки GPRS шлюза), относящуюся к обработке трафика однонаправленного канала для IP-мультимедиа.
Третий сетевой сервер 21 является точкой входа в домашнюю сеть 11. Первая сеть 10 будет использовать DNS (систему доменных имен) для маршрутизации сообщений к домашней сети 11, что будет направлять сигнализацию SIP к третьему сетевому серверу 21. Третий сетевой сервер 21 затем запрашивает второй сетевой сервер 23, чтобы получить информацию местоположения сервера S-CSCF, используя протокол диаметра. Второй сетевой сервер 23 затем сообщает третьему серверу 21, что он не был распределен. Третий сетевой сервер 21 затем выбирает S-CSCF и здесь четвертый сетевой сервер 22 и передает сообщение регистрации к четвертому сетевому серверу 22.
Четвертый сетевой сервер 22 является SIP-посредником (SIP-прокси), который обеспечивает доступ к обеспеченным оператором услугам для конечного пользователя. Четвертый сетевой сервер 22 загружает любой профиль абонента, относящийся к пользователю первого оконечного терминала 12 или самому оконечному терминалу, и обновляет информацию местоположения во втором сетевом сервере 23, чтобы информировать его, что он является S-CSCF для этого оконечного терминала. Затем после любого взаимодействия с услугами четвертый сетевой сервер 22, используя инфраструктуру DNS, может продолжать маршрутизацию сеанса связи. Как только все это сделано, сообщение OK 200 посылают от четвертого сетевого сервера 22 на первый оконечный терминал 12 через третий сетевой сервер 21 и первый сетевой сервер 20.
Как только первый оконечный терминал 12 зарегистрировался, сторона декомпрессии, кроме того, принимает байтовый код, причем байтовый код содержит команды декомпрессии и команды относительно того, как сохранить состояния. Этот байтовый код сохраняют в отделении 30 этого терминала. Эти команды о том, как сохранить состояния, эквивалентны обеспечению стороны декомпрессии знанием того, как сторона сжатия работает при сохранении состояний, так чтобы сторона декомпрессии могла использовать это знание при сохранении состояний, которые являются идентичными состояниям, сохраненным на стороне сжатия. Как только это регистрируется, возможно участвовать в сеансах связи SIP под управлением блока 28 управления сервером, который здесь функционирует согласно SIP, как описано в документе Rosenberg, J. et al. in SIP: Session Initiation Protocol, IETF RFC 3261, June 2002, который здесь включен по ссылке. Как только он зарегистрирован, блок 28 управления сервером резервирует область памяти UE_ID_0 в локальном хранилище 30 в качестве отделения для первого оконечного терминала 12. Таким же образом блок 28 управления терминалом резервирует область памяти в локальном хранилище 41. То же самое, кроме того, делается в долговременных хранилищах 32 и 42 состояний. После этого первый оконечный терминал 12 может принимать участие в сеансах связи. Таким образом, в этот момент времени, когда первый оконечный терминал 12 зарегистрирован в первом сетевом сервере 20, сервер 20 и первый оконечный терминал 12 оба участвуют в первом наборе сеансов связи, включающих в себя по меньшей мере один первый сеанс связи, этап 44 и 68.
Поскольку первый оконечный терминал хочет участвовать в сеансе связи с другим терминалом, например вторым оконечным терминалом 14, блок 28 управления терминалом генерирует сообщения с данными (передачи данных) согласно протоколу SIP. Блок 28 управления терминалом затем направляет эти сообщения с данными на компрессор 40. Когда компрессор 40 принимает первое сообщение с данными, он выполняет сжатие, используя первое состояние, причем это состояние может быть возможным USD (определенным пользователем словарем), или статическим словарем SIP, или их комбинацией, где это состояние может быть, например, состоянием STATE_ID:5555. Компрессор 40 затем сжимает сообщения передачи данных, используя эти состояния, и при сжатии заменяет строку в сообщении ссылкой на состояние. Ссылка здесь обычно обеспечивается в форме смещения и длины, то есть местоположения строки в состоянии и длине строки. Таким образом, размер сообщения уменьшается или количество передаваемых данных уменьшается. Это затем создает новое состояние, которое создается посредством обновления ранее используемого состояния. Созданное состояние здесь может быть состоянием STATE_ID:7777. Новое состояние STATE_ID:7777 обычно создается посредством добавления всего или части нового сообщения к первоначальному состоянию STATE_ID:5555. Состояние таким образом обычно включает в себя строки ранее посланных сообщений, которые могут использоваться при сжатии более поздних сообщений. Созданное состояние имеет некоторую идентификационную информацию или идентификатор, который обычно обеспечивается как хэш-функция содержимого состояния. Типичная информация, которая может быть обеспечена в состоянии, есть адресная информация, подобная адресу электронной почты оконечного терминала, других терминалов или людей, с которыми входит в контакт оконечный терминал, тип речевого кодера, подобного AMR, и номера используемых портов. Новое состояние затем сохраняется в отделении 41. Сжатое сообщение после этого посылают от компрессора 40 к серверу 20 через интерфейсный модуль 36 терминала и антенну 34, где посланное сообщение передачи данных включает в себя, кроме сжатого сообщения, также указатель на используемое состояние, то есть STATE_ID:5555. Сообщение далее сопровождается запросом о подтверждении. В этом первом сеансе связи оконечный терминал 12 таким образом сжимает сообщения передачи данных, используя состояния, этап 70, создает новые состояния на основании более ранних состояний и новые сообщения, которые должны быть посланы, этап 72, сохраняет новые состояния в отделении 41, этап 74, и посылает сжатые сообщения и указатели состояний к стороне декомпрессии, этап 76.
Сжатое сообщение и указатель состояния принимаются интерфейсным модулем 24 на стороне декомпрессии и направляются к декомпрессору 26 блоком 28 управления сервером. Блок 28 управления сервером сохраняет указатель состояния и извлекает первое состояние из отделения (для) первого оконечного терминала в локальном хранилище 30 на основании этого указателя состояния. После этого блок 28 управления сервером передает извлеченное состояние к декомпрессору 26. Декомпрессор 26 декомпрессирует сообщение, используя байтовый код и состояние посредством замены ссылки на состояние соответствующей строкой. Декомпрессор 26 затем передает декомпрессированное сообщение к блоку 28 управления сервером. Блок 28 управления затем создает новое состояние на основании команд, обеспеченных в упомянутом байтовом коде. Это состояние будет затем идентично состоянию, созданному на стороне сжатия, то есть STATE_ID:7777. Это состояние сохраняют в отделении для оконечного терминала в локальном хранилище 30. Оно является таким образом назначенным первому оконечному терминалу 12, так как этот терминал 12 является единственным терминалом, который может сохранять состояния в этом отделении. После этого блок 28 управления сервером подтверждает прием сообщения, что может обычно быть сделано вместе с посылкой сжатого сообщения от сервера 20 на оконечный терминал 12. Сторона сжатия принимает это подтверждение. В этом первом сеансе связи первый сетевой сервер 20 таким образом принимает сжатые сообщения и указатели состояния, этап 46, декомпрессирует сообщения, используя состояния, указанные указателями состояния, этап 48, создает новые состояния на основании более ранних состояний и принятых сообщений, используя байтовый код, этап 50, и сохраняет новые состояния в отделении 30, этап 52.
Вследствие подтверждения сторона сжатия, кроме того, знает, что сообщение было принято, и также то, что новое состояние было сохранено. Это означает, что сторона сжатия может теперь использовать сохраненное состояние при сжатии следующего сообщения. Если никакого подтверждения не принято, это состояние не может быть использовано. Затем сторона сжатия создает новые состояния на основании предыдущего состояния таким же образом, как было описано выше.
Таким образом, сжатие и декомпрессия сообщений продолжаются в течение всего первого сеанса связи. Таким образом, ряд состояний может быть создан и сохранен для оконечного терминала 12, где три STATE_ID:5555, STATE_ID:7777 и STATE_ID:8888 показываются на фиг. 4A. Состояния, кроме того, сохраняются до тех пор, пока оконечный терминал 12 зарегистрирован в первом сетевом сервере 20. Это означает, что состояния в отделениях 30 и 41 могут использоваться также в других сеансах связи в пределах этого первого набора и могут использоваться, пока оконечный терминал 12 зарегистрирован в первом сетевом сервере 20. То что было описано выше, является обычным динамическим сжатием согласно стандарту SigComp. Однако через некоторое время оконечный терминал 12 решает удалить регистрацию из сетевого сервера 20, этапы 54 и 78. Когда это случается, состояния, сохраненные в отделениях 30 и 41, STATE_ID:5555, STATE_ID:7777 и STATE_ID:8888, перемещаются в долговременное хранилище 32 состояний сервера 20, которое принадлежит этому оконечному терминалу, и долговременное хранилище 42 состояний оконечного терминала 12, этап 56 и 80. Это таким образом происходит как на стороне сжатия, так и на стороне декомпрессии. Так как объем памяти ограничен, здесь возможно использовать систему приоритетов для решения, какие состояния должны быть сохранены. Например, возможно сохранить все состояния, если имеется (достаточный) объем памяти, только самые последние состояния, только самое последнее состояние вместе с одним или более из состояний, имеющих самый высокий приоритет, или множество состояний, имеющих самые высокие приоритеты. Отделения затем освобождаются или закрываются, как требуется техническими требованиями SigComp.
Через некоторое время, которое может быть очень длительным промежутком времени, первый оконечный терминал 12 еще раз регистрируется в первом сетевом сервере 20, этапы 58, и 82. Когда это сделано, сторона декомпрессии объявляет сохраненные состояния стороне сжатия, этапы 60 и 84, что может быть сделано через посылку объявления. Объявление может быть сделано, используя возвращенные параметры, посланные в сжатых сообщениях, где возвращенный параметр установлен как идентификатор состояния. Объявления описаны более подробно в документе "Signaling Compression (SigComp)", IETF RFC 3320, January 2003 by Price, R. et. al., который здесь включен по ссылке. Блок 38 управления на стороне сжатия затем исследует состояния, сохраненные в долговременном хранилище 42 состояний, и разрешает использование тех, которые были объявлены стороной декомпрессии. Когда оконечный терминал 12 затем участвует во втором наборе сеансов связи, включающих в себя по меньшей мере второй сеанс связи, этап 62 и 86, компрессор начинает сжимать сообщения, предназначенные для стороны декомпрессии, используя эти объявленные состояния, этап 88, и сторона декомпрессии начинает декомпрессию сообщений, используя состояния, обозначенные стороной сжатия, причем эти состояния являются обычно теми же, какие она объявила, этап 64. После этого состояния создаются, сохраняются и используются таким же образом, как описано выше. Это продолжается до тех пор, пока первый оконечный терминал 12 зарегистрирован в первом сетевом сервере 20. Когда для него удаляется регистрация (происходит дерегистрация), состояния все же снова сохраняются в долговременных хранилищах состояний. Вышеописанные этапы способа затем повторяются раз, когда первый оконечный терминал регистрируется и регистрация удаляется из первого сетевого сервера.
Таким образом возможно начать сжимать сообщения, используя объявленные и сохраненные состояния немедленно, как только сеанс связи начат во втором наборе сеансов связи. Это означает, что динамическое сжатие является более эффективным, чем ранее, которое требовало анализа сообщений также после последующей регистрации оконечного терминала и сохранения состояний заново. Другое преимущество заключается в том, что не имеется никакой передачи этих строк, обеспеченных в состояниях. Это уменьшает количество передаваемых данных, что обычно положительно влияет на ассоциированные затраты для конечного пользователя и также ограничивает нагрузку сети. Риск перегрузки в сети поэтому также снижается. Так как состояния не сохранены в локальных хранилищах, которые здесь используются для блоков памяти состояний, требуемых SigComp, они не влияют на содержимое памяти состояний и не вызывают потерю синхронизации между представлением компрессора о том, что находится в памяти состояний на стороне декомпрессии и что в действительности находится в ней. Так как локальное хранилище не затрагивается, не имеется воздействия на или от SigComp узлов, которые не поддерживают сохранение состояний после удаления регистрации оконечного терминала. Не имеется, кроме того, никакой потребности в изменениях стандартов ни в 3GPP, ни в IETF.
В варианте осуществления, описанном выше, первый сетевой сервер 20 сохранил состояния локально. Однако возможно, что он хранит их во втором сетевом сервере HSS 23. Когда это сделано, сообщение о регистрации (содержащее информацию удаления регистрации) посылают от первого оконечного терминала 12 к первому сетевому серверу 20, который передает его к четвертому сетевому серверу 22 через третий сетевой сервер 21. Это сообщение о регистрации также может включать в себя информацию о состоянии или в форме полных состояний (идентификатор и значение состояния), или только в виде идентификатора состояния, которая должна быть сохранена во втором сетевом сервере 23 для первого оконечного терминала или пользователя первого оконечного терминала. Когда четвертый сетевой сервер 22 принимает сообщение о регистрации SIP от первого сетевого сервера 20, он извлекает информацию о состоянии из сообщения о регистрации и передает ее ко второму сетевому серверу 23 с использованием сообщения диаметра. Второй сетевой сервер 23 затем сохраняет информацию о состоянии для более поздних сеансов связи.
Когда первый оконечный терминал затем повторно регистрируется в первом сетевом сервере 20, это сообщение регистрации проходит через первый сетевой сервер 20 к третьему сетевому серверу 21 и затем к назначенному четвертому сетевому серверу 22. Четвертый сетевой сервер 22 затем извлекает информацию абонента из сервера 23 второй сети, используя протокол диаметра. Ответ от второго сетевого сервера 23 может затем включать в себя информацию о состоянии, относящуюся к первому оконечному терминалу 12, который обменивается с первым сетевым сервером 20. Информацию о состоянии можно затем передать в теле 200 OK сообщения SIP. Когда первый сетевой сервер принимает это 200 OK сообщение, он извлекает информацию о состоянии и сохраняет ее в памяти 30 так, чтобы было возможно для первого сетевого сервера 20 использовать эти состояния в сеансах связи. Информация о состоянии, как было упомянуто выше, может быть полными состояниями или только идентификаторами состояния. Когда только идентификаторы состояния приняты, это используется, чтобы сообщить стороне сжатия (и стороне декомпрессии) первого сетевого сервера 12, что состояния, сохраненные согласно принципам, описанным выше, должны быть сделаны доступными оконечному терминалу. Сообщения диаметра описаны более подробно в документе IETF RFC 3588 - "Diameter Base Protocol, P. Calhoun et. al, September 2003, который здесь включен по ссылке. Основное преимущество этого варианта настоящего изобретения состоит в том, что домашняя сеть имеет управление состояниями, сохраненными для оконечного терминала.
OK сообщение SIP 200 может здесь иметь новый тип содержимого, указанного в заголовке, например "Тип содержимого: информация о состоянии текст/sigcomp", указывающий, что информация в теле сообщения является SigComp-информацией о состоянии. В сообщении диаметра информацию о состоянии можно передавать в AVP (Пара значений атрибута), если существующий такой AVP не может использоваться, может быть создан новый.
Настоящее изобретение может быть осуществлено посредством одного или более процессоров вместе с кодом компьютерной программы для выполнения функций изобретения. Это, в частности, относится к блокам управления и компрессору и декомпрессору. Интерфейсные модули обычно обеспечиваются как отдельные схемы, например как схемы ASIC (специализированные интегральные схемы), в то время как хранилища могут быть обеспечены как соответствующие блоки памяти, например, в форме жесткого диска, ПЗУ, ОЗУ и т.д. Программный код, упомянутый выше, может также быть обеспечен как компьютерный программный продукт, например, в форме носителя информации, хранящего компьютерный программный код для выполнения способа согласно настоящему изобретению при загрузке в первый оконечный терминал и/или первый сетевой сервер. Один такой носитель 90 в форме диска CD-ROM в общем виде показан на фиг. 7. Это, однако, реализуемо с другими носителями информации, такими как флэш-память. Компьютерный программный код можно, кроме того, обеспечивать как действительный программный код на сервере и загружаемый на устройство связи дистанционно.
Имеются несколько вариантов, которые являются возможными согласно настоящему изобретению. Возможно, что сторона декомпрессии генерирует состояние. В этом случае она будет сохранять его и объявлять его стороне сжатия. После объявления сторона сжатия затем также может сохранить его. Также эти состояния могут затем быть запомнены и сохранены для использования, когда первый оконечный терминал выполняет новую регистрацию в первом сетевом сервере. Сторона декомпрессии может также принимать состояния от стороны сжатия вместо создания их на основании байтового кода. Первый сетевой сервер может быть, кроме того, обеспечен в домашней сети первого оконечного терминала. Первый, второй, третий и четвертый сетевые серверы можно обеспечивать в одиночном физическом модуле, но с различными функциональными возможностями узла. Их можно также обеспечивать в двух различных физических модулях, трех различных физических модулях или четырех различных физических модулях. Поэтому настоящее изобретение должно быть ограничено только нижеследующей формулой изобретения.