Разработка беспроводной многоканальной системы передачи больших потоков данных реального времени

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



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

Механизм запроса повторной посылки потерянной информации

Максимальная производительность при передаче данных достигается без квитирования принимающей стороной. При этом некоторые пакеты могут теряться, поэтому необходим механизм запроса их повторной передачи. Для этого координатор, посылая пакет-маркер, запрашивает потерянные пакеты данных, указывая их идентификаторы (Глава 2 Раздел 4).

Средства оптимизации повторных посылок (изменение длины пакетов в зависимости от количества потерь)

Передача пакетов большой длины является более выгодной из-за уменьшения накладных расходов, обусловленных протоколами физического и канального уровней. Но в условиях большого количества радиопомех вероятность повреждения большего пакета выше. Соответственно, изменяя длину пакета в зависимости от количества запросов на повторную передачу, можно повысить надежность передачи и, следовательно, пропускную способность в условиях повышенного уровня радиопомех (Глава 2 Раздел 4).

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

Стандарт IEEE 802.11n предоставляет ряд механизмов канального уровня, повышающие эффективность передачи данных: Reverse Direction Protocol, агрегация, использование RIFS. (Глава 1 раздел 3.2). На данный момент доступное оборудование не позволяет управлять этими механизмами, поэтому поддержка этих особенностей будет реализована на следующих этапах разработки системы.

Механизмы, основанные на специфике передаваемых данных

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

Механизмы передачи данных

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

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

Таким образом, чтобы достичь наибольшей эффективности, необходимо работать на канальном уровне, не прибегая к использованию стандартных протоколов, таких как TCP/IP.

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

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

Информация, содержащаяся в заголовке пакета:

Идентификатор пакета (4 байта) содержит порядковый номер пакета и позволяет принимающей станции контролировать целостность потока данных. Также позволяет координатору запрашивать конкретные пакеты данных для повторной передачи (Глава 2 Раздел 3).

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

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

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

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

Максимальное количество пакетов в контейнере равно 7 (определяется максимальным размером пакета MAC-уровня). Количество пакетов в контейнере зависит от уровня радиопомех (пункт 3 предыдущего раздела). Если принимающая сторона зафиксировала большое количество ошибок, то при следующем