Рефераты. Разработка методов определения эффективности торговых интернет систем
каждый пакет
содержал временную метку— таким образом получатель может
воспроизвести
поступающие данные с той же скоростью, что и отправитель.
Поскольку
RTP определяет (и регулирует) формат полезной нагрузки
передаваемых
данных, с этим напрямую связана концепция синхронизации, за
которую частично
отвечает механизм трансляции RTP — микшер. Принимая
потоки пакетов RTP
от одного или более источников, микшер, комбинирует их
и посылает новый
поток пакетов RTP одному или более получателям. Микшер
может просто
комбинировать данные, а также изменять их формат, например,
при комбинировании
нескольких источников звука. Предположим, что новая
система хочет
принять участие в сеансе, но ее канал до сети не имеет
достаточной емкости
для поддержки всех потоков RTP, тогда микшер получает
все эти потоки,
объединяет их в один и передает последний новому члену
сеанса. При
получении нескольких потоков микшер просто складывает значения
импульсно-кодовой
модуляции. Заголовок RTP, генерируемый микшером,
включает
идентификатор отправителя, чьи данные присутствуют в пакете.
Более
простое устройство — транслятор, создает один исходящий пакет RTP
для каждого
поступающего пакета RTP. Этот механизм может изменить формат
данных в пакете или
использовать иной комплект низкоуровневых протоколов
для передачи данных
из одного домена в другой. Например, потенциальный
получатель может
оказаться не в состоянии обрабатывать высокоскоростной
видеосигнал,
используемый другими участниками сеанса. Транслятор
конвертирует видео
в формат более низкого качества, требующий не такой
высокой скорости
передачи данных.
Методы
контроля работы
Протокол RTP
используется только для передачи пользовательских данных —
обычно
многоадресной — всем участникам сеанса. Совместно с RTP работает
протокол RTCP
(Real-time Transport Control Protocol), основная задача
которого состоит в
обеспечении управления передачей RTP. RTCP использует
тот же самый
базовый транспортный протокол, что и RTP (обычно UDP), но
другой номер порта.
RTCP выполняет несколько функций:
Обеспечение и
контроль качества услуг и обратная связь в случае
перегрузки. Так как
RTCP-пакеты являются многоадресными, все участники
сеанса могут
оценить, насколько хороши работа и прием других участников.
Сообщения
отправителя позволяют получателям оценить скорость данных и
качество передачи.
Сообщения получателей содержат информацию о
проблемах, с
которыми они сталкиваются, включая утерю пакетов и
избыточную
неравномерность передачи. Обратная связь с получателями важна
также для
диагностирования ошибок при распространении. Анализируя
сообщения всех
участников сеанса, администратор сети может определить,
касается данная
проблема одного участника или носит общий характер. Если
приложение-отправитель
приходит к выводу, что проблема характерна для
системы в целом,
например, по причине отказа одного из каналов связи, то
оно может увеличить
степень сжатия данных за счет снижения качества или
вообще отказаться
от передачи видео — это позволяет передавать данные по
соединению низкой
емкости.
Идентификация
отправителя. Пакеты RTCP содержат стандартное текстовое
описание
отправителя. Они предоставляют больше информации об отправителе
пакетов данных, чем
случайным образом выбранный идентификатор источника
синхронизации. Кроме
того, они помогают пользователю идентифицировать
потоки, относящиеся
к различным сеансам.
Оценка
размеров сеанса и масштабирование. Для обеспечения качества услуг
и обратной связи с
целью управления загруженностью, а также с целью
идентификации отправителя,
все участники периодически посылают пакеты
RTCP. Частота
передачи этих пакетов снижается с ростом числа участников.
При небольшом числе
участников один пакет RTCP посылается максимум
каждые 5 секунд.
RFC-1889 описывает алгоритм, согласно которому
участники
ограничивают частоту RTCP-пакетов в зависимости от общего
числа участников.
Цель состоит в том, чтобы трафик RTCP не превышал 5%
от общего трафика
сеанса.
Формат заголовка протокола RTP
RTP — потоко
-ориентированный протокол. Заголовок RTP-пакета создавался с
учетом потребностей
передачи в реальном времени. Он содержит информацию о
порядке следования
пакетов, чтобы поток данных был правильно собран на
принимающем конце,
и временную метку для правильного чередования кадров
при воспроизведении
и для синхронизации нескольких потоков данных,
например, видео и
аудио.
Каждый
пакет RTP имеет основной заголовок, а также, возможно,
дополнительные
поля, специфичные для приложения.
Использование TCP в
качестве транспортного протокола для этих приложений
невозможно по
нескольким причинам:
Этот протокол
позволяет установить соединение только между двумя конечными точками,
следовательно, он не подходит для многоадресной передачи.
TCP
предусматривает повторную передачу потерянных сегментов, прибывающих,
когда приложение реального времени уже их не ждет.
TCP не имеет
удобного механизма привязки информации о синхронизации к сегментам —
дополнительное требование приложений реального времени.
Другой широко
используемый протокол транспортного уровня — LJDP не имеет
части ограничений
TCP, но и он не предоставляет критической информации о
синхронизации.
Несмотря на то, что
каждое приложение реального времени может иметь свои
собственные
механизмы для поддержки передачи в реальном времени, они имеют
много общих черт, а
это делает определение единого протокола весьма
желательным.
Эту
задачу и призван решить новый транспортный протокол реального времени
— RTP (Real-time
Transport Protocol) , который гарантирует доставку
данных
одному или более
адресатам с задержкой в заданных пределах, т. е. данные
могут быть
воспроизведены в реальном времени.
3.4 Протокол управления передачей RTCP
Протокол
управления передачей RTCP (Real-Time
Transport Control Protocol)
работает с
несколькими адресатами для обеспечения обратной связи с
отправителями
данных RTP и другими участниками сеанса. RTCP использует тот
же самый базовый
транспортный протокол, что и RTP (обычно, UDP), но другой
номер порта. Каждый
участник сеанса периодически посылает RTCP-пакет всем
остальным
участникам сеанса.
RTCP выполняет
следующие функции:
обеспечение
качества услуг и обратной связи в случае перегрузки;
идентификация
отправителя;
оценка размеров
сеанса и масштабирование.
Многоадресность
RTCP-пакетов дает возможность участникам группы оценить
качество приема и
сообщить о своих проблемах (например, утере пакетов,
избыточной
неравномерности передачи). Обратная связь с получателями важна
также для
диагностики ошибок при распространении пакетов.
RTCP-пакеты
содержат стандартное текстовое описание отправителя,
обеспечивающее его
идентификацию. Кроме того, они помогают пользователю
идентифицировать
потоки, относящиеся к различным сеансам. Например, они
дают возможность
определить, что одновременно открыты отдельные сеансы для
передачи аудио- и
видеоинформации.
Оценка размера
сеанса и масштабирование осуществляются управлением
частотой передачи
RTCP-пакетов. При небольшом числе участников один
RTCP-пакет
посылается максимум каждые 5 секунд. Цель состоит в том, чтобы
трафик RTCP не
превышал 5% от общего трафика сеанса.
3.5 Протокол UDP
Протокол
UDP намного проще, чем ТСР; он полезен в ситуациях, когда мощные механизмы
обеспечения надежности протокола ТСР не обязательны. Заголовок UDP имеет всего
четыре поля: поле порта источника (source port), поле порта пункта назначения
(destination port), поле длины (length) и поле контрольной суммы UDP (checksum
UDP). Поля порта источника и порта назначения выполняют те же функции, что и в
заголовке ТСР. Поле длины обозначает длину заголовка UDP и данных; поле
контрольной суммы обеспечивает проверку целостности пакета. Контрольная сумма
UDP является факультативной возможностью.
Главным применением
протокола UDP являются системы Internet Name Server, и Trivial File Transfer,
SNMP.
Структура протокольного блока
Байты
Разряды
7 6 5 4 3 2 1 0
7 6 5 4 3 2 1 0
7 6 5 4 3 2 1 0
7 6 5 4 3 2 1 0
0
Порт источника
Порт получателя
4
Длина протокольного блока
Проверочная сумма
8 . .
Данные