Internet Engineering Task Force (IETF) D. Fedyk Request for Comments: 9349 E. Kinzie Category: Standards Track LabN Consulting, L.L.C. ISSN: 2070-1721 January 2023
Definitions of Managed Objects for IP Traffic Flow Security
Определения управляемых объектов для защиты потоков трафика IP
Аннотация
Этот документ описывает управляемые объекты дополнений защиты потоков трафика IP (IP Traffic Flow Security) для протокола обмена ключами Internet версии 2 (Internet Key Exchange Protocol Version 2 или IKEv2) и IPsec. Документ представляет доступные лишь для чтения версии объектов, определённых в модуле YANG для тех же целей (A YANG Data Model for IP Traffic Flow Security, RFC 9348).
Статус документа
Документ относится к категории Internet Standards Track.
Документ является результатом работы IETF1 и представляет согласованный взгляд сообщества IETF. Документ прошёл открытое обсуждение и был одобрен для публикации IESG2. Дополнительную информацию о стандартах Internet можно найти в разделе 2 в RFC 7841.
Информация о текущем статусе документа, найденных ошибках и способах обратной связи доступна по ссылке https://www.rfc-editor.org/info/rfc9349.
Авторские права
Copyright (c) 2023. Авторские права принадлежат IETF Trust и лицам, указанным в качестве авторов документа. Все права защищены.
К документу применимы права и ограничения, указанные в BCP 78 и IETF Trust Legal Provisions и относящиеся к документам IETF (http://trustee.ietf.org/license-info), на момент публикации данного документа. Прочтите упомянутые документы внимательно. Фрагменты программного кода, включённые в этот документ, распространяются в соответствии с упрощённой лицензией BSD, как указано в параграфе 4.e документа IETF Trust Legal Provisions, без каких-либо гарантий (как указано в Simplified BSD License).
1. Введение
Этот документ определяет модуль MIB (Management Information Base) для использования протоколами сетевого управления в сообществе Internet. Расширения для защиты потоков трафика (IP Traffic Flow Security или IP-TFS), заданные в [RFC9347], расширяют защищённые связи IPsec SA для повышения уровня конфиденциальности трафика.
Определяемые здесь объекты совпадают с заданными в [RFC9348], но поддерживаются лишь данные рабочего состояния. За счёт доступности данных рабочего состояния по протоколу SNMP имеющиеся системы управления сетями могут отслеживать IP-TFS. Эти данные указаны в дереве MIB (параграф 4.1). Модуль использует модель данных YANG в качестве отправной точки. Отметим, что модель IETF MIB для IPsec не была стандартизована, однако приведённые здесь структуры можно адаптировать к имеющимся фирменным реализациям MIB, где для управления сетями применяется SNMP.
1.1. Схема стандартов управления Internet
Подробный обзор документов, описывающих современную схему управления (Internet-Standard Management Framework) приведён в разделе 7 [RFC3410].
Доступ к управляемым объектам происходит через виртуальное хранилище информации, называемое базой управляющей информации (Management Information Base или MIB). Доступ к объектам MIB обычно выполняется по простому протоколу управления сетью (Simple Network Management Protocol или SNMP). Объекты MIB определяются с использованием механизмов, заданных структурой управляющей информации (Structure of Management Information или SMI). Этот документ описывает модуль MIB, соответствующий SMIv2, описанной в STD 58, [RFC2578], [RFC2579] и [RFC2580].
2. Уровни требований
Ключевые слова должно (MUST), недопустимо (MUST NOT), требуется (REQUIRED), нужно (SHALL), не следует (SHALL NOT), следует (SHOULD), не нужно (SHOULD NOT), рекомендуется (RECOMMENDED), не рекомендуется (NOT RECOMMENDED), возможно (MAY), необязательно (OPTIONAL) в данном документе интерпретируются в соответствии с BCP 14 [RFC2119] [RFC8174] тогда и только тогда, когда они выделены шрифтом, как показано здесь.
3. Обзор
Этот документ задаёт MIB для доступа к рабочим параметрам IP-TFS. Расширение IP-TFS, определённое в [RFC9347], настраивает защищённые свящи (Security Association или SA) для туннельного режима IPsec с характеристиками, повышающими уровень конфиденциальности трафика и сокращающими расход прорускной способности.
Документ основан на концепциях и модели управления [RFC9348]. Предполагается знакомство читателя с концепциями IPsec [RFC4301], IP-TFS [RFC9347] и моделью управления IP-TFS, описанной в [RFC9348].
Документ задаёт расширяемую операционную модель для IP-TFS, используя модель управления из [RFC9348]. Это позволяет системам SNMP читать рабочие объекты (включая настраиваемые) из IP-TFS.
4. Объекты управления
4.1. Дерево MIB
Ниже представлено дерево регистрации MIB для расширений IP-TFS.
# дерево регистрации IP-TRAFFIC-FLOW-SECURITY-MIB
--iptfsMIB(1.3.6.1.2.1.500)
+--iptfsMIBObjects(1)
| +--iptfsGroup(1)
| | +--iptfsConfigTable(1)
| | +--iptfsConfigTableEntry(1) [iptfsConfigSaIndex]
| | |
| | +-- --- Integer32 iptfsConfigSaIndex(1)
| | +-- r-n TruthValue congestionControl(2)
| | +-- r-n TruthValue usePathMtuDiscovery(3)
| | +-- r-n UnsignedShort outerPacketSize(4)
| | +-- r-n CounterBasedGauge64 l2FixedRate(5)
| | +-- r-n CounterBasedGauge64 l3FixedRate(6)
| | +-- r-n TruthValue dontFragment(7)
| | +-- r-n NanoSeconds maxAggregationTime(8)
| | +-- r-n UnsignedShort windowSize(9)
| | +-- r-n TruthValue sendImmediately(10)
| | +-- r-n NanoSeconds lostPacketTimerInterval(11)
| +--ipsecStatsGroup(2)
| | +--ipsecStatsTable(1)
| | +--ipsecStatsTableEntry(1) [ipsecSaIndex]
| | +-- --- Integer32 ipsecSaIndex(1)
| | +-- r-n Counter64 txPkts(2)
| | +-- r-n Counter64 txOctets(3)
| | +-- r-n Counter64 txDropPkts(4)
| | +-- r-n Counter64 rxPkts(5)
| | +-- r-n Counter64 rxOctets(6)
| | +-- r-n Counter64 rxDropPkts(7)
| +--iptfsInnerStatsGroup(3)
| | +--iptfsInnerStatsTable(1)
| | +--iptfsInnerStatsTableEntry(1) [iptfsInnerSaIndex]
| | +-- --- Integer32 iptfsInnerSaIndex(1)
| | +-- r-n Counter64 txInnerPkts(2)
| | +-- r-n Counter64 txInnerOctets(3)
| | +-- r-n Counter64 rxInnerPkts(4)
| | +-- r-n Counter64 rxInnerOctets(5)
| | +-- r-n Counter64 rxIncompleteInnerPkts(6)
| +--iptfsOuterStatsGroup(4)
| +--iptfsOuterStatsTable(1)
| +--iptfsOuterStatsTableEntry(1) [iptfsOuterSaIndex]
| +-- --- Integer32 iptfsOuterSaIndex(1)
| +-- r-n Counter64 txExtraPadPkts(2)
| +-- r-n Counter64 txExtraPadOctets(3)
| +-- r-n Counter64 txAllPadPkts(4)
| +-- r-n Counter64 txAllPadOctets(5)
| +-- r-n Counter64 rxExtraPadPkts(6)
| +-- r-n Counter64 rxExtraPadOctets(7)
| +-- r-n Counter64 rxAllPadPkts(8)
| +-- r-n Counter64 rxAllPadOctets(9)
| +-- r-n Counter64 rxErroredPkts(10)
| +-- r-n Counter64 rxMissedPkts(11)
+--iptfsMIBConformance(2)
+--iptfsMIBConformances(1)
| +--iptfsMIBCompliance(1)
+--iptfsMIBGroups(2)
+--iptfsMIBConfGroup(1)
+--ipsecStatsConfGroup(2)
+--iptfsInnerStatsConfGroup(3)
+--iptfsOuterStatsConfGroup(4)
4.2. SNMP
Ниже представлен модуль MIB для IP-TFS. Алгоритм контроля перегрузок [RFC5348] указан в тексте MIB.
<CODE BEGINS> file "iptfs-mib.mib"
-- *----------------------------------------------------------------
-- * Модуль IP-TRAFFIC-FLOW-SECURITY-MIB
-- *----------------------------------------------------------------
IP-TRAFFIC-FLOW-SECURITY-MIB DEFINITIONS ::= BEGIN
IMPORTS
MODULE-IDENTITY, OBJECT-TYPE,
Integer32, Unsigned32, Counter64, mib-2
FROM SNMPv2-SMI
CounterBasedGauge64
FROM HCNUM-TC
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF
TEXTUAL-CONVENTION,
TruthValue
FROM SNMPv2-TC;
iptfsMIB MODULE-IDENTITY
LAST-UPDATED "202301310000Z"
ORGANIZATION "IETF IPsecme Working Group"
CONTACT-INFO
"
Author: Don Fedyk
<mailto:dfedyk@labn.net>
Author: Eric Kinzie
<mailto:ekinzie@labn.net>"
DESCRIPTION
"Этот модуль задаёт конфигурацию и рабочее состояние для
управления функциональностью IP-TFS (RFC 9348).
Авторские права (Copyright (c) 2023) принадлежат IETF Trust и
лицам, указанным как авторы. Все права защищены.
Распространение и применение модуля в исходной или двоичной
форме с изменениями или без таковых разрешено в соответствии с
лицензией Simplified BSD License, изложенной в параграфе 4.c
IETF Trust's Legal Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info).
Эта версия модуля SNMP MIB является частью RFC 9349, где
правовые аспекты приведены более полно.";
REVISION "202301310000Z"
DESCRIPTION
"Исходный выпуск, основанный на модели YANG IP-TFS."
::= { mib-2 246}
--
-- Текстовые соглашения
--
UnsignedShort ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d"
STATUS current
DESCRIPTION "xs:unsignedShort"
SYNTAX Unsigned32 (0 .. 65535)
NanoSeconds ::= TEXTUAL-CONVENTION
DISPLAY-HINT "d-6"
STATUS current
DESCRIPTION
"Представляет время в наносекундах."
SYNTAX Integer32
-- Объекты, уведомления, соответствия
iptfsMIBObjects OBJECT IDENTIFIER
::= { iptfsMIB 1 }
iptfsMIBConformance OBJECT IDENTIFIER
::= { iptfsMIB 2}
--
-- Группы объектов IP-TFS MIB
--
iptfsGroup OBJECT IDENTIFIER
::= { iptfsMIBObjects 1 }
ipsecStatsGroup OBJECT IDENTIFIER
::= { iptfsMIBObjects 2 }
iptfsInnerStatsGroup OBJECT IDENTIFIER
::= { iptfsMIBObjects 3 }
iptfsOuterStatsGroup OBJECT IDENTIFIER
::= { iptfsMIBObjects 4 }
iptfsConfigTable OBJECT-TYPE
SYNTAX SEQUENCE OF IptfsConfigTableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Таблица конфигурационных данных для IP-TFS."
::= { iptfsGroup 1 }
iptfsConfigTableEntry OBJECT-TYPE
SYNTAX IptfsConfigTableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Запись (концептуальная строка) со сведениями об
отдельной IP-TFS SA."
INDEX { iptfsConfigSaIndex }
::= { iptfsConfigTable 1 }
IptfsConfigTableEntry ::= SEQUENCE {
iptfsConfigSaIndex Integer32,
-- Идентификаторы
congestionControl TruthValue,
usePathMtuDiscovery TruthValue,
outerPacketSize UnsignedShort,
l2FixedRate CounterBasedGauge64,
l3FixedRate CounterBasedGauge64,
dontFragment TruthValue,
maxAggregationTime NanoSeconds,
windowSize UnsignedShort,
sendImmediately TruthValue,
lostPacketTimerInterval NanoSeconds
}
iptfsConfigSaIndex OBJECT-TYPE
SYNTAX Integer32 (1..16777215)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Уникальное значение больше 0 для каждой SA. Рекомендуется
выделять значения непрерывно, начиная с 1.
Значение для каждой записи должно сохраняться хотя бы от
одной инициализации системы сетевого управления объекта
до другой."
::= { iptfsConfigTableEntry 1 }
congestionControl OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Принятое по умолчанию значение true разрешает обмен
данными контроля перегрузки по линии, требуемый алгоритмами
контроля перегрузок, как указано в RFC 5348. При значении
false IP-TFS передаёт через туннель IP-TFS пакеты
фиксированного размера с постоянной скоростью."
::= { iptfsConfigTableEntry 2 }
usePathMtuDiscovery OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Размер пакета задаётся вручную или определяется
автоматически. При usePathMtuDiscovery true система
использует path-mtu для определения максимального размера
пакетов IP-TFS. Если размер задан явно, он может лишь
снижаться при установке use-path-mtu."
::= { iptfsConfigTableEntry 3 }
outerPacketSize OBJECT-TYPE
SYNTAX UnsignedShort
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"При передаче это размер внешнего инкапсулирующего
туннельного пакета (т. е. пакета IP с ESP)."
::= { iptfsConfigTableEntry 4 }
l2FixedRate OBJECT-TYPE
SYNTAX CounterBasedGauge64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Битовая скорость IP-TFS может быть указана как скорость в
линии L2. При передаче это целевая пропускная способность
(битовая скорость) в бит/сек (bps) для туннеля IP-TFS. Это
задаёт номинальную синхронизацию передачи пакетов
фиксированного размера. При включённом контроле перегрузок
скорость может снижаться."
::= { iptfsConfigTableEntry 5 }
l3FixedRate OBJECT-TYPE
SYNTAX CounterBasedGauge64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Битовая скорость IP-TFS может быть указана как скорость
пакетов L3. При передаче это целевая пропускная способность
(битовая скорость) в бит/сек (bps) для туннеля IP-TFS. Это
задаёт номинальную синхронизацию передачи пакетов
фиксированного размера. При включённом контроле перегрузок
скорость может снижаться."
::= { iptfsConfigTableEntry 6 }
dontFragment OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"При передаче запрещает разделять фрагменты пакета по
разным последовательным пакетам туннеля IP-TFS. Внутренние
пакеты, размер, не помещающиеся во внешний пакет, будут
отбрасываться."
::= { iptfsConfigTableEntry 7 }
maxAggregationTime OBJECT-TYPE
SYNTAX NanoSeconds
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"При передаче максимальным временем агрегирования является
наибольшее время удержания вложенных пакетов до отправки в
туннель IP-TFS. Внутренние пакеты, удерживаемые дольше
этого времени в текущей конфигурации туннеля будут
отбрасываться вместо постановки в очередь на передачу."
::= { iptfsConfigTableEntry 8 }
windowSize OBJECT-TYPE
SYNTAX UnsignedShort
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"При получении это максимальное число пакетов с нарушением
порядка, которые будут переупорядочены получателем IP-TFS.
Значение 0 отключает восстановление порядка."
::= { iptfsConfigTableEntry 9 }
sendImmediately OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"При получении внутренние пакеты передаются как можно
быстрее без ожидания потерянных и переупорядоченных внешних
пакетов. Выбор этой опции сокращает задержку вложенных
(пользовательских) пакетов, но может усилить нарушение
порядка доставки потока пакетов при наличии агрегирования
или иного переупорядочения."
::= { iptfsConfigTableEntry 10 }
lostPacketTimerInterval OBJECT-TYPE
SYNTAX NanoSeconds
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"При получении этот интервал задаёт время ожидания
получателем IP-TFS пропущенных пакетов, прежде чем счесть
их потерянными. Если не применяется send-immediately,
каждая потеря будет задерживать внутренние
(пользовательские) пакеты, пока не завершится отсчёт этого
таймера. Установка слишком малого значения может влиять на
переупорядочение и сборку."
::= { iptfsConfigTableEntry 11 }
ipsecStatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF IpsecStatsTableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Таблица базовой статистики IPsec."
::= { ipsecStatsGroup 1 }
ipsecStatsTableEntry OBJECT-TYPE
SYNTAX IpsecStatsTableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Запись (концептуальная строка) со сведения о конкретной
IKE SA."
INDEX { ipsecSaIndex }
::= { ipsecStatsTable 1 }
IpsecStatsTableEntry ::= SEQUENCE {
ipsecSaIndex Integer32,
-- Данные статистики пакетов
txPkts Counter64,
txOctets Counter64,
txDropPkts Counter64,
rxPkts Counter64,
rxOctets Counter64,
rxDropPkts Counter64
}
ipsecSaIndex OBJECT-TYPE
SYNTAX Integer32 (1..16777215)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Уникальное значение больше 0 для каждой SA. Рекомендуется
выделять значения подряд, начиная с 1. Значение для каждой
записи должно сохраняться при перезагрузке системы управления
элемента сети."
::= { ipsecStatsTableEntry 1 }
txPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Счётчик исходящих пакетов."
::= { ipsecStatsTableEntry 2 }
txOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Счётчик байтов в исходящих пакетах."
::= { ipsecStatsTableEntry 3 }
txDropPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Счётчик отброшенных исходящих пакетов."
::= { ipsecStatsTableEntry 4 }
rxPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Счётчик входящих пакетов."
::= { ipsecStatsTableEntry 5 }
rxOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Счётчик байтов во входящих пакетах."
::= { ipsecStatsTableEntry 6 }
rxDropPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Счётчик отброшенных входящих пакетов."
::= { ipsecStatsTableEntry 7 }
iptfsInnerStatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF IptfsInnerStatsSaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Таблица сведений о внутренних пакетах IP-TFS."
::= { iptfsInnerStatsGroup 1 }
iptfsInnerStatsTableEntry OBJECT-TYPE
SYNTAX IptfsInnerStatsSaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Запись со сведения для конкретной IP-TFS SA."
INDEX { iptfsInnerSaIndex }
::= { iptfsInnerStatsTable 1 }
IptfsInnerStatsSaEntry ::= SEQUENCE {
iptfsInnerSaIndex Integer32,
txInnerPkts Counter64,
txInnerOctets Counter64,
rxInnerPkts Counter64,
rxInnerOctets Counter64,
rxIncompleteInnerPkts Counter64
}
iptfsInnerSaIndex OBJECT-TYPE
SYNTAX Integer32 (1..16777215)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Уникальное значение больше 0 для каждой SA. Рекомендуется
выделять значения подряд, начиная с 1. Значение для каждой
записи должно сохраняться при перезагрузке системы управления
элемента сети."
::= { iptfsInnerStatsTableEntry 1 }
txInnerPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Общее число переданных внутренних пакетов IP-TFS. Считаются
лишь целые пакеты, т. е. все фрагменты пакета считаются
одним пакетом."
::= { iptfsInnerStatsTableEntry 2 }
txInnerOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Общее число переданных внутренних байтов IP-TFS. Считаются
только байты внутренних пакетов без учёта заполнения."
::= { iptfsInnerStatsTableEntry 3 }
rxInnerPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Общее число полученных внутренних пакетов IP-TFS."
::= { iptfsInnerStatsTableEntry 4 }
rxInnerOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Общее число полученных внутренних байтов IP-TFS. Байты
заполнения и издержки не учитываются."
::= { iptfsInnerStatsTableEntry 5 }
rxIncompleteInnerPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Общее число неполных внутренних пакетов IP-TFS. Обычно это
является результатом отсутствия фрагментов, а также может
быть следствием нарушения порядка или ошибок в полученных
внешних пакетах."
::= { iptfsInnerStatsTableEntry 6 }
iptfsOuterStatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF IptfsOuterStatsSaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Таблица со сведениями о IP-TFS."
::= { iptfsOuterStatsGroup 1 }
iptfsOuterStatsTableEntry OBJECT-TYPE
SYNTAX IptfsOuterStatsSaEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Запись со сведениями о конкретной IP-TFS SA."
INDEX { iptfsOuterSaIndex }
::= { iptfsOuterStatsTable 1 }
IptfsOuterStatsSaEntry ::= SEQUENCE {
iptfsOuterSaIndex Integer32,
-- Статистика для пакетов iptfs
txExtraPadPkts Counter64,
txExtraPadOctets Counter64,
txAllPadPkts Counter64,
txAllPadOctets Counter64,
rxExtraPadPkts Counter64,
rxExtraPadOctets Counter64,
rxAllPadPkts Counter64,
rxAllPadOctets Counter64,
rxErroredPkts Counter64,
rxMissedPkts Counter64
}
iptfsOuterSaIndex OBJECT-TYPE
SYNTAX Integer32 (1..16777215)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Уникальное значение больше 0 для каждой SA. Рекомендуется
выделять значения подряд, начиная с 1. Значение для каждой
записи должно сохраняться при перезагрузке системы управления
элемента сети."
::= { iptfsOuterStatsTableEntry 1 }
txExtraPadPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число переданных внешних пакетов IP-TFS с заполнением."
::= { iptfsOuterStatsTableEntry 2 }
txExtraPadOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число октетов заполнения, добавленных во внешние пакеты
IP-TFS с данными."
::= { iptfsOuterStatsTableEntry 3 }
txAllPadPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число переданных пакетов IP-TFS, содержащих лишь заполнение
(без данных во внутренних пакетах)."
::= { iptfsOuterStatsTableEntry 4 }
txAllPadOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число переданных октетов заполнения в пакетах IP-TFS без
данных во внутренних пакетах."
::= { iptfsOuterStatsTableEntry 5 }
rxExtraPadPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число полученных внешних пакетов IP-TFS с заполнением."
::= { iptfsOuterStatsTableEntry 6 }
rxExtraPadOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число полученных внешних пакетов IP-TFS с заполнением и
данными во внутренних пакетах."
::= { iptfsOuterStatsTableEntry 7 }
rxAllPadPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число полученных внешних пакетов IP-TFS с заполнением
без внутренних пакетов с данными."
::= { iptfsOuterStatsTableEntry 8 }
rxAllPadOctets OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число полученных октетов заполнения в пакетах
IP-TFS без данных во внутренних пакетах."
::= { iptfsOuterStatsTableEntry 9 }
rxErroredPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число внешних пакетов IP-TFS, отброшенных из-за ошибок."
::= { iptfsOuterStatsTableEntry 10 }
rxMissedPkts OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Число пропущенных внешних пакетов IP-TFS, указанных
пропусками порядковых номеров."
::= { iptfsOuterStatsTableEntry 11 }
--
-- Соответствие модуля iptfs
--
iptfsMIBConformances OBJECT IDENTIFIER
::= { iptfsMIBConformance 1 }
iptfsMIBGroups OBJECT IDENTIFIER
::= { iptfsMIBConformance 2 }
iptfsMIBCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"Заявление о соответствии для объектов,
реализующих IP-TFS MIB."
MODULE -- this module
MANDATORY-GROUPS {
iptfsMIBConfGroup,
ipsecStatsConfGroup,
iptfsInnerStatsConfGroup,
iptfsOuterStatsConfGroup
}
::= { iptfsMIBConformances 1 }
--
-- Группы MIB (блоки соответствия)
--
iptfsMIBConfGroup OBJECT-GROUP
OBJECTS {
congestionControl,
usePathMtuDiscovery,
outerPacketSize ,
l2FixedRate ,
l3FixedRate ,
dontFragment,
maxAggregationTime,
windowSize,
sendImmediately,
lostPacketTimerInterval
}
STATUS current
DESCRIPTION
"Набор объектов, предоставляемых на уровне
конфигурации IP-TFS SA."
::= { iptfsMIBGroups 1 }
ipsecStatsConfGroup OBJECT-GROUP
OBJECTS {
txPkts,
txOctets,
txDropPkts,
rxPkts,
rxOctets,
rxDropPkts
}
STATUS current
DESCRIPTION
"Набор объектов, обеспечивающих базовую статистику по SA."
::= { iptfsMIBGroups 2 }
iptfsInnerStatsConfGroup OBJECT-GROUP
OBJECTS {
txInnerPkts,
txInnerOctets,
rxInnerPkts,
rxInnerOctets,
rxIncompleteInnerPkts
}
STATUS current
DESCRIPTION
"Набор объектов, обеспечивающих статистику внутренних
пакетов IP-TFS по SA."
::= { iptfsMIBGroups 3 }
iptfsOuterStatsConfGroup OBJECT-GROUP
OBJECTS {
txExtraPadPkts,
txExtraPadOctets,
txAllPadPkts,
txAllPadOctets,
rxExtraPadPkts,
rxExtraPadOctets,
rxAllPadPkts,
rxAllPadOctets,
rxErroredPkts,
rxMissedPkts
}
STATUS current
DESCRIPTION
"Набор объектов, обеспечивающих статистику внешних
пакетов IP-TFS по SA."
"A collection of objects providing per SA IP-TFS
outer packet statistics."
::= { iptfsMIBGroups 4 }
END
<CODE ENDS>
5. Взаимодействие с IANA
Описанный здесь модуль MIB использует выделенное IANA значение OBJECT IDENTIFIER, внесенное в реестр SMI Network Management MGMT Codes Internet-standard MIB.
Таблица 1.
|
Десятичное значение |
Имя |
Описание |
|---|---|---|
|
246 |
iptfsMIB |
IP-TRAFFIC-FLOW-SECURITY-MIB |
6. Вопросы безопасности
Описанный здесь модуль MIB может считывать данные рабочего поведения IP-TFS. Последствия этого рассмотрены в [RFC9347], где описана функциональность.
В описанном модуле MIB нет объектов управления с MAX-ACCESS read-write или read-create, поэтому при корректной реализации модуля MIB не возникает риска изменения или создания злоумышленником объектов управления в этом модуле MIB с помощью прямых операций SNMP SET.
Некоторые из объектов модуля MIB могут быть чувствительными или уязвимыми в отдельных сетевых средах. К таким относятся объекты INDEX с MAX-ACCESS not-accessible и другие индексы из других модулей, раскрываемые через AUGMENT. Важно контролировать доступ к этим объектам даже с помощью GET или NOTIFY и может быть даже шифровать значения объектов при передаче через сеть по протоколу SNMP. Такие таблицы и объекты указаны ниже.
-
iptfsInnerStatsTable и iptfsOuterStatsTable. Доступ к статистике внутренних или внешних пакетов IP-TFS может раскрывать сведения, которые IP-TFS желает скрыть, такие как активность потоков, применяющих IP-TFS.
Версии SNMP до SNMPv3 не обеспечивали должной защиты. Даже в защищённой сети (например, использующей IPsec) не контролируется доступ и операции GET (чтение) для объектов этого модуля MIB.
Реализациям следует обеспечивать функции защиты, описанные в SNMPv3 [RFC3410], а реализации, заявляющие соответствие стандарту SNMPv3, должны включать полную поддержку аутентификации и конфиденциальности с использованием модели защиты по пользователям (User-based Security Model или USM) [RFC3414] с алгоритмом шифрования AES [RFC3826].Реализации могут также поддерживать модель транспортной защиты (Transport Security Model или TSM) [RFC5591] в сочетании с защищённым транспортом, таким как SSH [RFC5592] или TLS/DTLS [RFC6353].
Кроме того, развёртывание версий SNMP до SNMPv3 не рекомендуется. Взамен рекомендуется разворачивать SNMPv3 и включать криптографическую защиту. В дальнейшем клиент (оператор) отвечает за корректную настройку объекта SNMP в части предоставления доступа к экземпляру модуля MIB лишь уполномоченным участникам (пользователям) для выполнения пердусмотренных операций GET или SET (создание, изменение, удаление).
7. Литература
7.1. Нормативные документы
[RFC2119] Bradner, S., «Key words for use in RFCs to Indicate Requirement Levels», BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-editor.org/info/rfc2119>.
[RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., «Structure of Management Information Version 2 (SMIv2)», STD 58, RFC 2578, DOI 10.17487/RFC2578, April 1999, <https://www.rfc-editor.org/info/rfc2578>.
[RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., «Textual Conventions for SMIv2», STD 58, RFC 2579, DOI 10.17487/RFC2579, April 1999, <https://www.rfc-editor.org/info/rfc2579>.
[RFC2580] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., «Conformance Statements for SMIv2», STD 58, RFC 2580, DOI 10.17487/RFC2580, April 1999, <https://www.rfc-editor.org/info/rfc2580>.
[RFC3414] Blumenthal, U. and B. Wijnen, «User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3)», STD 62, RFC 3414, DOI 10.17487/RFC3414, December 2002, <https://www.rfc-editor.org/info/rfc3414>.
[RFC3826] Blumenthal, U., Maino, F., and K. McCloghrie, «The Advanced Encryption Standard (AES) Cipher Algorithm in the SNMP User-based Security Model», RFC 3826, DOI 10.17487/RFC3826, June 2004, <https://www.rfc-editor.org/info/rfc3826>.
[RFC5591] Harrington, D. and W. Hardaker, «Transport Security Model for the Simple Network Management Protocol (SNMP)», STD 78, RFC 5591, DOI 10.17487/RFC5591, June 2009, <https://www.rfc-editor.org/info/rfc5591>.
[RFC5592] Harrington, D., Salowey, J., and W. Hardaker, «Secure Shell Transport Model for the Simple Network Management Protocol (SNMP)», RFC 5592, DOI 10.17487/RFC5592, June 2009, <https://www.rfc-editor.org/info/rfc5592>.
[RFC6353] Hardaker, W., «Transport Layer Security (TLS) Transport Model for the Simple Network Management Protocol (SNMP)», STD 78, RFC 6353, DOI 10.17487/RFC6353, July 2011, <https://www.rfc-editor.org/info/rfc6353>.
[RFC8174] Leiba, B., «Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words», BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC9347] Hopps, C., «Aggregation and Fragmentation Mode for Encapsulating Security Payload (ESP) and Its Use for IP Traffic Flow Security (IP-TFS)», RFC 9347, DOI 10.17487/RFC9347, January 2023, <https://www.rfc-editor.org/info/rfc9347>.
7.2. Дополнительная литература
[RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, «Introduction and Applicability Statements for Internet-Standard Management Framework», RFC 3410, DOI 10.17487/RFC3410, December 2002, <https://www.rfc-editor.org/info/rfc3410>.
[RFC4301] Kent, S. and K. Seo, «Security Architecture for the Internet Protocol», RFC 4301, DOI 10.17487/RFC4301, December 2005, <https://www.rfc-editor.org/info/rfc4301>.
[RFC5348] Floyd, S., Handley, M., Padhye, J., and J. Widmer, «TCP Friendly Rate Control (TFRC): Protocol Specification», RFC 5348, DOI 10.17487/RFC5348, September 2008, <https://www.rfc-editor.org/info/rfc5348>.
[RFC9348] Fedyk, D. and C. Hopps, «A YANG Data Model for IP Traffic Flow Security», RFC 9348, DOI 10.17487/RFC9348, January 2023, <https://www.rfc-editor.org/info/rfc9348>.
Благодарности
Авторы благодарны Chris Hopps, Lou Berger, Tero Kivinen за помощь и отклики на модель MIB.
Адреса авторов
Don Fedyk LabN Consulting, L.L.C. Email: dfedyk@labn.net Eric Kinzie LabN Consulting, L.L.C. Email: ekinzie@labn.netПеревод на русский язык
Николай Малых
1Internet Engineering Task Force — комиссия по решению инженерных задач Internet.
2Internet Engineering Steering Group — комиссия по инженерным разработкам Internet.