ГОСТ ISO/IEC 24824-2—2013
Приложение С
(справочное)
Учебное пособие по использованию быстрых веб-сервисов
Данное приложение содержит учебный материал по использованию быстрых веб-сервисов. В нем описа
ны некоторые преимущества использования быстрых веб-сервисов, освещены различия между концептуальной и
оптимизированной обработкой SOAP сообщений. Это показано на примере простого обмена, когда клиент
посы лает сообщение-запрос иполучает ответное сообщение. Вданном приложении рассмотрено также
использование описаний сервисов и приведен пример описания сервиса обмена сообщениями (в WSDL 1.1. см.
(2)).
С.1 Преимущества быстрых веб-сервисов
Спецификация быстрых веб-сервисов основана на использовании ASN.1 определения SOAP сообщений и
их содержимого, а также на использовании бинарных кодирований этих сообщений. Это обеспечивает главное
преимущество быстрого веб-сервиса, быструю компьютерную обработку и малый пропускной канал под сообще
ния. а также род XML SOAP оптимизаций, которые будут рассмотрены ниже.
С.1.1 Инструменты ASN.1
Инструменты ASN.1 могут быть использованы в разработке ASN.1 SOAP процессоров, ввиду того что XWL
SOAP процессоры, по большей части, написаны вручную, используя лишь W3C XML схему для SOAP в качестве
ориентира, так как инструменты XML привязки мало подходят для разработки оптимальных XML SOAP процессо
ров. ASN.1 подход предоставляет выбор, разрабатывать SOAP процессоры с помощью инструментов или же вруч
ную, без серьезных потерь производительности и с потенциальной выгодой во времени для выхода на рынок.
С.1.2 Оптимизированные функции
ASN.1 SOAP предоставляет ряд функций оптимизации (помимо уплотнения и эффективной обработки за
счет использования ASN.1 и PER — см. Рекомендацию МСЭ-Т Х.691 | ISO/IEC 8825-2) для SOAP узлов:
a) тело ASN.1 SOAP сообщения явно отделено от кодирования ошибки ASN.1 SOAP сообщения. Это облег
чает идентификацию и управление ошибками:
b
) рекурсивные ошибочные подкоды (см. W3C SOAP Часть 1, 5.4.6) для W3C SOAP сообщений сплюснуты
в последовательность ошибочных подкодов для ASN.1 SOAP сообщения. Это позволяет декодеру узнать, сколько
существует ошибочных подходов до декодирования:
c) вместо квалифицированных имен могут быть использованы условные идентификаторы объектов ASN.1.
Сообщения для описания сервисов могут быть с аннотацией, состоящей из условных идентификаторов объектов.
Такие идентификаторы после кодирования, как правило, более компактны, чем квалифицированные имена, что
дает меньшие размеры сообщений;
d) для всех атрибут-связанных компонентов блока заголовкаASN.1 SOAP значения по умолчанию заданы;
в)для заданных в W3C SOAP кодов сшибок вместо квалифицированных имен используются перечисляемые
значения.
С.1.3 Компактные сообщения и эффективная обработка
ASN.1 SOAP сообщения, закодированные с помощью ASN.1 PER, обычно предоставляют веб-сервисы, ко
торые требуют меньшей вычислительной мощности (и. следовательно, обеспечивают более высокую скорость
обработки транзакций) и меньшей пропускной способности сети, чем при использовании XML кодирования. Это
может быть полезно в ряде областей:
a) в устройствах с ограничениями, таких как мобильные телефоны, смарт-карты или даже RFID устройства,
которые имеют ограничения вычислительной мощности, памяти и аккумулятора.
П римечание 1— Для технологий вобласти аккумуляторов не существует эквивалента закона Мура (их
жизнь не удваивается каждые 18 месяцев);
b
) в системах с ограниченной пропускной способностью, таких какбеспроводные сети.
П римечание 2 — Радиочастоты для беспроводных сетей, таких как сеть GSM, могут не меняться в те
чение 10 лет. Для радиочастот не существует эквивалента закона Мура (пропускная способность не удваивается
каждые 18 месяцев);
c) в высокопропускных транзакционных системах, таких как системы, необходимые для обработки опреде
ленного количества SOAP сообщений в секунду от многих клиентов.
С.1.4 Эффективная обработка SOAP посредников
SOAP посредники имеют потенциал для обработки намного большего числа SOAP сообщений, чем началь
ные SOAP отправители и конечные SOAP получатели. SOAP посредники, обрабатывая ASN.1 SOAP сообщения,
могут легко определить блоки заголовков ASN.1 SOAP для обработки (включая декодирование), пропуская при
этом (и копируя) другие блоки заголовков SOAP (предназначенные для других SOAP посредников или конечного
SOAP получателя) и SOAP тело. (Вследствие того, что блоки заголовков SOAP и SOAP тело кодируются как по
следовательность с заданной длиной октетов).
28