Научная статья на тему 'Инструментальная система проектирования сетей AFDX'

Инструментальная система проектирования сетей AFDX Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
158
30
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
AFDX / ИНСТРУМЕНТАЛЬНАЯ СИСТЕМА / ВИРТУАЛЬНЫЙ КАНАЛ / БОРТОВАЯ СЕТЬ / СИСТЕМА РЕАЛЬНОГО ВРЕМЕНИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Вдовин П.М.

В данной работе описана задача организации периодически передаваемых сообщений для бортовых сетей, основанных на стандарте Avionics Full Duplex Ethernet (AFDX), и предложен общий подход к ее решению. На основе описанного подхода разработана инструментальная система, которая предоставляет возможность интерактивного редактирования входных данных задачи, запуска реализованного алгоритма и отображения результатов его работы. Благодаря высокой модульности системы возможен запуск отдельных этапов алгоритма, а также запуск с выключением отдельных процедур, что позволяет в дальнейшем исследовать их эффективность.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Инструментальная система проектирования сетей AFDX»

УДК 004.031.43

П. М. Вдовин

Московский государственный университет

Инструментальная система проектирования сетей

AFDX

В данной работе описана задача организации периодически передаваемых сообщений для бортовых сетей, основанных на стандарте Avionics Full Duplex Ethernet (AFDX), и предложен общий подход к ее решению. На основе описанного подхода разработана инструментальная система, которая предоставляет возможность интерактивного редактирования входных данных задачи, запуска реализованного алгоритма и отображения результатов его работы. Благодаря высокой модульности системы возможен запуск отдельных этапов алгоритма, а также запуск с выключением отдельных процедур, что позволяет в дальнейшем исследовать их эффективность.

Ключевые слова: AFDX, инструментальная система, виртуальный канал, бортовая сеть, система реального времени.

P.M. Vdovin

Lomonosov Moscow State University

A tool for AFDX networks design

In this paper, the task of periodically transmitted messages organization for onboard data networks based on Avionics Full Duplex Ethernet (AFDX) standard is formalized and the common approach to its solution is proposed. Based on this approach, a tool is designed, which provides an opportunity for task input data editing, running implemented algorithm and presenting the results of its solution. Due to the high modularity of the tool, running of algorithm's separate steps is possible, as well as execution without some procedures, which provides a further examine of their effectiveness.

Key words: AFDX, tool for network design, virtual link, onboard network, real-time system.

1. Введение

Проектирование бортовых информационно-управляющих систем является трудоемкой задачей, включающей в себя как настройку системы согласно используемым стандартам, так и проверку корректности и удовлетворения требованиям реального времени. Одной из возникающих задач является построение коммуникационной сети передачи данных между компонентами системы, в которых периодически передаваемые сообщения доставляются до получателя не дольше заданных ограничений на длительность доставки.

В настоящее время в гражданской авиации широко применяются бортовые коммутируемые сети [1] на основе стандарта Avionics Full Duplex Ethernet (AFDX) [2]. Сеть AFDX представляет собой коммутируемую сеть с коммутацией пакетов, использующую понятие виртуального канала для обеспечения передачи сообщений между абонентами сети с заданными ограничениями на длительность передачи. Виртуальный канал позволяет фиксировать маршрут передачи сообщений и обеспечивать гарантированную пропускную способность. Данные характеристики обеспечиваются с помощью специальных параметров виртуального канала, а именно периода передачи кадра, его максимального джиттера и размера. Зная эти параметры, можно с помощью известных подходов [3] вычислить оценку длительности передачи сообщения.

В работе представлен программный инструмент, позволяющий по заданному описанию периодически передаваемых сообщений и их ограничений спроектировать виртуальные каналы в заданной сети AFDX. Данный инструмент позволяет как задавать ограничения на длительность передачи сообщений, их размеры и периоды передачи, так и учитывать особенности сетей AFDX, такие как возможность использования различных стратегий буферизации на выходных портах коммутаторов или возможность передавать несколько сообщений по одному виртуальному каналу.

2. Особенности стандарта AFDX

Стандарт AFDX описывает управление передачей сообщений в бортовых сетях на основе традиционного стандарта Ethernet 802.3. Согласно стандарту AFDX, бортовая сеть состоит из следующих компонент:

• абоненты, передающие сообщения;

• оконечные системы - системы, обеспечивающие интерфейс между абонентами и сетью;

• пакетные коммутаторы, соединяемые линиями передачи данных.

Каждый абонент подключен к оконечной системе, причем к одной оконечной системе может быть подключено несколько абонентов. Передача сообщений между абонентами производится через виртуальный канал по выделенным, заранее заданным маршрутам в сети, причем маршруты представляют собой дерево в сети передачи данных от одной оконечной системы-отправителя до одной или более оконечной системы-получателя. По виртуальному каналу могут передаваться несколько сообщений только от одного абонента.

Сообщение от абонента попадает на оконечную систему через специально выделенный порт. На оконечной системе производится разбиение сообщений на порции данных (кадры) согласно протоколу TCP/IP. В каждом кадре указывается номер виртуального канала, с помощью которого коммутатор может определить дальнейший маршрут следования кадра. Стандартная для Ethernet маршрутизация по MAC-адресу в AFDX не используется. После доставки кадра на оконечную систему-получатель (возможно, одну из нескольких) он буферизуется для последующей сборки сообщения. После прихода последнего кадра собранное сообщение направляется абонентам-получателям.

3. Задача построения виртуальных каналов и маршрутов для них в сетях AFDX

Сеть AFDX задается ориентированным графом, вершинами которого является множество коммутаторов и оконечных систем, дугами являются каналы передачи данных, для которых также задается пропускная способность. Для каждой оконечной системы задано множество абонентов, которые к ней подключены, причем каждый абонент подключен только к одной оконечной системе. Каждая оконечная система подключена только к одному каналу передачи данных.

На вход задаче подается множество сообщений, для каждого из которых задаются следующие параметры:

• size (байт) - размер сообщения;

• Т (мс) - период передачи сообщения;

• абонент-отправитель сообщения и множество абонентов-получателей сообщения, которые подключены к оконечным системам, отличным от оконечной системы-отправителя.

Для каждого сообщения заданы следующие ограничения:

• сообщение должно передаваться не менее одного раза в период1;

• т (мс) - максимальная длительность передачи сообщения с момента выдачи сообщения от абонента оконечной системе-отправителю до момента получения сообщения всеми абонентами-получателями.

Задача заключается в построении множества виртуальных каналов и построении для них маршрутов в физической сети обмена данными. Для каждого виртуального канала должны быть определены следующие параметры:

• ЬМ (байт) - максимальный размер кадра, передаваемый по данному виртуальному каналу; согласно стандарту, размер кадра лежит в следующих пределах: 64 ^ ЬМ ^ 1518 байт;

• ВАС (мс) - минимальный промежуток времени между передачей кадров при нулевом джиттере порождения кадров; согласно стандарту, данное значение лежит в промежутке от 1 до 128 мс и является степенью двойки;

• ЬМ (мкс) - максимальный джиттер порождения кадров на оконечной системе-отправителе (см. рис. 1); данное значение используется при мультиплексировании виртуальных каналов и пояснено далее;

• оконечная система-отправитель и множество оконечных систем-получателей кадров данного виртуального канала;

• маршрут передачи кадров в сети, представляющий собой дерево, в котором корнем является оконечная система-отправитель, а листьями - все оконечные системы-получатели кадров виртуального канала;

• множество сообщений, передаваемых по данному виртуальному каналу; сообщения должны исходить из одного абонента-отправителя.

Рис. 1. Мультиплексирование виртуальных каналов с помощью джиттера

На рис. 1 показано, что кадры виртуальных каналов vil и vl2 не могут быть переданы строго регулярно (с интервалом между кадрами, равным BAG). При сдвиге кадров относительно BAG на величину, не превышающую JM, кадры могут быть переданы, не нарушая регулярности передачи.

При построении виртуальных каналов и маршрутов для них должны выполняться следующие ограничения.

(1) Суммарная пропускная способность, зарезервированная под виртуальные каналы, проходящие через физический канал передачи данных, не превосходит его пропускной способности.

(2) Частота передачи кадров каждого виртуального канала соответствует частоте выдачи сообщений. Данное ограничение возникает из того, что все кадры одного сообщения должны поступить в канал до выдачи следующего сообщения, т. е. за период Т.

1В данной работе рассматривается случай, при котором сообщение порождается один раз в период; если сообщение порождается чаше одного раза в период, то передача всех его кадров не гарантируется, при этом кадры могут сбрасываться коммутатором.

(3) Максимальный джиттер2 на оконечных системах-отправителях не должен превосходить 500 мкс.

(4) Максимальная длительность передачи каждого сообщения не превосходит заданных ограничений.

4. Подход к решению задачи

Алгоритм организации передачи сообщений основан на жадных стратегиях и стратегиях ограниченного перебора. Ограниченный перебор используется в случае неуспешного завершения жадных процедур. В случае неуспешного назначения виртуальных каналов используется процедура агрегации, целью которой является построение виртуальных каналов, через которые передается более одного сообщения. На определенных этапах алгоритма используются результаты, полученные в других работах.

Общая схема алгоритма следующая.

Шаг 1. Для каждого сообщения выделить виртуальный канал и произвести настройку параметров LM, BAG и JM с учетом ограничения (2). На данном шаге используется подход, основанный на методе, который описан в работе [4].

Шаг 2. Для каждого виртуального канала проверить выполнение ограничения (3). Если ограничение выполняется не для всех виртуальных каналов, произвести процедуру агрегации. Входом процедуры являются виртуальные каналы, для которых не выполняется ограничение. Процедура объединяет сообщения, исходящие от одного абонента, в один виртуальный канал (с настройкой новых параметров LM, BAG и JM) таким образом, чтобы выполнялись ограничения (2) и (3). Прежние виртуальные каналы этих сообщений удаляются.

Шаг 3. Для каждого виртуального канала произвести построение маршрута с учетом ограничения (1). На данном шаге может использоваться алгоритм построения маршрута от одного отправителя к нескольким получателям, приведенный в работе [5]. Если построить маршрут не удается, выполняется процедура ограниченного перебора, которая заключается в переборе всех подмножеств заданной мощности уже назначенных виртуальных каналов с целью перепостроения их маршрутов таким образом, чтобы можно было построить маршрут для текущего виртуального канала. При неуспешном выполнении процедуры построение рассматриваемого виртуального канала считается неуспешным.

Шаг 4. Для каждого сообщения произвести вычисление длительности передачи сообщений и проверить выполнение ограничения (4). Если ограничения не выполнены, произвести процедуру переконфигурации виртуального канала, по которому передается сообщение, заключающуюся в попытке перенастроить параметры LM, BAG и JM с учетом оценок длительности передачи. Если после выполнения процедуры для исходного сообщения не выполняется ограничение (4), то назначение сообщения считается невозможным и сообщение удаляется из виртуального канала.

На основе описанного подхода была разработана инструментальная система, описанная в следующем разделе.

5. Описание инструментальной системы проектирования сетей AFDX

Реализованная инструментальная система состоит из двух основных модулей: модуля редактирования и модуля построения виртуальных каналов.

Модуль редактирования реализует интерфейс для конечного пользователя для задания входных данных и отображения результатов алгоритма. Данный модуль реализован на языке Python версии 2.7 с использованием библиотеки PYQT4 и состоит из следующих подмодулей.

2Данное требование исходит из рекомендаций, описанных в стандарте [2].

• Подмодуль редактирования сети AFDX — позволяет интерактивно задавать и отображать граф сети и задавать различные параметры, такие как пропускная способность каналов передачи данных, стратегии буферизации на выходных портах коммутаторов.

• Подмодуль редактирования сообщений — позволяет задавать множество передаваемых сообщений и их свойства: size, Т, т, отправителя и получателей сообщения. Также можно указывать существующий виртуальный канал для передачи.

• Подмодуль редактирования виртуальных каналов — позволяет задавать вручную, редактировать и отображать существующие виртуальные каналы и их свойства: оконечную систему-отправителя, множество оконечных систем-получателей, BAG, LM, маршрут передачи кадров в сети. Маршрут передачи также отображается на графе сети AFDX.

• Подмодуль внешнего интерфейса — используется для передачи заданных пользователем входных данных модулю построения виртуальных каналов и получения результатов алгоритма. Для передачи данных генерируется файл в формате XML с описанием сети и входных данных. После отработки алгоритма файл с описанием построенных виртуальных каналов в формате XML передается обратно и после обработки отображается с помощью подмодуля редактирования виртуальных каналов. В данном подмодуле также можно запускать отдельные процедуры алгоритма, такие как проверка заданной конфигурации на корректность (в плане проверки выполнения ограничений (1)—(4)), вычисление длительности передачи кадров для заданных вручную виртуальных каналов.

Интерфейс описанного модуля изображен на рис. 2.

File Actions Edit

Vm ■ я. « .?. х о х

verify design estlmate_response_times

« в R н X'' н я Virtual links

$ Designed for Data Flow 3

i Designed VL 2

BAG:1 ms Lmax: 847 bytes Response Time: 1080 microsec... Source: endSysteml Destinations: endSystem2 1

1 Data flows

IФ Data Flow 1

- 3ata Flow 2

Message Size: 4000 bytes Period: 10 ms •Tmax: 0 ms J max: 0 ms Source: partitionl 1

Рис. 2. Интерфейс инструментальной системы проектирования сетей AFDX

Модуль построения виртуальных каналов реализует описанную выше общую схему алгоритма построения виртуальных каналов на основе ряда подключаемых процедур. В основе модуля лежит подмодуль представления модели входных данных задачи. В модуле реализован ряд процедур, которые используют представление модели задачи для задания входных данных.

• Процедура конфигурации параметров виртуального канала. Данная процедура предназначена для определения параметров ВАС, ЬМ и .]М для виртуального канала, по которому передается только одно сообщение. Алгоритм основан на методе из работы [4].

• Процедура агрегации виртуальных каналов.

• Процедура построения маршрутов виртуальных каналов.

• Процедура ограниченного перебора, вызываемая в случае, когда невозможно построить маршрут виртуального канала.

• Процедура вычисления оценки длительности передачи кадров и сообщений. Система позволяет реализовывать и подключать любой из известных методов оценки длительности передачи кадров, для чего необходимо адаптировать модель представления входных данных под модель, используемую тем или иным средством вычисления оценки.

• Процедура переконфигурации виртуальных каналов, выполняющаяся в случае нарушения ограничений на длительность передачи кадров.

Кроме описанных процедур, в модуле имеется внешний интерфейс, который позволяет принимать на вход файлы в формате XML с описанием входных данных и преобразовывать их во внутреннее представление и возвращать файлы с описанием построенных виртуальных каналов.

Запуск алгоритма производится из командной строки путем задания пути к файлу с описанием входных данных задачи и задания дополнительных параметров. С помощью параметров командной строки можно как включать/отключать использование определенных процедур в процессе решения задачи (таких, как процедура агрегации, процедура ограниченного перебора, процедура переконфигурации), так и задавать другие параметры, такие как глубина ограниченного перебора. Кроме того, существует возможность запускать отдельные этапы алгоритма, такие как проверка входных данных на корректность в плане выполнения ограничений (1)—(4) или вычисление длительности передачи кадров для заданных виртуальных каналов.

6. Заключение

Представленная в данной работе инструментальная система позволяет производить автоматическое построение бортовых сетей на основе стандарта AFDX. Система обладает высокой модульностью и сочетает в себе удобный интерфейс для интерактивного задания входных данных задачи и отображения результатов работы алгоритма, так и запуск отдельных этапов алгоритма или запуск алгоритма с включением/выключением отдельных процедур. Последняя указанная возможность позволяет исследовать эффективность жадных стратегий и процедур ограниченного перебора, что представляет как практический, так и научный интерес.

По теме статьи автором будет сделан доклад на предстоящей II Международной научной конференции «Инжиниринг и телекоммуникации» Москва, 18-19 ноября 2015 года.

Литература

1. Balashov V., Kostenko V., Vdovin P. [et al.] An analysis of approaches to onboard networks design // Proc. of the Intern. Science and Technology Conf. Modern Networking Technologies. M.: MAKS Press, 2014. P. 20-24.

2. Aircraft Data Network. Part 7. Avionics Full Duplex Switched Ethernet (AFDX) Network / Ed. by Courtney R. Annapolis: Aeronautical Radio, 2005.

3. Scharbarg J. L., Fraboul C. Methods and tools for the temporal analysis of avionic networks // New Trends in Technologies: Control, Management, Computational Intelligence and Network Systems. Rijeka: INTECH Open Access Publisher, 2010. P. 413-438.

4. Al Sheikh A. [et al.] Optimal design of virtual links in AFDX networks // Real-Time Systems. 2013. V. 49, N 3. P. 308-336.

5. Seok Y. [et al.] Explicit multicast routing algorithms for constrained traffic engineering // The Seventh IEEE Symposium on Computers and Communications. Taormina: IEEE, 2002. P. 455-461.

References

1. Balashov V., Kostenko V., Vdovin P. [et al.] An analysis of approaches to onboard networks design. Proc. of the Intern. Science and Technology Conf. Modern Networking Technologies. M.: MAKS Press, 2014. P. 20-24.

2. Courtney R. Aircraft Data Network. Part Т. Avionics Full Duplex Switched Ethernet (AFDX) Network. Annapolis: Aeronautical Radio, 2005.

3. Scharbarg J. L., Fraboul C. Methods and tools for the temporal analysis of avionic networks. New Trends in Technologies: Control, Management, Computational Intelligence and Network Systems. Rijeka: INTECH Open Access Publisher, 2010. P. 413-438.

4. Al Sheikh A. [et al.] Optimal design of virtual links in AFDX networks. Real-Time Systems. 2013. V. 49, N 3. P. 308-336.

б. Seok Y. [et al.] Explicit multicast routing algorithms for constrained traffic engineering. The Seventh IEEE Symposium on Computers and Communications. Taormina: IEEE, 2002. P. 455-461.

Поступила в редакцию 03.06.2015.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.