Кожне повідомлення, яким обмінюються в коаліції NATO, несе заголовок, що повинен означати те саме для кожної системи, яка його торкається -- від термінала C2, який склав повідомлення, до вузлів ретрансляції, які переслали його, і до робочої станції штабного офіцера, яка його відобразила. STANAG 5048 -- це угода, що робить це можливим. Він визначає стандарт системи обробки повідомлень (MHS) для військового обміну повідомленнями NATO: структури полів заголовка, формати адрес, рівні пріоритетності, інструкції з обробки та процедури ретрансляції, які повинні впроваджувати всі сумісні системи. Для розробника, який створює платформу C2, тактичний шлюз обміну даними або програмно-визначене радіо з рівнем обміну повідомленнями, STANAG 5048 -- це специфікація, яка визначає, чи може ваша система обмінюватися повідомленнями нативно з ширшим стеком сумісності NATO чи вимагає індивідуального адаптера-моста для кожного нового партнера.

STANAG 5048 в архітектурі обміну повідомленнями NATO: сфера застосування та призначення

STANAG 5048 розташований на рівні обробки повідомлень комунікаційної архітектури NATO, над транспортом носія (чи то HF-радіо, SATCOM, чи IP-мережа) і під форматами даних прикладного рівня (чи то USMTF, APP-6, чи MIP). Його сфера застосування навмисно вузька: він визначає, як повідомлення пакується, адресується, пріоритезується та доставляється, а не що повідомлення містить. Це розділення відповідальності означає, що той самий заголовок STANAG 5048 може обгортати оперативний звіт у вигляді вільного тексту, структуроване повідомлення USMTF або двійкове вкладення даних, і інфраструктура обробки повідомлень маршрутизує та доставляє його без потреби тлумачити корисне навантаження.

Стандарт значною мірою спирається на рекомендації системи обробки повідомлень ITU-T X.400, адаптуючи цивільну структуру до військових вимог: засекречені реєстри адрес, витіснення за пріоритетністю, перевірку обов'язкових полів та забезпечення максимального часу ретрансляції. Він також підтримує процедурну неперервність з ACP 127, Союзницькою публікацією з питань зв'язку, яка визначала електричний трафік повідомлень NATO протягом Холодної війни. Системи, яким потрібно взаємодіяти із застарілою інфраструктурою ACP 127 -- яка все ще оперативно розгорнута в кількох членів альянсу -- повинні впроваджувати обидва стандарти та виконувати переклад форматів на межі шлюзу. Розуміння того, де закінчується STANAG 5048 і де починається старіша структура ACP 127, є істотним для будь-якого розробника, який створює шлюз обміну повідомленнями, що повинен з'єднувати два покоління.

Практична сфера відповідності STANAG 5048 охоплює п'ять функціональних областей: структуру заголовка та обов'язкові поля, формат адрес та конвенції індикаторів маршрутизації, обробку пріоритетності та управління чергами, семантику повідомлень про доставку (позитивне повідомлення про доставку та повідомлення про недоставку) і модель збереження та пересилання повідомлень. Система, яка правильно впроваджує всі п'ять областей, може обмінюватися повідомленнями з будь-якою іншою сумісною системою NATO без додаткового двостороннього налаштування. Це основна ціннісна пропозиція стандарту: він перетворює потенційно складну павутину двосторонніх угод на єдину багатосторонню мету відповідності. Як описано в контексті структур даних ADATP-34, узгодження стандартів на нижчих рівнях -- це те, що уможливлює багатший обмін даними на вищих рівнях.

Структура повідомлення: поля заголовка, формати адрес та рівні пріоритетності

Повідомлення STANAG 5048 складається з конверта (інформація про маршрутизацію та обробку) та вмісту (тіло повідомлення). Заголовок конверта містить визначений набір полів, деякі обов'язкові, а деякі умовні. Обов'язкові поля такі: ідентифікатор повідомлення (MSGID), який кодує індикатор маршрутизації відправника та серійний номер, що унікально ідентифікує повідомлення в потоці трафіку відправника; група дата-час (DTG) у форматі NATO (DDHHMMZ MON YY, наприклад, 191430Z JUN 26); адреса відправника; щонайменше одна адреса TO; та позначник пріоритетності. Відсутні або неправильно сформовані обов'язкові поля спричиняють відхилення повідомлення з повідомленням про недоставку (NDN), що ідентифікує проблемне поле за назвою та позицією.

Поля адрес містять натовські коди-індикатори теми (SIC) або адреси відкритою мовою (PLA), або обидва. SIC -- це ієрархічний буквено-цифровий ідентифікатор, узятий з натовського військового реєстру адрес, структурований як послідовність двосимвольних полів, що кодують націю, вид збройних сил, командний рівень та функціональну роль. SIC є авторитетними ключами маршрутизації: інфраструктура обробки повідомлень розв'язує кожен SIC в індикатор маршрутизації, що ідентифікує вузол ретрансляції, відповідальний за доставку, а потім пересилає повідомлення до цього вузла. PLA є зрозумілими людині еквівалентами, що відображаються кінцевим користувачам, але не використовуються для рішень про маршрутизацію. Одне поле адреси може містити кілька SIC, розділених визначеним роздільником, що дозволяє адресувати повідомлення одночасно кільком організаційним суб'єктам у межах одного блоку TO або INFO.

Рівні пріоритетності визначають пріоритет, з яким кожне повідомлення обробляється та ретранслюється. STANAG 5048 визначає п'ять рівнів: FLASH (Z), IMMEDIATE (O), PRIORITY (P), ROUTINE (R) та DEFERRED (D). FLASH зарезервований для повідомлень, що вимагають доставки протягом хвилин -- санкціонування удару, попередження про неминучу загрозу або екстрені комунікації. IMMEDIATE охоплює оперативно терміновий трафік із цільовим вікном доставки одна-дві години. PRIORITY -- це стандартний рівень для важливої оперативної інформації без суворого часового обмеження. ROUTINE охоплює плановий, адміністративний та логістичний трафік. DEFERRED використовується для масових передач та матеріалів низького пріоритету, які можна ставити в чергу на тривалі періоди. Кожен рівень пріоритетності несе визначений максимальний час ретрансляції на кожному вузлі обробки, і сумісні впровадження повинні вимірювати та забезпечувати ці межі.

Рівень маршрутизації: як повідомлення проходять мережами NATO та досягають адресатів

Маршрутизація в STANAG 5048 базується на індикаторі маршрутизації (RI), буквено-цифровому коді фіксованої довжини, який ідентифікує конкретний вузол обробки повідомлень у мережі NATO. Кожен вузол у мережі має унікальний RI, а глобальний каталог RI підтримується Агентством зв'язку та інформації NATO (NCIA). Коли повідомлення подається до локальної системи обробки повідомлень, система розв'язує SIC призначення в RI, звертаючись до своєї локальної копії каталогу RI, а потім обирає вихідну лінію ретрансляції, що пропонує найкоротшу кількість переходів або шлях з найвищим пріоритетом до кожного RI призначення. Де існує кілька шляхів, таблиця маршрутизації може віддавати перевагу різним лініям на основі типу лінії (HF-радіо для стійкості, IP-мережа для пропускної здатності) та поточного стану лінії.

Маршрутизація зі збереженням та пересиланням означає, що кожен вузол ретрансляції на шляху бере на себе опіку над повідомленням, постійно зберігає його та приймає відповідальність за доставку до наступного переходу. Якщо наступний перехід тимчасово недосяжний -- поширене явище в тактичних середовищах з переривчастим поширенням HF або процедурами радіомовчання -- вузол ретрансляції ставить повідомлення в чергу та повторює доставку, коли лінія відновлюється. Модель передачі опіки забезпечує, що повідомлення не втрачаються тихо, коли лінія обривається в середині передачі: вузол-відправник зберігає повідомлення, доки вузол-отримувач не підтвердить успішне отримання. Це принципово відрізняється від маршрутизації IP за принципом найкращого зусилля, де втрата пакетів є відповідальністю протоколів вищого рівня. Розуміння цієї відмінності є критичним для розробників, які інтегрують обробку повідомлень STANAG 5048 із сучасними мережевими стеками на основі IP, де є спокуса використовувати TCP як рівень надійності та повністю пропустити логіку збереження та пересилання MHS -- ярлик, що порушує сумісність зі застарілими вузлами, які очікують підтвердження доставки на рівні MHS.

Різноманітність маршрутів та резервна маршрутизація є явними вимогами в STANAG 5048. Кожен сумісний вузол ретрансляції повинен бути налаштований щонайменше з одним основним маршрутом та одним резервним маршрутом для кожного досяжного RI. Коли основний маршрут виходить з ладу, вузол автоматично перемикається на резервний маршрут без втручання оператора. Для тактичних вузлів, що працюють через HF-радіо, резервний маршрут може проходити через іншу частоту або іншу ієрархію ретрансляції (наприклад, обходячи тактичний концентратор ретрансляції та маршрутизуючи безпосередньо через стратегічну магістраль). Документування конфігурації таблиці маршрутизації та тестування шляху аварійного перемикання перед оперативним розгортанням є стандартною вимогою приймання для вузлів обміну повідомленнями NATO, і це конкретно перевіряється під час тестування сумісності CWIX.

Інтеграція системи обробки повідомлень: відносини між ACP 127, ACP 142 та STANAG 5048

Більшість членів NATO експлуатують гетерогенні середовища обміну повідомленнями, де співіснують системи з кількох поколінь. ACP 127 -- це найстаріший рівень: він визначає формат і процедури для форматованого трафіку повідомлень, що передається через телетайпні канали та ранні цифрові системи ретрансляції. Повідомлення ACP 127 використовують заголовок фіксованої ширини з позиційно визначеними полями, тіло у вигляді відкритого тексту та без нативної підтримки двійкових вкладень або структурованих даних. Багато застарілих військових терміналів обміну повідомленнями -- зокрема ті, що все ще розгорнуті на морських суднах та в деяких стаціонарних штабах -- створюють та обробляють лише трафік ACP 127. Шлюз, що повинен взаємодіяти з цими системами, потребує аналізатора ACP 127 та таблиці зіставлення, яка перекладає поля заголовка ACP 127 на їхні еквіваленти STANAG 5048 і навпаки.

ACP 142 запровадила обмін повідомленнями зі збереженням та пересиланням на основі X.400 у мережах NATO. Де ACP 127 є широкомовною моделлю (повідомлення передається один раз та отримується всіма вузлами, що одночасно моніторять канал), ACP 142 забезпечує доставку точка-точка з підтвердженням, логікою повторних спроб та звітуванням про недоставку. STANAG 5048 узгоджений з ACP 142: він використовує ту саму базову семантику доставки та розширює структуру ACP 142 специфічними для військових типами вмісту, маркуваннями класифікації та конвенціями натовського реєстру адрес. На практиці впровадження STANAG 5048 -- це впровадження ACP 142 з увімкненими військовими розширеннями. Розробники, які починають із базового впровадження ACP 142 -- доступні кілька стеків X.400 з відкритим вихідним кодом та комерційних -- повинні додати поверх ядра агента передачі повідомлень X.400 військові поля заголовка STANAG 5048, розв'язувач адрес SIC та планувальник черг за пріоритетністю.

Виклик сумісності трьох стандартів виникає в коаліційних операціях, де тактична група включає підрозділи з націй, що перебувають у різних точках модернізації обміну повідомленнями. З'єднувальний шлюз у штабі тактичної групи може потребувати отримання трафіку ACP 127 від застарілих терміналів, обробки його через сумісне зі STANAG 5048 сховище повідомлень та подальшої доставки через транспорт ACP 142 до вузлів штабу, підключених до IP -- усе це зберігаючи оригінальні поля заголовка, пріоритетність та інструкції з обробки через ланцюг перекладу. Тестування цього шляху з'єднання від початку до кінця перед розгортанням, а не виявлення прогалин під час першого оперативного обміну повідомленнями, є стандартною рекомендованою практикою. Процес сертифікації CWIX конкретно включає тестові сценарії, що задіюють ці багатопоколінні шляхи з'єднання.

Впровадження сховищ повідомлень та пересилання для доставки зі збереженням та пересиланням

Сховище повідомлень -- це рівень постійності в ядрі впровадження STANAG 5048. Кожне повідомлення, отримане вузлом обробки, повинно бути записане в сховище повідомлень до того, як підтвердження отримання повертається відправнику. Ця гарантія впорядкування -- спочатку зберегти, потім підтвердити -- забезпечує, що жодне повідомлення не втрачається, навіть якщо вузол виходить з ладу між підтвердженням та фактичною ретрансляцією. Сховище повинно бути довговічним: вмикання-вимикання живлення, збої програмного забезпечення та апаратні відмови не повинні спричиняти тихе відкидання повідомлень. На практиці це означає запис у незмінне сховище (реляційна база даних або журнал попереднього запису на флеш-сховищі) перед підтвердженням та відновлення стану сховища з постійного сховища при перезапуску.

Кожне повідомлення в сховищі несе скінченний автомат стану доставки з визначеними станами: отримано, поставлено в чергу на ретрансляцію, в дорозі, доставлено (отримано PDN) та невдало (згенеровано NDN). Переходи скінченного автомата керуються подіями: спроба ретрансляції, підтвердження отримання від наступного переходу, тайм-аут або дія оператора. Правильне впровадження скінченного автомата вимагає ретельної обробки логіки повторних спроб: коли спроба доставки перевищує тайм-аут, стан повідомлення повинен повернутися до поставлено в чергу на ретрансляцію, а не залишатися в дорозі, і лічильник повторних спроб повинен збільшитися. Коли лічильник повторних спроб досягає максимально дозволеної кількості спроб -- визначеної для кожного рівня пріоритетності в STANAG 5048 -- стан повідомлення переходить до невдало, генерується NDN та доставляється назад відправнику. Розробники часто недостатньо специфікують шлях генерування NDN, що призводить до відправників, які ніколи не отримують повідомлення про невдалу доставку та припускають успіх.

Ключове розуміння: Найпоширеніша прогалина впровадження в нових розгортаннях STANAG 5048 -- це шлях відновлення сховища повідомлень. Багато впроваджень записують повідомлення в сховище правильно за нормальної роботи, але не відновлюють правильно стан "в дорозі" після збою або перезапуску. Повідомлення, які були в дорозі, коли вузол вийшов з ладу, залишаються в неоднозначному стані: наступний перехід міг або не міг їх отримати. Правильна процедура відновлення полягає в тому, щоб трактувати всі повідомлення в дорозі як непідтверджені при перезапуску та повторно ставити їх у чергу для повторної передачі, покладаючись на логіку виявлення дублікатів повідомлень на вузлі-отримувачі для відкидання будь-яких дублікатів, які були успішно доставлені до збою. Впровадження цього шляху відновлення та явне тестування його -- зокрема симульовані збої вузлів у середині передачі -- є передумовою для будь-якого сховища повідомлень, що претендує на відповідність STANAG 5048.

Механізм пересилання з'єднує сховище повідомлень із вихідними лініями ретрансляції. Для кожного рівня пріоритетності пересилач підтримує окрему чергу та відправляє повідомлення на лінію ретрансляції в суворому порядку пріоритету. Повідомлення FLASH, що надходить, поки пересилач передає великий пакет ROUTINE, повинно витіснити поточну передачу: процедури STANAG 5048 визначають механізм витіснення, де вузол-відправник сигналізує вузлу-отримувачу, що очікує повідомлення вищої пріоритетності, поточна передача призупиняється, повідомлення FLASH передається та підтверджується, а призупинена передача відновлюється. Правильне впровадження витіснення вимагає, щоб формування кадрів на рівні лінії підтримувало призупинення в середині потоку, що є простим для з'єднань TCP, але вимагає явної підтримки протоколу для ліній HF-радіо, що використовують STANAG 5066 або подібні стандарти каналу передачі даних.

Безпека: автентифікація повідомлень, маркування класифікації та зашифрований транспорт

STANAG 5048 включає явні положення щодо автентифікації повідомлень та обробки класифікації. Заголовок повідомлення містить поле індикатора класифікації, яке повинно нести одне з визначених маркувань класифікації NATO: UNCLASSIFIED, NATO RESTRICTED, NATO CONFIDENTIAL, NATO SECRET або COSMIC TOP SECRET. Кожен вузол ретрансляції на шляху повідомлення повинен перевірити, що його власний рівень акредитації класифікації достатній для обробки повідомлення, перш ніж приймати опіку. Вузол ретрансляції, акредитований до NATO CONFIDENTIAL, повинен відхиляти будь-яку спробу маршрутизувати трафік NATO SECRET через нього та повертати NDN з кодом відхилення за невідповідністю класифікації. Цей механізм забезпечення запобігає тому, щоб засекречені повідомлення випадково проходили через неакредитовані вузли через неправильну конфігурацію таблиці маршрутизації.

Автентифікація повідомлень у STANAG 5048 впроваджується на двох рівнях. На рівні повідомлення до вмісту повідомлення може застосовуватися цифровий підпис (сумісний зі STANAG 4774 та 4778, натовськими стандартами маркування конфіденційності та захисного маркування), що забезпечує наскрізну автентифікацію від відправника до одержувача, яка переживає переходи ретрансляції. На рівні лінії транспортне шифрування є обов'язковим для всіх ліній, що несуть засекречений трафік: держави-члени NATO зобов'язані використовувати затверджене криптографічне обладнання або програмні впровадження, сумісні з NSA Suite B (AES-256-GCM для масового шифрування, ECDH P-384 для узгодження ключів) для нових розгортань. Відмінність між шифруванням на рівні лінії (яке захищає трафік на окремих переходах, але залишає повідомлення у відкритому тексті всередині вузлів ретрансляції) та наскрізним шифруванням на рівні повідомлення (яке захищає вміст через усі переходи ретрансляції) є важливою для архітекторів систем: лише шифрування на рівні лінії недостатнє для повідомлень, що проходять через вузли ретрансляції в опіці іноземних держав.

Маркування класифікації повинні переживати всі переходи ретрансляції без змін. Вузол ретрансляції, що видаляє, знижує або змінює маркування класифікації -- навіть ненавмисно, через крок нормалізації заголовка, що відкидає нерозпізнані поля -- ввів збій безпеки, який може бути не одразу видимим, але спричинить неправильну обробку повідомлення вузлами нижче за течією. Тестування шляху збереження маркування класифікації через кожен перехід ретрансляції в запланованій топології маршрутизації повідомлень є конкретним тестовим сценарієм CWIX, і відмови в цій області історично були найпоширенішою причиною умовної (а не повної) сертифікації сумісності. Розробники повинні трактувати збереження поля класифікації як вимогу коректності першого класу, а не як запізнілу думку, що має бути врахована під час інтеграційного тестування.

Тестування відповідності STANAG 5048: перевірка сумісності та участь у CWIX

Тестування впровадження STANAG 5048 проходить у три фази, що поступово збільшують обсяг заяви про сумісність. Перша фаза -- це внутрішнє тестування на відповідність: будується всеосяжний тестовий набір повідомлень для задіювання кожної комбінації обов'язкових та умовних полів заголовка, кожного рівня пріоритетності, кожного варіанту формату адрес (лише SIC, лише PLA та змішаний), кожної інструкції з обробки та обох шляхів -- позитивної доставки (PDN) та негативної доставки (NDN). Кожен тестовий випадок має визначений очікуваний результат відносно тексту специфікації STANAG 5048. Прогін цього тестового набору відносно впровадження та документування результатів створює пакет доказів відповідності, що є передумовою для наступних фаз тестування. Автоматизоване регресійне тестування цього пакета як частини конвеєра неперервної інтеграції запобігає введенню регресій відповідності під час звичайної розробки функцій.

Друга фаза -- це двостороннє тестування із сертифікованим впровадженням STANAG 5048 партнерської держави. Двостороннє тестування задіює сценарії, які внутрішнє тестування не може охопити: обмін повідомленнями через живу лінію ретрансляції, розв'язання таблиці маршрутизації відносно зовнішнього реєстру адрес SIC та взаємодію між двома незалежно впровадженими скінченними автоматами під час сценаріїв збою доставки та повторних спроб. NCIA NATO підтримує тестову мережу для цієї мети, доступну через програму TIDE (Transformational Interoperability for Defence). Двостороннє тестування зазвичай виявляє відмінності впровадження в обробці граничних випадків -- обмеження розміру повідомлень, обробка спеціальних символів у полях адрес та тлумачення кодів причин NDN -- які не є очевидними лише з тексту специфікації. Розв'язання цих відмінностей перед переходом до CWIX заощаджує значний час під час самого заходу.

CWIX (Coalition Warrior Interoperability eXploration, eXperimentation, eXamination, and eXercise) -- це щорічний захід NATO, де системи тестуються на повному діапазоні впроваджень NATO та партнерських держав одночасно. Участь вимагає подання пакета технічних даних до NCIA за кілька місяців до заходу, що охоплює заявлені можливості системи, докази відповідності та запропоновані тестові сценарії. Під час заходу системи підключаються до тестової мережі CWIX та виконують попередньо узгоджені тестові сценарії з кількома партнерами паралельно. Успішне завершення тестових сценаріїв CWIX та прийняття результатів NCIA створює Сертифікат сумісності NATO, що є формальним доказом відповідності, визнаним по всьому альянсу. Для команди розробників, новій у цьому процесі, посібник із сертифікації CWIX надає практичну дорожню карту підготовки, що охоплює вимоги до документації, процедури доступу до тестової мережі та найпоширеніші області, де учасники-новачки стикаються з проблемами.

Відповідність обміну повідомленнями NATO, вбудована у ваш стек C2

Corvus HEAD впроваджує стандарти обміну повідомленнями NATO, включно зі STANAG 5048, як частину свого рівня сумісності, уможливлюючи обмін повідомленнями із союзницькими системами C2 без індивідуальної інтеграційної роботи.

Дізнатися про Corvus HEAD → Замовити брифінг

Цей аналіз підготували інженери Corvus Intelligence, які створюють критично важливі застосунки ISR та польові застосунки для оборонних та урядових організацій. Дізнатися про нашу команду →