Научная статья на тему 'Исследование эффективности процедуры агрегации виртуальных каналов при построении бортовых коммутируемых сетей'

Исследование эффективности процедуры агрегации виртуальных каналов при построении бортовых коммутируемых сетей Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
134
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
AFDX / КОММУТАТОР / SWITCH / ВИРТУАЛЬНЫЙ КАНАЛ / VIRTUAL LINK / БОРТОВАЯ СЕТЬ / СИСТЕМА РЕАЛЬНОГО ВРЕМЕНИ / REAL-TIME SYSTEMS / ONBOARD NETWORKS

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

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

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

An analysis of virtual links aggregation procedure effectiveness during onboard switched networks design

In this work a task of periodically transmitted messages organization for onboard data network based on Avionics Full Duplex Ethernet (AFDX) standard is formalized and a common approach of it’s solution is proposed. One of this task solution’s important step is aggregation procedure, which forms the virtual link used for transmitting several messages outgoing from one partition. In this work the aggregation procedure is described in depth and experimental results of its effectiveness investigation are presented.

Текст научной работы на тему «Исследование эффективности процедуры агрегации виртуальных каналов при построении бортовых коммутируемых сетей»

УДК 004.031.43

П. М. Вдовин1, В. А. Костенко2

ИССЛЕДОВАНИЕ ЭФФЕКТИВНОСТИ ПРОЦЕДУРЫ АГРЕГАЦИИ ВИРТУАЛЬНЫХ КАНАЛОВ ПРИ ПОСТРОЕНИИ БОРТОВЫХ КОММУТИРУЕМЫХ СЕТЕЙ

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

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

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

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

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

2. Сети AFDX. Стандарт AFDX [4] описывает управление бортовыми сетями на основе традиционного стандарта Ethernet 802.3. Согласно стандарту AFDX, сеть состоит из следующих элементов:

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

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

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

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

1 Факультет ВМК МГУ, асп., e-mail: pavel.vdovinQgmail.com

2 Факультет ВМК МГУ, ведущ. науч. сотр., к.т.н., e-mail: kostmsuQgmail.com

и одна или более оконечная система-получатель. При этом по одному виртуальному каналу могут передаваться сообщения только от одного абонента.

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

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

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

Сеть AFDX будем описывать ориентированным графом G = (N U К,Е), где N — множество оконечных систем, К — множество коммутаторов, Е — множество дуг, соединяющих элементы из множества N U К. Для каждой дуги е € Е, е = существует парная дуга* е' € Е,

е' = (&2, и задана пропускная способность Re, причем Re = Re>.

Для каждой оконечной системы п € N задано множество абонентов Ап С А (А — множество всех абонентов), которые к ней подключены, причем каждый абонент подключен только к одной оконечной системе. Каждая оконечная система подключена только к одному каналу передачи данных. Входными данными задачи являются потоки данных между абонентами, которые задаются в виде множества периодически передаваемых сообщений MSG = {rnsg}, для каждого из которых задаются следующие параметры:

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

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

• srcmsg € А — абонент-отправитель сообщения;

• {dstmsg} С А — множество абонентов-получателей сообщения, абоненты-получатели должны быть подключены к оконечным системам, отличным от оконечной системы-отправителя: dstmsg ^ А-п' £ Ап.

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

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

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

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

Задача заключается в построении множества виртуальных каналов VL = {vl} и построении для них маршрутов в физической сети обмена данными. По одному виртуальному каналу может передаваться несколько сообщений. Сообщения на оконечной системе-отправителе разбиваются на кадры, и в сеть обмена оконечная система передает кадры. Сообщение считается принятым, когда получен последний его кадр. Для каждого виртуального канала должны быть определены следующие параметры:

• LMvi (байт) — максимальный размер кадра, передаваемый по данному виртуальному каналу; согласно стандарту, размер кадра лежит в следующих пределах: 64 ^ /.Л/,./ ^ 1518 байт, размер заголовка кадра фиксирован и равен с = 47 байт, расстояние между кадрами равно дар = 12 байт;

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

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

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

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

• Бу1 Е N — оконечная система-отправитель кадров данного виртуального канала;

• = {с1у1} С N — множество оконечных систем-получателей кадров данного виртуального канала (Бу1

• Тгеву1 СЕ — маршруты передачи кадров в сети, представляет собой дерево, в котором корнем является Бу1, а листьями являются все элементы множества

• множество сообщений МБСу1 = {твд}, передаваемых по данному виртуальному каналу; сообщения должны исходить из одного абонента, подключенного к Бу^ абоненты-получатели должны быть подключены к оконечным системам из множества Т^у\.

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

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

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

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

Ve € Е : ^ < Re,

vl£e

BAG,,

(i)

где Яе — пропускная способность физического канала передачи данных е. • Частота передачи кадров каждого виртуального канала не превосходит частоты выдачи кадров в канал:

W/ Е VL : ^ \sizemsg/{LMvi - c)]/Tmsg <: l/BAGvi.

msgeMSGvi

(2)

Данное ограничение возникает из того, что все кадры одного сообщения тпвд должны поступить в канал до выдачи следующего сообщения тзд, т. е. за период Ттзд. Учитывая, что сообщение твд делится на число кадров, равное \зггеШ8д/(ЬМУ1 — с)], получаем ограничение (2). • Максимальный джиттер на оконечных системах-отправителях не должен превосходить 500 мкс*:

Уу1 Е УЬ : ЗМуХ ^ 0.5. (3)

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

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

Mmsg € MSG : Dur(msg) ^ Tmsg; Jit(msg) ^ Jmsg-. (4)

где Dur(msg) и Jit(msg) — процедуры вычисления длительности передачи сообщений и их джиттеров соответственно. Методы вычисления данных процедур в работе не приводятся.

4. Известные методы построения бортовых сетей AFDX. В литературе среди работ, посвященных проектированию сетей AFDX, основное внимание уделяется задаче нахождения оценки длительности передачи кадров. В работе [5] представлен обзор методов, используемых в настоящее время. Наиболее эффективными считаются методы Network Calculus [6-8] и Trajectory Approach [9, 10]. Согласно проведенным исследованиям, описанным в [5], Trajectory Approach позволяет получить более точные оценки, чем Network Calculus.

Алгоритмы, посвященные непосредственно проектированию сетей AFDX, описаны в работах [8, 11]. В [8] используется возможность задавать статический приоритет виртуальных каналов на портах коммутаторов для оптимизации времени передачи кадров. При решении задачи оптимизации используется метод Network Calculus.

В статье [11] описан метод построения виртуальных каналов с минимизацией пропускной способности. В работе также предложен метод агрегации сообщений, однако он подразумевает, что при передаче разных сообщений происходит "склейка" их кадров, т. е. в одном кадре могут передаваться данные разных сообщений. Кроме того, при построении виртуальных каналов не учитываются ограничения на время и джиттер передачи сообщений.

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

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

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

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

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

• Если маршрут построен успешно, то перейти к следующему виртуальному каналу.

• Если маршрут построить не удалось, то в случае передачи в виртуальном канале только одного сообщения его назначение считается невозможным. Иначе, из виртуального канала убирается сообщение с наибольшим значением LM/BAG и его назначение считается невозможным. Виртуальный канал переконфигурируется с помощью процедуры агрегации, после чего для данного виртуального канала заново строится маршрут.

Шаг 4- Для каждого сообщения выполнить шаги 4.1-4.3.

Шаг 4-1- Произвести вычисление длительности и джиттера передачи сообщений и проверить выполнение ограничения (4). Если ограничения выполняются, то перейти к следующему сообщению.

Шаг 4-2. Произвести процедуру переконфигурации виртуального канала, по которому передается сообщение, заключающуюся в попытке перенастроить параметры I. М. BAG и JM с учетом

оценок длительности передачи, полученных на шаге 4.1. Если после проведения процедуры ограничение (4) выполняется, то перейти к следующему сообщению.

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

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

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

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

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

Шаг 1. Для каждого абонента яге, подключенного к ев, сформировать множество виртуальных каналов УЬЗГС, состоящее из виртуальных каналов с сообщениями, исходящими из яге.

Шаг 2. Если каждое из множеств УЬЗГС содержит не более одного элемента или для всех пар виртуальных каналов попытка агрегации уже проведена, то вернуть неуспех.

Шаг 3. Выбрать нерассмотренную пару виртуальных каналов и яй2 среди множеств УЬЗГС, таких, что € УЬЗГС и значение г(у1\) • г(у12)/(1 + с1(у1\, ■уЬ)) максимально среди всех по-

добных пар, где с1(у1г,у12) — количество различных оконечных систем-получателей виртуальных каналов и г^- Делитель (1 + с1(у1\, ■уЬ)) служит для уменьшения стоимости виртуальных каналов, у которых присутствуют различные оконечные абоненты-получатели, что может привести к экономии использования ресурсов сети. Критерий г(у1) предлагается задавать одним из следующих способов:

• г(у1) = Ьш(у1)/\МБСг)1\, Ь'ш{'о1) = ЬМУ1/ВАОУ1 — критерий прямо пропорционален требуемой пропускной способности и обратно пропорционален количеству сообщений в виртуальном канале;

• г(у1) = (а • Ьт(у1) + /3 • тт гто<;„)/|Мб"а + /3 = 1 — кроме резервируемой пропускной

твдЕМЗвп!

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

Шаг 4- Провести агрегацию элементов и ■у/г согласно алгоритму, описанному в разделе 6.2. Шаг 5. Если требуемая пропускная способность агрегированного виртуального канала* больше суммарной требуемой пропускной способности каналов и у12, то восстановить исходные виртуальные каналы и перейти на шаг 2.

Шаг 6. Объединить маршруты виртуальных каналов или яй2 в один маршрут. Шаг 7. Убрать у1\ и ■у/2 из УЬ8ГС и вставить в УЬ8ГС полученный виртуальный канал. Если нарушаемые свойства для яй все еще не выполняются, перейти на шаг 2, иначе — завершить процедуру.

6.2. Агрегация выбранного множества сообщений. Предложенный алгоритм основан на методе из [11] с его расширением на несколько периодически передаваемых сообщений. Пусть

*Требуемая пропускная способность агрегированного виртуального канала может быть как больше, так и меньше суммы пропускных способностей исходных виртуальных каналов. Алгоритм основан на "жадном" предположении, что при уменьшении пропускной способности достигнут положительный результат.

дано множество потоков сообщений MSGsrc = {msg}, исходящих из одного абонента src, для которых требуется построить виртуальный канал. Максимальное количество кадров в очереди виртуального канала равно суммарному количеству кадров:

N= sizemsg/(LMmsg - с).

msgeMSGsrc

В работе предлагается задавать параметры LM и BAG с помощью решения задачи минимизации пропускной способности виртуального канала. Для этого пропускная способность представляется как функция bwvi(N), зависящая от суммарного количества кадров N, на которое делятся сообщения. В работе [11] задача ставится с ограничением на время передачи сообщения, которое задается в виде (N — 1 )BAG ^ 8, где 8 — ограничение на время выдачи последнего кадра в канал.

Так как время передачи сообщения складывается из времени ожидания 8 выдачи его последнего кадра и длительности передачи А последнего кадра через сеть, то верно 8 = тт8д — А. В случае передачи нескольких сообщений данное ограничение принимает вид

(N- 1)BAG < mini. (5)

msg

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

N-BAG < minTTOS„. (6)

msg

Таким образом, LM и BAG формируются с помощью минимизации величины bw(N), вычисляемой как bw(N) = д с учетом ограничений (5) и (6). Величины LM и BAG в данной формуле зависят от N. При этом величина BAG(N) может быть вычислена как BAG(N) = 2k^N\ так как по стандарту BAG является степенью двойки. Вычисление функции LM{N) описано далее.

Согласно исследованиям, проведенным в работе [11], для минимизации пропускной способности виртуального канала выбирается значение N путем выбора наименьшего из значений Щ, для которых верны ограничения (5) и (6) и которые вычисляются следующим образом:

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

Ni = min

> "min8msg msg

1,

2 "minTmsg

msg

По выбранному значению Ni определяется значение к(Щ) = г. Основным вопросом является вычисление функции LM(N), представляющей собой максимальный размер кадра, при котором суммарное количество кадров равно N.

Следует отметить, что точного значения данная функция может и не иметь. Например, если имеются два сообщения одинакового размера и N 3. то невозможно определить максимальное значение кадра, так как оба сообщения разобьются на одинаковое число кадров и соответственно число кадров будет четным.

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

Значение LM{N) предлагается вычислять итеративно, начиная со значения LM(Nq) = = max(sizemsg + с), NQ = \MSGsrc\. Данное значение определяет размер кадра при условии, что

msg

число кадров равно числу сообщений. В этом случае каждое сообщение должно попасть ровно в один кадр (ограничения на размер кадра в данном случае не учитываются) и размер кадра равен максимальному размеру сообщения.

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

Описанный алгоритм вычисления LM(N) заключается в выполнении следующих шагов. Шаг 1. = 1, Vmsg G MSGsrc, — эта величина показывает, на сколько кадров может быть разбито сообщение msg на данной итерации.

Шаг 2. Для к = Nq + 1,..., N выполнить шаги 2.1, 2.2.

Шаг 2.1. I = argmax(c + sizems„ / — данной величине присваивается сообщение, которое

msg у

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

Шаг 2.2. F^sg = "imsg G MSG/{I}, F* = Kf'~1 + 1 — число кадров увеличивается только

для выбранного сообщения I.

Шаг 3. LM(N) = max(c + sizemsq) / F,— функция возвращает максимальный размер кадра

msg У

с учетом получившегося разбиения сообщений на кадры.

Следует отметить, что во многих случаях выполнено f(k) = f(k — 1). Например, в описанном случае для двух одинаковых кадров размера size верны следующие выкладки:

• f(2) = (size + с);

• /(3) = (size + с) — одно сообщение разбили на два одинаковых кадра, второе имеет исходный размер;

• /(4) = (size/2 + с) — оба сообщения разбили на два одинаковых кадра.

Таким образом, значение LM для агрегированного виртуального канала определяется путем вычисления функции ЬМ(Щ).

Вычисление джиттера JM для агрегированного виртуального канала производится согласно формуле

JMV1= Y, fir+^)' (7)

где VLes — множество виртуальных каналов, исходящих из es; Re — пропускная способность физического канала передачи данных, исходящего из es; дар — временной промежуток между кадрами.

7. Экспериментальное исследование эффективности процедуры агрегации виртуальных каналов. Экспериментальные исследования проводились для сети АК1)Х. состоящей из 16 абонентов, соединенных с 8 оконечными системами, подключенными к сети из 8 коммутаторов (4 узловых коммутатора, подключенных непосредственно к оконечным системам, и 4 корневых коммутатора, соединенных в кольцо).

Было проведено исследование следующих свойств алгоритма.

1. Эффективность использования процедуры агрегации на различных классах данных.

2. Эффективность использования процедуры агрегации в зависимости от исходного количества сообщений.

3. Количество проектируемых виртуальных каналов в зависимости от исходного количества сообщений.

Для первого из описанных свойств исследование проводилось для следующих классов данных.

1. Большое количество сообщений с низкими требованиями к длительности передачи. Генерировалось 2000 сообщений с размером от 1 до 1000 байт, передаваемых с периодом от 1 до 1000 с и ограничением длительности передачи от 0.1 до 100 с.

2. Сообщения большого размера. Генерировалось 100 сообщений размером от 1 кб до 1 Мб с периодом от 1 до 10 с и ограничением длительности передачи от 1 до 10 с.

3. Сообщения с высокими требованиями к длительности передачи. Генерировалось 100 сообщений размером от 1 до 1000 байт с периодом от 10 до 100 мс и ограничением длительности передачи от 1 до 100 мс.

Для каждого исследуемого свойства проводился запуск на 100 случайно сгенерированных наборов сообщений с использованием и без использования процедуры агрегации, после чего результаты усреднялись. Результаты исследования указанных выше свойств для 1, 2 и 3-го класса наборов сообщений указаны в таблице.

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

Эффективность процедуры агрегации виртуальных каналов

Свойства запускаемого алгоритма Средний показатель передаваемых сообщений, % Среднее число виртуальных каналов

Класс данных Класс данных

1 2 3 1 2 3

Без процедуры агрегации 18 55 88 359 55 88

С использованием всех процедур 100 95 99 643 48 85

с процедурой агрегации

без процедуры агрегации

600 1100 1600 2100 2600 Число исходных сообщений

Рис. 2. Эффективность процедуры агрегации

с процедурой агрегации

без процедуры агрегации

100 600 1100 1600 2100 2600 Число исходных сообщений

Рис. 3. Количество спроектированных виртуальных каналов

данных с исходным количеством сообщений, варьирующимся от 100 до 3000. Для исследования эффективности процедуры агрегации измерялось количество назначаемых сообщений с использованием/без использования процедуры агрегации. Результаты проведенных исследований изображены на рис. 2 и 3.

8. Заключение. Исходя из полученных результатов можно сделать выводы, что процедура агрегации виртуальных каналов позволяет существенно улучшить результат. Для каждого класса данных эта процедура позволила значительно увеличить среднее число назначаемых сообщений. Также процедура агрегации позволяет сократить число виртуальных каналов. Для 1-го класса исходных данных при назначении 2000 сообщений, например, число виртуальных каналов более чем в два раза меньше количества сообщений. Также исходя из графика на рис. 3 можно отметить, что начиная с некоторого числа сообщений (в данном случае около 1600) процедура агрегирует сообщения во все меньшее число виртуальных каналов (график начинает убывать). Это можно пояснить тем, что при большем количестве сообщений требования нарушаются все чаще, что требует большей степени агрегации сообщений в виртуальных каналах.

СПИСОК ЛИТЕРАТУРЫ

1. Костенко В.А., ГурьяновЕ. С. Алгоритм построения расписаний обменов по шине с централизованным управлением и исследование его эффективности // Программирование. 2005. № 6. С. 67-76.

2. Костенко В. А., Плакунов А. В. Алгоритм построения одноприборных расписаний, основанный на схеме муравьиных колоний // Известия РАН. Теория и системы управления. 2013. № 6. С. 87-96.

3. BalashovV., KostenkoV., VdovinP. etal. An analysis of approaches to onboard networks design // Proc. of the Intern. Science and Technology Conf. Modern Networking Technologies (MoNeTec). M.: MAKS Press, 2014. P. 20-24.

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

5. 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.

6. Tawk M., Zhu G. et al. A tight end-to-end delay bound and scheduling optimization of an avionics AFDX network // Digital Avionics Systems Conf. (DASC). Seattle: IEEE, 2011. P. 7B3-1-7B3-10.

7. В oyer M., Fraboul C. Tightening end to end delay upper bound for AFDX network calculus with rate latency FIFO servers using network calculus // Factory Communication Systems (WFCS 2008). Dresden: IEEE, 2008. P. 11-20.

8. Frances F., Fraboul C., Grieu J. Using network calculus to optimize the AFDX network // Embedded Real Time Software (ERTS 2006). Toulouse: Articles techniques, 2006. P. 1-8.

9. Bauer H., Scharbarg J.L., Fraboul C. Applying and optimizing trajectory approach for performance evaluation of AFDX avionics network // Emerging Technologies & Factory Automation (ETFA 2009). Mallorca: IEEE, 2009. P. 1-8.

10. Bauer H., Scharbarg J.L., Fraboul C. Applying trajectory approach with static priority queuing for improving the use of available AFDX resources // Real-Time Systems. 2012. 48. N 1. P. 101-133.

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

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

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

AN ANALYSIS OF VIRTUAL LINKS AGGREGATION PROCEDURE EFFECTIVENESS DURING ONBOARD SWITCHED NETWORKS DESIGN

Vdovin P. M., Kostenko V. A.

In this work a task of periodically transmitted messages organization for onboard data network based on Avionics Full Duplex Ethernet (AFDX) standard is formalized and a common approach of it's solution is proposed. One of this task solution's important step is aggregation procedure, which forms the virtual link used for transmitting several messages outgoing from one partition. In this work the aggregation procedure is described in depth and experimental results of its effectiveness investigation are presented.

Keywords: AFDX, switch, virtual link, onboard networks, real-time systems.

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