Данная статья применима к:
- ???
Формат классификационных меток для протокола IPv4
Формат классификационных меток для протокола IPv6
При передаче информации по протоколу IPv6 классификационные метки должны размещаться в Опции с типом CALIPSO заголовка Hop-by-Hop IP-пакета. Подробнее см:
- описание опции CALIPSO: RFC 5570 Опция безопасности для архитектуры меток в IPv6 [Common Architecture Label IPv6 Security Option (CALIPSO), July 2009];
- описание заголовка Hop-by-Hop IP-пакета: RFC 2460 Спецификация протокола IPv6 [Internet Protocol, Version 6 (IPv6) Specification, December 1998].
При отсутствии Опции с типом CALIPSO в составе заголовка Hop-by-Hop IP-пакета считается, что данный пакет имеет нулевую классификационную метку (т.е. классификационную метку с нулевым значением иерархического уровня конфиденциальности и нулевым набором неиерархических категорий конфиденциальности).
Значения полей Опции CALIPSO, совокупность которых определяет значение классификационной метки, устанавливаются в соответствии с приведенной далее таблицей.
Размещение классификационной метки в заголовке Hop-by-Hop IPv6
Смещение, | Поле | Значение поля | Длина | Комментарий | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Следующий заголовок | XX | 1 | Тип заголовка, следующего за заголовком Hop-by-Hop. При отсутствии следующих заголовков принимает значение 6 | ||||||||||||||||
1 | Число расширений | 1 | 1 | Количество 8-байтных расширений, содержащихся в опции, следующей за 8-байтным заголовком. Совпадает со значением поля COMPARTMENT LENGTH | ||||||||||||||||
2 | Тип | 07 | 1 | Значение 7 определяет тип Опции — CALIPSO. | ||||||||||||||||
3 | Длинна | 0x0C | 1 | Длина Опции в байтах, не включая поля ТУРЕ, LENGTH и PadN. Может принимать значения: 12 или 16 (0x0C или 0x10) байт. | ||||||||||||||||
4 | DOMAIN OF INTERPRETATION | 00 | 4 | Значение 1 определяет наличие в опции классификационной метки | ||||||||||||||||
5 | 00 | |||||||||||||||||||
6 | 00 | |||||||||||||||||||
7 | 01 | |||||||||||||||||||
Опция CALIPSO, расширение 1 | 8 | |||||||||||||||||||
8 | Количество слов в битовой маске категорий | 1 | 1 | Длина поля COMPARTMENT BITMAP в 32-битных словах. 1 или 2 слова, соответственно 4 или 8 байт. Совпадает со значением поля HEADER EXTENSION LENGTH | ||||||||||||||||
9 | Иерархический уровень конфиденциальности | 1 | Значение иерархического уровня конфиденциальности (беззнаковое целое, 256 возможных значений в диапазоне от 0 до 255 включительно) | |||||||||||||||||
10 | Контрольная сумма | 2 | Контрольная сумма CRC-16, определенная в RFC 1662 PPP с кадрированием в стиле HDLC, Приложение C [PPP in HDLC-like Framing, Appendix C, July 1994]. Контрольная сумма вычисляется по всей Опции CALIPSO, с нулевым полем CHECKSUM. Контрольная сумма всегда должна быть вычислена при передаче и всегда должна быть проверена при приеме. | |||||||||||||||||
11 | ||||||||||||||||||||
12 | Битовая маска категорий | 4 | Битовая маска неиерархических категорий конфиденциальности.
В общем случае, для преобразования из представления в ОС в представление в опции CALIPSO категории записываются в обратном порядке, и завершающие нулевые 32-битные слова отсекаются. Примеры:
| |||||||||||||||||
13 | ||||||||||||||||||||
14 | ||||||||||||||||||||
15 | ||||||||||||||||||||
Опция CALIPSO, расширение 2, необязательное | 8 | |||||||||||||||||||
16 | Битовая маска категорий | 4 | ||||||||||||||||||
17 | ||||||||||||||||||||
18 | ||||||||||||||||||||
19 | ||||||||||||||||||||
20 | PadN | 01 | 4 | Опция PadN 64-битного выравнивания | ||||||||||||||||
21 | 02 | |||||||||||||||||||
22 | 00 | |||||||||||||||||||
23 | 00 | |||||||||||||||||||