Лекции_Мультимедийные ИС
.docxТема: «Классификация мультимедиа»
Мультимедиа — основной термин, описывающий широкий вид технологий, позволяющих объединить в себе различные форматы данных, такие как текст, изображения, аудио и видео.
Классификация мультимедиа с точки зрения передачи информации:
Передаваемая в реальном времени (Real-time)
Передаваемая вне времени (WRT)
WRT требует ограничение поддержки пакета, а Real-time – нет.
Выделяют два основных подхода ошибок при передаче:
ARQ (Automatic repeat request). Данный подход реализует автоматический повтор передачи потерянных или повреждённых пакетов. Используется в протоколе TCP.
FEC (Forward error correction). Данный подход заключается в введении избыточных данных, называемых кодом с исправлением ошибок (кодом Хэмминга), перед передачей или хранением данных, а также он предоставляет приёмнику возможность исправления ошибок без обратного канала для запроса повторной передачи данных. Используется в протоколе UDP.
Real-time мультимедиа делятся на дискретные и постоянные мультимедиа (DM и CM соответственно). Дискретные мультимедиа передают данные дискретными порциями, постоянные мультимедиа - непрерывным потоком.
RT-мультимедиа разделяются на дискретную (Discrete media – DM) и непрерывную (Continuous media – CM), в зависимости от того, передаются ли данные дискретными порциями или непрерывным потоком.
В свою очередь, СМ может разделяться на допускающую ошибки и не допускающую их. Примером RT первого типа могут служить звуковые и видеопотоки, используемые при проведении звуковых и видеоконференций, а примером второго – приложения, запускаемые на удаленном компьютере. Потоковое вещание, используемое для вещания через Интернет, допускает некоторый уровень ошибок при передаче информации.
Виды мультимедийной информации:
Текст, который представлен в сети различными формами или файлами. Для передачи текста используются такие протоколы, как FTP, HTTP, SMTP. Текст передается в двоичном виде и для расшифровки и кодировки используются различные кодировочные таблицы. Требования к допустимому уровню ошибок зависит от используемых ошибок. Если нужно полное отсутствие ошибок, то используется TCP, в противном случае - UDP. Схема сжатия текста – это кодирование по Шеннону и по Хаффману, есть также UNIX-сжатие.
Звук, который преобразуется в цифровой вид с помощью выборов (семплинги) и квантизации. Звук передаётся потоком дискретных пакетов, а требования зависят от характеристик. Голос мы можем сжать с 12 до 8 бит, скорость уменьшается с 96 до 64 Кбит/с. 64 Кбит/с – скорость канала тональной частоты, 32 Кбит/с – скорость канала. Передача звука допускает наличие ошибок до 2%. Требования Real-time для звука жёстко связаны с ожидаемым уровнем интерактивности. Если приложения зависит от RTI, то максимальная задержка составляет 200 мс. Для видео она будет равна 150 мс. Если идёт интернет-вещание, то уровень интерактивности ограничивается командным пользованием. Сжатие звука осуществляется с помощью кодов или систем сжатия (G711, G723.3, G726).
Графика и анимация (фото). Несжатое цифровое изображение состоит из массивов пикселей. Каждому пикселю соответствует определенное кол-во байт. Если есть, например, характеристики (цвет, яркость), то, чтобы определить длину кода, то берётся . Изображение передается в сжатом виде с определенной схемой сжатия. Схемы сжатия имеют прогрессивный характер, т.е., при получении изображения оно получается «слоями» и в первом этапе оно в плохом качестве, но потом оно улучшается. Таким образом, прогрессивное сжатие – это сжатие, которое достигается прогрессивным кодированием часто встречающихся фрагментов; векторной квантизации, начиная с оттенков серого с последовательным добавлением цветов; пирамидальным кодированием, которое разбивает изображения на слои. (Чёрное – отсутствие цвета (0), белый – полное наличие всех цветов (1), значит, цвета распределяются от 0 до 1.)
Видео. Видео – это последовательность кадров, показываемая с определённой скоростью (24 кадров/с или 30 кадров/с). Видео передаётся по сети потоком дискретных пакетов, а требования к пропускной способности зависят от уровня избыточности информации. Это используется в алгоритмах сжатия.
Рис.1 – Схемы сжатия текста
Рис.2 – Схемы сжатия звука
Рис.3 – Схемы сжатия изображения
Рис.4 – Схемы сжатия видео
Существуют 2 типа сжатия:
С потерей. При данном типе сжатия удаляется избыточная информация, что может привести к искажению или появлению шумов.
Без потерь. При данном типе сжатия, получаемые данные идентичны отправляемым.
Требования к передаче мультимедиа по сетям:
Соблюдение характеристик реального времени (проигрывание с той же скоростью, с которой они оцифровывались, поэтому передачи мультимедиа в реальном времени накладывают жёсткие ограничения на задержку пакетов.)
Высокая пропускная способность (потоки могут передаваться с использованием протокола UDP, в котором отсутствует механизм контроля перегрузок, поэтому различные виды мультимедиа имеют различные требования к пропускной способности.)
Требование к ошибкам. В приложениях, которые допускают ошибки, пользуются техникой маскирования (ECT), а восстанавливают ошибки с помощью FEC. Для этого, в поток добавляется избыточность, но если ошибка возникает за пределами уровня FEC, то она может остаться не обнаруженной. Поэтому, приложению на устройстве важно знать тип ошибок в используемых коммуникационных сетях, чтобы использовать необходимый уровень FEC.
Поддержка мультикаста. Данное требование существует, когда один источник используется одновременно несколькими получателями мультимедийной информации через широковещательный пакет. Легче всего сделать поддержку мультикаста при односторонней передаче. Если нужна двухсторонняя передача (интернет-телефония), то необходим функционал для корректного смешивания голосовых потоков.
Управление сессиями. Данное требование включает в себя:
описание типа мультимедиа для таких параметров, как: тип потока (звук, видео, текст), схема кодирования, время начала и окончания сессии, IP-адреса сессии). Желательно описывать сессию до её начала
оповещение о сессии
идентификация сессии (так как сессия может состоять из нескольких потоков, то тогда эти потоки должны быть синхронизированы. Отправитель может посылать звук и видео как два разных потока по одному каналу или наоборот)
управление сессией (информация о потоках может иметь внутренние связи, например, метки времени, и получателю предлагается начать с одной из меток)
Требование к безопасности (целостность, аутентичность, кодирование (или шифрование)); в современном мире ещё авторские права.
Поддержка мобильности. Сложность данного аспекта заключается в «передвижении» пользователя, т.е. пользователь не успевает переключиться между зонами или сигнал не успевает «догнать» пользователя.
Тема: «Поддержка распределённого мультимедиа-трафика»
Трафик Real-time имеет жёсткие требования на задержку пакетов и неустойчивость к их передаче.
Виды задержек:
Задержка при обработке пакета. Постоянный вид задержек может присутствовать на стороне отправителя или получателя, а может и там, и там. Причины – АЦП или ЦАП.
Задержка при передаче пакетов. Затрачиваемое время на физическом уровне. Задержка зависит от числа активных сессий, т.к. схема передачи на физ. уровне - FIFO. Если их много, то возникают конфликты; от пропускной способности канала; от MAC-задержки; от выбора MAC протокола; от переключателя контекста в ОС ((для уменьшения этой задержки желательно, чтобы были подходящие драйверы или мультимедийная система).
Задержка передачи – зависит от свойств физ. среды. Самая большая скорость – скорость света в вакууме.
Задержка маршрутизации и обработка очередей. Единственный вид задержки, который может быть уменьшен путём введения улучшенных архитектур сетей. Независимо от того, какой пакет, на каждом узле коммутации он обрабатывается одинаково, поэтому можно ввести разные виды сервисов.
Требования высокой пропускной способности
Для решения таких проблем используются управления доступом, резервирование пропускной способности и механизмы управления трафиком. Приложение сначала должно получить полномочие передачи трафика с заданной скоростью и заданными характеристиками.
Отклонение характеристик сети
Мультимедийным приложениям необходимы гарантии по отклонению (задержки, скорости и т.д.). Модель негарантированной доставки таких гарантий не предоставляет. Тогда, необходимо использовать маршрутизацию на основе «QoS», а если невозможно – то отправитель должен предупреждать об отклонениях.
Уточнение требований к сервисам и описание трафиков
Для передачи информации по сети можно выделить три основные модели архитектуры сети:
Интегрированные сервисы (Intserv)
Дифференцированные (Divserv)
Мультипротокольная коммутация меток (MPLS)
Принципы, общие для всех моделей:
Уточнение требований к сервисам и описание трафика. Для поддержки гарантированного обслуживания её необходимо определить в математических терминах. Первостепенное значение представляют три параметра QoS:
Пропускная способность. Определяет, сколько данных максимально и в среднем может быть передано по сети. Битовой скоростью ограничиваться нельзя, так как схемы QoS должны быть применимы к сетям разного типа. При обработке протоколом передачи важную роль играют такие вопросы, как: управление буфером; управление таймером; запросы управляющей информации. Затраты на эти операции связаны с числом пакетов.
Задержка. Определяет максимальное время передачи данных от отправителя до получателя. Значение задержки может меняться от одного элемента к другому. Источники этих изменений – нестабильность процессов передачи или сдвиг.
P.s. Насчёт нестабильности (в потоке объектов их фактическое время появления отличается от заданного момента. При передаче видео нестабильность выражается в дрожании получаемой картинки).
P.s.s. Насчёт сдвига (сдвиг выражается в постоянно увеличивающейся разнице между заданным и фактическим моментом появления мультимедийных потоков (объектов). При передаче видео сдвиг проявляется замедлением движущегося изображения.
Надёжность. Связана с потерями и повреждениями данных. Может быть указана вероятность потерь и метод борьбы с ошибочными данными. Необходимо математически описать характеристики трафика посредством дескриптора файлового потока, который содержит пиковую скорость, среднюю скорость, максимальный объём передаваемой информации.
Управление доступом – это преактивная форма управления перегрузками, гарантирующая, что спрос на сетевые ресурсы не превысит предложение. Реактивная форма управления используется в TCP. Для управления доступом используется модуль контроля доступа (МКД, на фото ошибка в виде «МКО»; рис.5). На вход поступает дескриптор трафика и требования к QoS, а на выходе формируется решение о принятии потока. Для этого, модуль контроля доступа обращается к модулю критериев приёма, в котором содержатся правила, по которым схема управления доступом принимает или отклоняет поток. Т.к. сетевые ресурсы общие для всех принятых потоков, то принятие нового потока может повлиять на все остальные, поэтому решение контроля доступа принимается на основе оценки влияния нового модуля на другие. Если источник информации строго соответствует заданным значениям дескриптора, то модуль просто использует эти значения, но при передаче в real-time, строго задать параметры не всегда удаётся и в условиях пульсирующего трафика использование сети может быть крайне низким, если управление доступом производится на основе параметров, заданных в начале сеанса.
Следующий принцип – управление трафиком. После принятия трафиком заданный QoS источник обязан придерживаться профиля. Если нет, то сбои в модели обслуживания. Для управления графиком всегда используется алгоритм дырявого ведра.
Рис.5 – Схема работы модуля контроля доступа (МКД)
Классификация пакетов. Каждый пакет, как реального, так и нереального времени в сети, обрабатывается одинаково на всех узлах, но в режиме мультимедийного трафика требуется дифференцированный подход, поэтому моделям необходимо различать пакеты в режиме реального времени. Для этого производится маркировка пакетов, а для маркировки – ToS в пакете.
Планирование пакетов. Если в сети используется дифференцированный подход, то планирование FIFO должно быть заменено механизмами очередей. Например, приоритеты очередей формируют различные очереди для разных типов трафика, каждая очередь имеет приоритет, с которым она обслуживается. Очередь с более низким приоритетом начнёт обрабатываться только тогда, когда нет очереди с более высоким приоритетом.
Потеря пакета. При перегрузке сети пакеты должны быть удалены маршрутизатором и в принятой модели это делается случайным образом. Но, при передаче мультимедиа, некоторые кадры более важны, чем другие. Например, MPEG поток содержит I, P, B кадры. Кадры I сжимаются без использования временной избыточности между кадрами, P и B формируются с использованием векторов движения от I, следовательно кадры I более важны, чем P или B.
Маршрутизация на основе QoS. Пусть есть сеть, состоящая из пяти узлов (например, A, B, C, D, E). По бокам на линии – скорость в Мбит/с. Интернет с негарантированной доставкой использует протоколы RIP, OSPR, VGB. Данные протоколы негарантированной маршрутизации используют одноцелевые алгоритмы оптимизации, которые рассматривают только один показатель, сводят его к минимуму для нахождения кратчайшего пути и трафик направляется по этому пути. При маршрутизации на основе QoS пути для разных потоков отправляются в соответствии с информацией о доступности ресурсов.
Кроме маршрутизации на основе QoS, есть маршрутизация на основе политик и ограничений. Маршрутизация на основе политик означает, что решение о маршрутизации принимается не на знаниях топологии сети или её метрик, а на некоторых политиках администрирования, которые, например, может запретить транспортный поток по конкретному пути из соображений безопасности, даже если этот путь удовлетворяет требованиям QoS. Маршрутизация на основе ограничений более широкая. Маршруты вычисляются на основе нескольких ограничений, в том числе и ограничений QoS и политик.
Интегрированные сервисы запрашивают от приложения их требования к трафику и к QoS, предполагают передачу промежуточному маршрутизатору информации о резервировании (размер буфера, пропускная способность). Отсюда следует, что сущность интегрированных сервисов – это контроль-компонент задержки очередей, а сама задержка – это центральный момент.
IntServ вводит три класса обслуживания:
1 класс – гарантированный сервис
2 класс – сервис контроля нагрузки
3 класс – сервис негарантированной доставки
Для описания классов вводится поток дескрипторов, который состоит из двух частей: спецификация фильтра и спецификация потока.
Спецификация фильтра представляет собой информацию, необходимую классификатору пакетов для определения пакетов, которые принадлежат этому потоку.
Спецификация потока состоит из спецификации трафика (T spec) и спецификации запроса на обслуживание (R spec).
T spec описывает поведение трафика в потоке через μ и λ, где λ – поток заявок, μ – их среднее время обслуживания.
В R spec содержатся требования к QoS (задержка, нестабильность, потеря пакетов). Так как все узлы сети на пути от источника до места назначения должны быть проинформированы о запрашиваемых ресурсах, то протоколов сигнализации не требуется. Вместо этого используется протокол резервирования ресурсов (RSVP).
Система сигнализации в RSVP представлена на рис.6.
Рис.6 – Система сигнализации в RSVP
Суть работы системы сигнализации в RSVP: есть источник и назначение. На пути находятся граничные маршрутизаторы, которые действуют, например, через сеть Internet.
Отправитель посылает сообщение PATH для приёмника с указанием характеристик трафика. Каждый промежуточный маршрутизатор на пути сообщения PATH для следующего шага определяется протоколом маршрутизации. Приёмник, получив данное сообщение, отвечает сообщением RESV, и каждый промежуточный маршрутизатор на пути от приёмника до источника может либо отклонить это сообщение, либо принять.
Если запрос отклоняется, то маршрутизатор посылает сообщение об ошибке на приёмник и процесс сигнализации завершается. Если запрос принят, то выделяются буферы и пропускная способность и в маршрутизаторе устанавливаются соответствующие состояния.
RSVP используется для различных сервисов управления QoS, не определяет внутренний формат полей, рассматривает их как непрозрачные и только взаимодействует с установкой механизма. Поддерживает одно- и многоадресные приложения, в том числе гетерогенные QoS (в одной группе многоадресной рассылки можно запросить различные QoS).
Гарантированный уровень обслуживания обеспечивает твёрдые гарантии величины задержки и доставки пакетов; не контролирует минимальную или среднюю, а только максимальную задержку, следовательно, пакеты приходят к получателю в течение требуемого времени и не отменяются, и не отбрасываются. Используя спецификацию трафика T spec, сеть вычисляет различные параметры, описывающие обработку потоков, а путем комбинирования параметров вычислить максимальную длину очереди и задержку маршрутизации пакетов.
Сервис управления загрузками. Данный сервис повышает качество обслуживания RTT приложений и предполагает, что в условиях незагруженной сети высокий процент переданных пакетов успешно доставляется, а задержка передачи почти не отличается от минимальной задержки. Таким образом, сеть доступна для обработки с требуемым уровнем трафика. Приём запроса управления загрузкой – это обязательство обеспечить поток условиями, равными условиям неконтролируемого трафика при невысокой нагрузке. Данный сервис описывается только с помощью T spec, так как не даёт каких-либо количественных гарантий. Контролируемая загрузка потока в условиях отсутствия перегрузки имеет заданное качество обслуживания. Сетевые элементы освобождаются от избыточного трафика.
Сервис негарантированной доставки. В данном сервисе отсутствуют поля T spec и R spec, поэтому никакой контроль не производится, и доставка не гарантируется.
Недостатки модели:
Для резервирования ресурсов IntServ использует протокол RSVP. Несмотря на то, что это позволяет сети предоставлять гарантии сервиса на уровне потока, это и приводит к проблеме масштабирования, так как маршрутизаторы должны поддерживать заданное состояние для каждого потока, который через него проходит, а это может привести к перегрузке.
RSVP – программный протокол, а не аппаратный. Его состояния обновляются регулярно, следовательно, происходит расход трафика.
Дифференцированные сервисы (DiffServ)
Данный сервис делит сеть на отдельные регионы, так называемые DS-домены. Каждый домен управляется как отдельный объект. Основной результат – гарантированный сервис в рамках одного DS-домена (но если хотя бы один транзитный участок находится за пределами домена, то гарантии нет).
Объединение нескольких доменов для того, чтобы гарантировать сервисы – это SLA соглашение. SLA определяет правила разметки трафика и действия по обработке лишнего трафика. Все вершины в домене делятся на граничные и внутренние.
Граничные вершины – это первая или последняя вершина, через которую проходит пакет при входе в домен/выходе из домена. В ней выполняются такие действия, как: контроль доступа, классификация пакета, обеспечение условия прохождения трафика. Алгоритм контроля доступа может ограничить число потоков внутри домена. Простейший случай – создать центральную структуру данных, содержащую текущий статус всех связей в домене. И когда поток проверяется на доступ, то вершина просто проверяет структуру данных на удовлетворение путей потока требованиям QoS. Пакет, принадлежащий принятому потоку в этой вершине, классифицируется и маркируется как принадлежащий одному из классов сервиса, так называемый Behavior Aggregate.
К каждому классу ставится в соответствии 8-битовое кодовое слово, которое называется точкой кода. Пакет маркируется добавлением точки кода в поле Tos заголовка. Граничные вершины обеспечивают соглашение по трафику между собственным доменом и другими доменами по необходимости.
Внутренняя вершина – это вершина, которая расположена полностью внутри домена, имеет соединение либо с внутренними, либо с внешними (граничными) вершинами. Основная и единственная функция – пересылка пакетов. Когда пакет со своей точкой кода поступает в такую вершину, он пересылается на один транзитный участок дальше в соответствии с заранее определёнными правилами для данного класса пакетов. Данные правила называются PHB (Per-Hop Behavior).
Отличие дифференцированных от интегрированных сервисов: в дифференцированных сервисах состояние потока определяют только граничные вершины.
Правило PHB:
PHB определяют, каким образом буферы маршрутизатора и пропускная способность сети делятся между конкурирующими потоками. Они определяются в терминах ресурсов маршрутизатора, приоритетов относительно других PHB и свойств (параметров) трафика. Несколько PHB могут объединяться в группы. Группа может действовать на несколько путей, так как она определена в терминах характеристик поведения и не зависит от специфики приложений. Для пакета PHB выбирается в первой вершине на основе точки кода. Соответствие между точкой кода и PHB либо «один к одному», либо «многие к одному».
Определяют два общих PHB:
AF PHB – делит входящий поток на 4 класса с разным уровнем гарантий, минимальной пропускной способности и размером буфера. Внутри каждого класса пакетам назначается один из трёх приоритетов потери и путём изменения количества ресурсов в классе достигается разный уровень производительности.
EF PHB – определяет, что скорость отправки трафика из любого маршрутизатора должна быть больше или равной его суммарной скорости получения пакетов. Это гарантирует минимальную задержку пакетов в очереди, которая ограничивается только пропускной способностью сети. EF PHB в основном используется для обеспечения класса сервиса типа премиум (класс, где отсутствуют задержки и нестабильность). При этом, EF PHB требует жёсткий механизм контроля доступа, так как обеспечивают скорость прибытия трафика меньше его отправки. Кроме этого, требуется жёсткие политики и, если пакеты нарушают установленные правила, они либо отбрасываются, либо переводятся в более низкий класс.
Следующий класс – мультипротокольная маршрутизация по меткам (MPLS). Суть работы: когда пакет IP пребывает на маршрутизатор, то следующий hop определяется путём (методом) составления длиннейшего префикса. Данный процесс вносит задержку, так как таблица маршрутизации достаточно велика и он повторяется для каждого пакета, даже если они принадлежат одному потоку.
Для устранения этой проблемы пакетам прикрепляется метка с использованием IP-коммутатора, который обновляется после каждого транзитного участка. При прибытии такого пакета на маршрутизатор поиск производится в короткой таблице. Данный алгоритм легко реализуется аппаратно, следовательно, обеспечивается высокая скорость.
Сеть MPLS делится на домены с граничными вершинами LER и внутренними вершинами LSP. Пакетам, входящим в домен MPLS, назначаются метки, по которым происходит коммутация внутри домена. Метки определяют качество обслуживания потоков. Последовательность LSR на пути домена MPLS называется LSP (Label Switchen Pass).
Домен гарантирует уровень обслуживания. Для обеспечения дифференцированной обработки разных типов мультимедиа используется концепция FEC (Forward Equivalents Pass). Группа пакетов пересылается одинаково, если они принадлежат одному классу FEC. Ограничений на количество и сложность структуры не накладываются. Таким образом, возможно определить отдельный FEC для каждого потока или каждого типа мультимедиа.
Метки имеют локальное значение в пределах заключенных соглашений. Они должны назначаться на каждом транзитном участке LSP до того, как поток начнёт использовать LSP.
Назначение меток осуществляется одним из трёх способов:
Topology driven. LSP автоматически устанавливается для каждой пары LSR. Схема накладывает жёсткие требования на использование меток в каждом LSR. Преимущество – отсутствие задержек на установку LSP до использования его потоком трафика.
Request driven. LSP устанавливается на базе определённых запросов, для чего и может использоваться RSVP. Преимущество - LSP формируется только по запросу.
Traffic driven. Данный способ комбинирует преимущества двух предыдущих, т.е., LSP устанавливается только в тот момент, когда LSR идентифицирует шаблоны трафика. Если идентификация не нужна, то используются обычные методы маршрутизации.