ГОСТ Р ИСО/МЭК 8825-3—2016
Приложение D
(справочное)
Примеры
Настоящее приложение содержит примеры использования ECN. Примеры разделены на пять групп:
- общие примеры, которые показывают, как выглядят определения ECN (D.1);
- специализированные примеры, которые показывают, как изменяются некоторые части какого-либо стан
дартизованного кодирования. Каждый пример содержит описание требований к кодированию и описание выбран
ных решений и возможных альтернативных решений (D.2);
- примеры специально оперируемой структуры, которые показывают использование явно генерируемых
структур, когда одно и то же специализированное кодирование используется несколько раз (D.3):
- пример традиционного протокола, показывающий три способа обращения с проблемой традиционного
подхода «бит-еще» («more-bit») к окончанию «последоватепьности-из» (D.4):
- второй пример традиционного протокола, показывающий, как конструировать определения ECN для про
токола. в котором кодовые последовательности сообщения определены с помощью табличной нотации (D.5).
D.1 Общие примеры
Примеры, описанные в D.1.1—D.1.14. являются частью полной спецификации ECN. модули которой АСН.1.
EDM и ELM даны в общих чертах в D.1.15. D.1.16 и D.1.17, а полностью даются в экземпляре этого приложения,
помещенного на web-сайте, указанном в приложении F.
D.1.1 Объект кодирования булева типа
D. 1.1.1 Присвоение АСН.1 равно:
Married ::= BOOLEAN
D.1.1.2 Присвоениями объекта кодирования (см. 23.3.1) являются.
booleanEncoding «BOOLEAN ::= {
ENCODING-SPACE
SIZE 1
MULTIPLE OF bit
TRUE-PATTERN bits:TB
FALSE-PATTERN bits:’0aB}
marriedEncoding-1 «MarriedbooleanEncoding
D.1.1.3 Предварительное выравнивание отсутствует, а пространство кодирования равно одному биту, поэто
му «Married» кодируется в битовом поле длиной 1. Комбинациями для значений TRUE и FALSE (в случае одиноч
ного бита) являются ТВ и ’О’В соответственно.
D.1.1.4 Указанные выше значения являются такими значениями, которые могут устанавливаться по умолча
нию (см. 23.3.1). если соответствующие признаки кодирования были пропущены, поэтому то же самое кодирование
может быть достигнуто с помощью менее длинной продукции:
marriedEncoding-2 «Married ::= {
ENCODING-SPACE
SIZE 1}
D.1.1.5 Это кодирование для булева типа является, конечно, как раз тем. которое обеспечивает PER. а дру
гая альтернатива должна определять кодирование, использующее обьект кодирования PER для булева типа с
помощью синтаксиса, приведенного в 17.3.1.
marriedEncoding-3 «Married ::= {
ENCODE WITH PER-BASIC-UNALIGNED}
167