Анализ качества сервиса, предоставляемого современными стандартами бортовой передачи данных

УДК 004.031.6

АНАЛИЗ КАЧЕСТВА СЕРВИСА, ПРЕДОСТАВЛЯЕМОГО СОВРЕМЕННЫМИ СТАНДАРТАМИ БОРТОВОЙ ПЕРЕДАЧИ

ДАННЫХ

© 2014 Н А. Матвеева, Е.А. Суворова, Ю.Е. Шейнин

Санкт-Петербургский государственный университет аэрокосмического приборостроения

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

В статье анализируются два подхода обеспечения качества сервиса, их целесообразность и характеристики QoS в сетях SpaceWire/GigaSpaceWire и SpaceFibre. Используются сети с различной топологией и различными моделями трафика (потоковые данные, команды и др.) для анализа и оценки характеристик передачи данных. Анализируются и сравниваются характеристики доставки данных для сетей SpaceFibre и SpaceWire/GigaSpaceWire.

Ключевые слова: бортовая система, качество сервиса, SpaceFibre, Space Wire, GigaSpace Wire

К современным комплексам бортового оборудования предъявляются требования по обеспечению качества сервиса передаваемых данных. Рассмотрим особенности поддержки качества сервиса, которые характерны для современных стандартов бортовой передачи данных, таких как SpaceFibre, SpaceWire and GigaSpaceWire. В стандартах SpaceWire [2] и GigaSpaceWire [3] поддерживается механизм передачи данных с приоритетами, других механизмов поддержки классов сервиса не предусматривается. Однако при необходимости механизмы для поддержки различных классов сервиса могут быть реализованы поверх этих стандартов, на транспортном уровне. В данной статье мы будем рассматривать механизмы поддержки различных классов сервиса для стандартов SpaceWire/GigaSpaceWire, которые не требуют реализации специализированных механизмов в сетевых маршрутизаторах. К ним относятся: обеспечение передачи данных с приоритетами; гарантированная доставка пакетов между источником и приемником; передача данных по расписанию.

В стандарте SpaceFibre [1] предусмотрена поддержка различных классов сервиса на уровне звена передачи данных: приоритетов; гарантированной пропускной способности; гарантированной доставки; передачи данных по

Матвеева Надежда Александровна, аспирантка Суворова Елена Александровна, кандидат технических наук, заведующая лабораторией «Систем-на-кристалле» Института высокопроизводительных компьютерных и сетевых технологий. E-mail: suvorova@aanet ru

Шейнин Юрий Евгеньевич, доктор технических наук, профессор, заведующий кафедрой аэрокосмических компьютерных и программных систем. E-mail: sheynin@aanet.ru

расписанию; негарантированной доставки данных. Для стандарта SpaceFibre поддержка различных классов сервиса обеспечивается на уровне Quality layer. Этот уровень включает в себя подуровни виртуальных каналов и Retry. Подуровень виртуальных каналов обеспечивает поддержку передачи данных с приоритетами, гарантированной пропускной способности, передачи данных по расписанию, негарантированной доставки данных. Уровень приоритета в стандарте SpaceFibre может быть назначен для каждого виртуального канала. В стандарте не описано жестких требований к тому, чтобы каждый виртуальный канал имел свой уровень приоритета. Одному виртуальному каналу или группе виртуальных каналов может быть задан одинаковый уровень приоритета. Сначала отправляются данные из виртуальных каналов с самым высоким приоритетом.

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

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

Для поддержки механизма передачи данных по расписанию, каждому виртуального канала может быть задан перечень таймслотов, в которые ему разрешено передавать данные. Во время не соответствующее определенным тайм-слотам запросы на передачу данных от заданного виртуального канала не обрабатываются. Подуровень Retry используется для поддержки механизма гарантированной доставки данных. На этом уровне осуществляется проверка корректности всех принимаемых фреймов. Осуществляется повторная передача фреймов, переданных с ошибками или утраченных. Для обеспечения этих механизмов каждый фрейм включает в себя порядковый номер и контрольную сумму (кроме фреймов IDLE).

В статье мы представим и сравним возможности, обеспечиваемые механизмом передачи данных с приоритетами в сетях SpaceWire /GigaSpaceWire и в сетях SpaceFibre. Будет представлен сравнительный анализ работы механизма гарантированной доставки, основанный на подтверждении принятия данных и повторных передач данных между источником и приемником в сетях SpaceWire/GigaSpaceWire и механизма повторных передач в звене передачи данных в сетях SpaceFibre. Также будут оценены характеристики работы механизма передачи данных по расписанию.

Сравнение возможностей, обеспечиваемых механизмом приоритетов. Для поддержки уровня приоритетов в стандарте SpaceFibre для каждого виртуального канала (ВК) может быть задан уровень приоритета. Уровень приоритета влияет на очередность передачи фреймов, поступающих от разных виртуальных каналов, в канал. Если в момент передачи низкоприоритетного фрейма данных поступает более высокоприоритетный фрейм, его дальнейшая передача начнется после завершения передачи низкоприоритетного фрейма. В соответствии с этим, время ожидания передачи для высокоприоритетного фрейма равно времени передачи фрейма максимальной длины (равна 256 Nchar).

Для стандартов SpaceWire/GigaSpaceWire уровни приоритетов могут быть определены для пакетов на сетевом уровне. При таком подходе уровень приоритета привязывается к сетевому адресу пакета. В соответствии с уровнями приоритетов определяется очередность передачи пакетов в выходной порт. Если в выходной порт начал передаваться низкоприоритетный пакет и поступает высокоприоритетный пакет, то высокоприоритетный пакет начнет передаваться только после завершения передачи низкоприоритетного пакета. Поэтому время ожидания передачи высокоприоритетных пакетов зависит от длины низкоприоритетных пакетов.

В соответствии со стандартом SpaceWire длина передаваемых пакетов не ограничена. Поэтому время ожидания передачи высокоприоритетных пакетов зависит от форматов данных, используемых в конкретной сети. Если же наложить ограничение на размер передаваемых данных в определенной сети SpaceWire, можно получать корректные оценки задержек передачи данных с высоким приоритетом. Рассмотрим зависимость времени доставки данных с высоким приоритетом от размера пакетов с низким приоритетом при передаче данных через один маршрутизатор. Пусть длина высокоприоритетного пакета составляет 64 байта. Длина низкоприоритетного пакета изменяется в диапазоне от 8 до 4096 байт. На рис. 1 представлены графики этой зависимости для рассматриваемых стандартов. Анализируя представленные графики видно, что для стандарта SpaceFibre кривая зависимости представляет собой прямую линию, которая параллельна оси Х на уровне значения 2,8 мкс. Это объясняется тем, что в данном стандарте приоритеты поддерживаются на уровне передачи фреймов. Кривые зависимости для стандартов SpaceWire/GigaSpaceWire практически совпадают с кривой для стандарта SpaceFibre в ситуациях, когда длина низкоприоритетного пакета меньше 256. При увеличении длины пакетов трафика с низким приоритетом время доставки передачи высокоприоритетных для них данных возрастает.

Рис. 1. Зависимость времени доставки высокоприоритетного пакета между источником и приемником от длины пакетов с низким приоритетом при передаче через один маршрутизатор. Размер высокоприоритетного пакета равен 64 байтам

Оценивая полученные результаты можно сделать вывод, что в сетях SpaceWire/ GigaSpaceWire представляется возможным получение практически одинакового времени передачи высокоприоритетного трафика с использованием приоритетов, как и в сети SpaceFibre. Это может быть достигнуто с помощью ограничения длины пакетов с низким приоритетом значением 256 байт. Указанное значение соответствует максимальной длине фрейма для стандарта SpaceFibre. Данное ограничение можно обеспечить, за счет фрагментации сообщений при сборке/разборке в пакеты в оконечных узлах сети на транспортном уровне. Количество виртуальных каналов по стандарту ограничено значением 256, но в связи с высокими аппаратными затратами на реализацию одного виртуального канала, их количество в линии передачи данных практически ограничено 4-8 виртуальными каналами. Поэтому лишь 4-8 потоков данных в сети могут иметь разные приоритеты. В сетях SpaceWire/GigaSpaceWire уровень приоритета ассоциируется с логическими и регионально-логическими адресами и разные приоритеты могут быть назначены для десятков и сотен потоков данных в сети. Поэтому сети SpaceWire /GigaSpaceWire являются более гибкими со стороны механизмов приоритетов, чем SpaceFibre.

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

Для SpaceWire/GigaSpaceWire не предусмотрены механизмы, обеспечивающие гарантированную доставку в каждом звене передачи данных, однако такие механизмы могут быть реализованы в терминальных узлах. Например, обеспечение гарантированной доставки может быть реализовано на транспортном уровне. В качестве примера можно рассмотреть протокол RMAP (Remote Memory Access Protocol). Такой протокол может включать в себя механизмы выявления пакетов, утраченных в ходе передачи (например, по порядковым номерам пакетов); механизмы выявления искажения пакетов (например, по контрольной сумме); механизмы подтверждения и повторной передачи пакетов, на которые получено отрицательное подтверждение (NACK), либо не получено подтверждение и истек таймаут его ожидания.

Сравним временные характеристики, которые могут быть достигнуты при использовании описанных механизмов. Будем считать, что в ходе передачи пакета может произойти одна ошибка на всем маршруте следования пакета. При использовании сети SpaceFibre это будет означать, что потребуется одна повторная передача одного фрейма пакета в звене передачи данных. В этом случае дополнительное время передачи будет складываться из времени передачи NACK и повторной передачи этого фрейма. Для данного исследования считается, что время формирования NACK и время его обработки при приеме пренебрежимо мало.

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

Для начала рассмотрим ситуацию, когда пакет доставляется в приемник, но в нем выявлены ошибки, возникшие в результате сбоев, произошедших в ходе передачи. В этом случае время доставки пакетов будет складываться из времени передачи пакета между источником и приемником, времени проверки корректности пакета, времени передачи NACK от приемника к источнику и времени повторной передачи пакета. Будем считать, что время проверки корректности пакета пренебрежимо мало, т.к. она может проверяться «на лету», во время приема пакета. На рис. 2 представлено время доставки пакетов при возникновении одной ошибки в ходе передачи для стандартов SpaceFibre и GigaSpaceWire в зависимости от количества коммутаторов, используемых при передаче. Графики построены для потоков данных с разной длиной пакетов: 16, 64, 256, 1024, 4096 Nchar. Для GigaSpaceWire принято, что длина пакета подтверждения составляет 8 Nchar. Представленные результаты получены на основе результатов моделирования и расчетов. Анализируя представленные графики (рис. 2) можно сделать вывод, что время доставки коротких пакетов с длиной до 256 Nchar для сети GigaSpaceWire оказывается меньше, чем для SpaceFibre. При увеличении длины пакетов и небольшом количестве транзитных коммутаторов время доставки для SpaceFibre оказывается меньше, чем для GigaSpaceWire. Так же стоит отметить, что при увеличении длины пакетов, так же увеличивается количество транзитных

коммутаторов, при котором SpaceFibre оказывается лучше, чем GigaSpaceWire. Если длине пакета равна 1024 №^аг, то SpaceFibre оказывается лучше, чем GigaSpaceWire, когда количестве транзитных коммутаторов <=3; если длина пакета равна 4096 Nchar - когда количество коммутаторов <=8.

120

100

80

Ь 60

40

20

16 Nchar-GigaSpaceWire 16 Nchar-SpaceFibre »64 Nchar-GigaSpaceWire 64 Nchar-SpaceFibre 256 Nchar-GigaSpaceWire 256 Nchar-SpaceFibre 1024 Nchar-GigaSpaceWire 1024 Nchar-SpaceFibre 4096 Nchar-GigaSpaceWire 4096 Nchar-SpaceFibre

123456789 10 Количество коммутаторов

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

120

Рис. 2. Зависимость времени доставки пакетов от количества транзитных коммутаторов

Далее рассмотрим ситуацию, когда в ходе передачи пакета возникла ошибка, которая приводит к разрыву соединения. Для сети SpaceFibre время восстановления соединения после того как перестала действовать помеха, приведшая к разрыву соединения, составляет 50 мкс. Соответственно, в этом случае, по сравнению с ситуацией, когда разрыва соединения не произошло, дополнительное время передачи увеличится на время действия помехи и время восстановления соединения. В случае использования сети SpaceWire /GigaSpaceWire время восстановления соединения после прекращения действия помехи составит 19,2 мкс. Оценим время доставки пакета в этом случае. Будем считать, что таймаут времени ожидания подтверждения (Tout) определяется как функция от суммы времени передачи пакета от источника к приемнику и времени передачи подтверждения от приемника к источнику. Обозначим эту сумму как Tf. Выполним оценки характеристик доставки пакетов, когда Tout равен Tf и 3*Tf. Для исследования будем рассматривать

100

80

ст60

40

20

256 Nchar-SpaceWire 256 Nchar-GigaSpaceWire 256 Nchar-SpaceFibre 1024 Nchar-SpaceWire 1024 Nchar-GigaSpaceWire 1024 Nchar-SpaceFibre 4096 Nchar-SpaceWire 4096 Nchar-GigaSpaceWire 4096 Nchar-SpaceFibre

123456789 10 Количество коммутаторов

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

На рис. 4 представлены графики зависимости времени доставки пакета от длины пакета в случае коротковременной помехи (длительность 1 мкс). Для стандартов SpaceWire/GigaSpaceWire предполагалось, что длительность таймаута ожидания подтверждения равна сумме времени

0

0

передачи пакета по сети и времени передачи пакета подтверждения по сети (Tout = Tf). Как можно видеть из этих графиков, время доставки пакетов в сети SpaceWire оказывается меньше, чем в SpaceFibre при длине пакетов меньше 1024 Nchar. Время доставки пакетов в сети GigaSpaceWire оказывается меньше, чем в SpaceFibre при длине пакетов меньше, чем 2048 Nchar. Однако такой размер таймаута для сети SpaceWire/GigaSpaceWire может быть выбран только для ситуаций, когда путь передачи пакета и подтверждения не пересекаются с путями передачи другого трафика. То есть ни рассматриваемый пакет, ни подтверждение на него в ходе передачи не могут задержаться в очереди в ожидании выходного порта. Для ситуаций, когда пути передачи трафика могут пересекаться, время ожидания в очереди необходимо учитывать при выборе размера таймаута ожидания подтверждения.

250

200

£ 150

п:

ь

§: 100 о:

S х

£ 50

SpaceWire

GigaSpaceWire

SpaceFibre

-s* *

Размер пакета, Nchar

оказывается примерно в 1,5 раза лучше, чем для сети SpaceWire. В сети SpaceFibre время доставки оказывается дольше из-за задержек связанных с полным буферированием фрейма и с проверкой CRC в каждом звене передачи данных.

500 450 400 350 300 250 200 150 100 50 0

SpaceWire GigaSpaceWire SpaceFibre

Размер пакета, Nchar

Рис. 4. Зависимость времени доставки пакета от размера пакета при возникновении разрыва соединения (Tout=Tf), длительность помехи - 1 мкс

Теперь оценим время доставки пакетов для ситуации, когда таймаут ожидания подтверждения равен утроенному времени передачи пакета и пакета подтверждения (Tout=3*Tf). Зависимость времени доставки пакета от размера пакета показана на рис. 5. Зависимости, представленные на этом графике, показывают, что время доставки пакета для сети SpaceWire оказывается лучше, чем для SpaceFibre, если длина пакета меньше 512 Nchar. Время доставки пакета для сети GigaSpaceWire оказывается лучше, чем для SpaceFibre, когда длина пакета меньше 1024 Nchar.

Рассмотрим время передачи пакетов в тех случаях, когда они были переданы без ошибок и повторные передачи не происходили. Зависимости времени передачи пакетов от количества транзитных коммутаторов представлены на рис. 3. Как можно видеть, для пакетов рассмотренных длин время передачи в сети GigaSpaceWire

Рис. 5. Зависимость времени доставки пакета от размера пакета при возникновении разрыва соединения (Tout = 3*Tf), длительность помехи - 1 мкс

Эта проверка выполняется для всех типов трафика, в том числе и для того, для которого нет необходимости повторно передавать. Это приводит к ощутимому увеличению времени доставки пакетов такого трафика по сравнению с потенциально возможным. Особенно ощутима эта задержка для коротких пакетов, длиной до 256 Nchar (рис. 6). Для коротких пакетов в сети SpaceFibre при скорости передачи 1250 Мбит/с достигаются большие задержки, чем для SpaceWire на скорости 400 Мбит/с. Короткие пакеты, как правило, используются для передачи командного трафика, поэтому время их передачи особенно существенно. В стандартах SpaceWire /GigaSpaceWire используется червяная маршрутизация с передачей пакетов через маршрутизатор без буферирования. Это сокращает задержки доставки пакета через сеть маршрутизаторов.

40

35 30 25 20 15 10 5

SpaceWire-400 Мбит/с

GigaSpaceWire-1250 Мбит/с

SpaceFibre-1250 Мбит/с

123456789 10 Количество коммутаторов

Рис. 6. Зависимость времени доставки пакетов длиной 256 №Иаг от количества коммутаторов

0

0

Стоит отметить, что механизм гарантированной доставки, предусмотренный в стандарте SpaceFibre, не может гарантировать доставки пакетов в тех случаях, когда произошел физический разрыв соединения или вышло из строя сетевое оборудование. Поэтому для сетей, в которых требуется обеспечить высокий уровень надежности, необходимо использовать механизмы дублирования на аппаратном уровне. При использовании механизмов дублирования в сочетании с механизмами повторной передачи SpaceFibre в случае разрывов соединения, которые могут быть восстановлены, поступление в приемник существенно запоздавших по времени копий пакетов (шедших по пути, в котором произошел разрыв соединения) может привести к проблемам с их корректной интерпретацией. Восстановление соединения SpaceFibre может продолжаться достаточно долгое время. В соответствии со стандартом длительность процедуры установки соединения составляет 50 мкс [1]. Так же к этому времени может добавиться время действия помехи. Поэтому одна из копий пакета может достигнуть приемника с очень ощутимым запаздыванием по времени по сравнению с копией, которая прошла по пути без разрывов соединения. Время запаздывания может составлять десятки - сотни мкс или мс. Это зависит от того, как долго продолжалось действие помехи.

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

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

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

Это может быть реализовано в сетях SpaceWire/GigaSpaceWire [5]. Для этого терминальные узлы отвечают за то, что передача данных идет только в допустимых для них таймсло-тах. Но бывают ситуации, когда запущенное на терминальном узле приложение может начать передавать данные в недопустимом для него таймслоте. Это может произойти в результате сбоя/ошибки синхронизации времени или каких-то внутренних ошибок. К ним можно отнести искажение значений битов в таблице таймсло-тов. Это приведет к тому, что время доставки других пакетов, которые передаются в выделенные им таймслоты, но чьи пути пересекаются с таким пакетом, окажется больше требуемого. Для борьбы с такими нарушениями порядка передачи в таймслотах временное планирование и осуществление передачи пакета в терминальном узле должно осуществляться «доверенным» компонентом терминального узла - сетевым контроллером, а не программным обеспечением или приложением пользователя. Также пакет может передаваться по сети в недопустимом для него таймслоте, если в сети происходили разрывы соединения. Например, если пакет должен начать передаваться в выходной порт коммутатора, по которому произошел разрыв соединения, и идут попытки восстановления соединения, то дальнейшая передача пакета будет приостановлена до тех пор, пока соединение не восстановится. За время восстановления соединения может закончиться текущий таймслот и, в результате, дальше пакет уже будет передаваться не в своем таймслоте. При передаче данных по расписанию необходимо учитывать такую возможность и закладывать в расписание соответствующие допуски, добавляющие временной резерв на возможные восстановления соединений по пути следования пакетов. Они рассчитываются с учетом топологии сети и вероятностей сбоев, приводящих к разрыву/восстановлению соединений в каналах. Наличие этих допусков позволяет с определенной вероятностью исключить передачу пакетов не в своем таймслоте.

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

данных не в своем таимслоте в случае некорректного поведения терминального узла. Даже если в терминальном узле пакет данных передан не в своИ таймслот и это не было заблокировано в его порту, то такой пакет поступит в маршрутизатор 8раоеЕ1Ьге. Он будет принят во входном порту 8раоеБ1Ьге. Во входном порту нет механизмов контроля таймслотов. Далее через коммутационную матрицу пакет поступит в выходной порт, где его дальнейшая передача будет приостановлена до наступления таймслота, в котором этот пакет может быть передан далее.

Графики задержек передачи пакета на одном коммутаторе из-за трафика, передаваемого не в своем таймслоте, представлены на рис. 7 для рассматриваемых стандартов. Если в сети существует необходимость передавать как трафик с требованием гарантированного времени доставки, так и без гарантированного времени доставки, то потенциально, часть таймслотов можно выделить для передачи трафика без требования гарантированного времени доставки. Пути передачи такого трафика могут пересекаться по линиям связи. Так же стоит принимать во внимание, что таймслоты в 8раоеБ1Ьге ассоциируются с виртуальными каналами, а не с пакетами. Как и в случае приоритетов, количество виртуальных каналов ограничено, т.к. связано с большими аппаратными затратами. Обычно используется 4 виртуальных канала, реже - 8. Заданное в спецификации 8расеБ1Ьге ограничение в 256 виртуальных каналов просто нереализуемо в микросхемах. Как следствие этого количество потоков данных, которое может быть распланировано по тайм слотам, очень ограничено. Из-за этого выбор путей передачи данных и планирование, распределение по таймслотам будет существенно более трудоемкой задачей по сравнению с сетью SpaceWire/GigaSpaceWire.

120

100

, 80

о. 60

40

20

^SpaceWiгe-400 Мбит/с

GigaSpaceWiгe-1250 Мбит/с

»SpaceFibгe-1250 Мбит/с

8624862486

125000 124

Длина низкоприоритетного пакета, М^г

Рис. 7. Зависимость задержки пакета на одном коммутаторе в зависимости от размера пакета, передаваемого не в своем таймслоте

Выводы:

1. Механизмы обеспечения качества сервиса могут быть реализованы как в сетях SpaceFibre, так и в сетях SpaceWire/GigaSpaceWire, где могут быть достигнуты практически такие же характеристики времени доставки приоритетного трафика, как и в SpaceFibre, если длина передаваемых в них пакетов будет ограничена 256. При этом такое ограничение не скажется существенно на времени передачи объектов данных большой длины, которые в этом случае придется передавать несколькими пакетами.

2. Время передачи данных при возникновении ошибок в сети SpaceFibre может оказываться лучше, чем в сети SpaceWire/GigaSpaceWire при использовании механизмов повторных передач «источник-приемник», например, на транспортном уровне. Однако невозможность в SpaceFibre отключения этого механизма приводит к ощутимому увеличению времени передачи пакетов трафика, для которого нет требования гарантированной доставки (например, поток видео); к возникновению потенциальных коллизий обработки запоздавших из-за восстановления соединения пакетов в сетях с дублированием оборудования.

3. В сетях SpaceWire/GigaSpaceWire могут быть достигнуты практически такие же характеристики по передаче данных по расписанию, как и в сети SpaceFibre при условии, что никакой трафик не будет передаваться не в своих тайм-слотах. Если в результате сбоев в функционировании терминальных узлов или разрывов соединения трафик может передаваться не в своих таймслотах, тогда SpaceFibre будет более надежным.

4. Преимущества SpaceFibre заключаются в механизмах обеспечения качества сервиса в каждой линии передачи данных, что делает их более надежными в случае неисправности сетевых компонентов. Недостатки состоят в более высоких затратах на реализацию и большее время ожидания в доставке пакетов. Подход обеспечения качества сервиса в SpaceWire/GigaSpaceWire значительно дешевле в реализации, дает более низкие задержки, и может работать поверх обычной SpaceWire/GigaSpaceWire магистральной сети. Тем не менее, без правил контроля качества сервиса передачи пакетов и распределений внутри магистральной сети, они могут быть более чувствительны к ошибкам и неисправностям компонентов сети.

Исследования выполнены при финансовой поддержке Министерства Образования и Науки Российской Федерации научно-исследовательской работы, выполняемой в рамках базовой части государственного задания в 2014 году.

0

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

1. Parkes, S. SpaceFibre Specification / S. Parkes, A. Ferrer, A. Gonzalez, C. McClements // Draft F3, September 2013.

2. ECSS Standard ECSS-E-ST-50-12C, "SpaceWire, Links, Nodes, Routers and Networks", Issue 1, European Cooperation for Space Data Standardization, July 2008.

3. Yablokov, E. GigaSpaceWire - Gigabit Links for SpaceWire Networks / E. Yablokov, Y. Sheynin, E.

Suvorova et al. // Proc. of the 5th International SpaceWire Conference, June 2013. P.28-34.

4. Parkes, S. SpaceFibre: Adaptive high-speed data-link for future spacecraft onboard data handling / S. Parkes, C. McClements, D. McLaren et al. // Proc. Adaptive Hardware and Systems (AHS) Conf., July 2014. P. 164 - 171.

5. Raszhivin, D. Deterministic Scheduling of SpaceWire Data Streams / D. Raszhivin, Y. Sheynin, A. Abramov // Proc. of the 5th International SpaceWire Conference, June 2013. P. 141-144.

ANALYSIS OF QOS PROVIDED BY MODERN ONBOARD DATA TRANSMISSION PROTOCOLS

© 2014 N.A. Matveeva, E.A. Suvorova, Y. E. Sheynin Saint-Petersburg State University of Aerospace Instrumentation

In article it was analyzed the approaches, their feasibility and characteristics of QoS in SpaceWire/GigaSpaceWire and in SpaceFibre networks. Networks with different topologies and traffic pattern (streaming data, commands and etc.) are used to evaluate the performance. Data delivery characteristics for SpaceFibre and SpaceWire/GigaSpaceWire networks are analyzed and compared.

Key words: onboard system, quality of service, SpaceFibre, SpaceWire, GigaSpaceWire

Nadezhda Matveeva, Post-graduate Student Elena Suvorova, Candidate of Technical Sciences, Chief of the System-on-Chip Laboratory of the Institute for HighPerformance Computer and Network Technologies. E-mail: suvorova@aanet.ru

Yuriy Sheynin, Doctor of Technical Sciences, Professor, Head of theDepartment of Aerospace Computing and Software Systems. E-mail: sheynin@aanet.ru.