Статья опубликована в рамках: XXXVIII Международной научно-практической конференции «Наука вчера, сегодня, завтра» (Россия, г. Новосибирск, 15 сентября 2016 г.)
Наука: Информационные технологии
Скачать книгу(-и): Сборник статей конференции
дипломов
ДИНАМИЧЕСКАЯ ПРИОРИТИЗАЦИЯ ТРАФИКА РЕАЛЬНОГО ВРЕМЕНИ В МУЛЬТИСЕРВИСНЫХ СЕТЯХ
DYNAMIC PRIORITIZATION OF REAL-TIME TRAFFIC IN MULTI-SERVICE NETWORKS
Dmitry Khomenchuk
postgraduate student in the Bonch-Bruevich Saint-Petersburg state university of communication,
Russia, Saint-Petersburg
АННОТАЦИЯ
В статье предлагаются механизмы управления задержками, учитывающие время распространения сигнала от источника до получателя, а также текущие задержки при прохождении пакетов по сети.
ABSTRACT
The article proposes mechanisms of control delays taking into account the time of signal propagation from source to receiver, and also the current path delay of the packets over the network.
Ключевые слова: Мультисервисная сеть, Качество обслуживания, Услуги реального времени, задержка распространения, время передачи, вариация задержки.
Keywords: Multiservice Network, Quality of Service (QoS), Real Time Service, Propagation delay, Serialization delay, Delay variation.
На сегодняшний день в мультисервисных сетях используются пакетные технологии, а ключевая роль принадлежит стеку протоколов TCP/IP. Службы реального времени, к которым относится голосовой трафик и видеоконференции, чувствительны к задержкам и её вариациям.
В пакетных сетях задержка при передаче информации состоит из задержки на узле-отправителе, на узле-получателе и в транспортной сети. В дальнейшем будем рассматривать только задержку в транспортной сети. Она состоит из задержки распространения сигнала, времени обработки пакета каждым узлом, ожидания в очередях и передачи пакетов в канал на каждом узле сети. Задержки, связанные с распространением сигнала и передачей между интерфейсами можно считать постоянными задержками. Сумма задержек в очередях на всех сетевых узлах является переменной задержкой.
Согласно международным рекомендациям, задержки при передачи голоса по сетям связи не должны превышать 150 мс, в противном случае они будут влиять на качество диалога. Учитывая, что при разных маршрутах следования постоянная задержка может сильно отличаться, а задержка распространения сигнала на некоторых маршрутах может достигать 100 мс, это отличие может быть ощутимым. На величину задержки так же влияет время передачи пакета, особенно при низких скоростях передачи в канале.
На сегодняшний день данные обстоятельства в большинстве случаев не учитываются, и трафик реального времени передается с повышенным приоритетом. Для решения данной проблемы на каждом сетевом узле можно одни потоки задерживать дольше, т. е. передавать с меньшим приоритетом, чем другие. Приоритетность потоков может определяться резервной задержкой каждого потока в отдельности. В таком случае, при назначении приоритетов на каждом промежуточном узле, стоит учитывать резерв допустимой задержки. Для этого необходимо знать рекомендуемое время прохождения пакета по сети, текущее отклонение от данного времени и прогнозировать условия прохождения пакета от данного узла до получателя.
Рассмотрим общий подход к обеспечению требуемых временных параметров. На выходном интерфейсе в дополнительном поле заголовка отмечается задержка, которая определяет переменную задержку блоков данных на узле. Задержку передачи блоков данных из конца в конец можно рассчитать по формуле:
,
где: – задержка распространения, ti – задержка в i-ом сетевом узле, N – число узлов по пути следования блока данных. При данных обозначениях, задержка распространения включает в себя задержку, связанную с передачей блока данных в канал.
Отслеживая задержку при передаче блока данных, можно контролировать качество обслуживания для потоков, чувствительных к задержке. Важно понимать, что точность измерения задержки влияет на разрядность счетчика. При передаче VoIP-трафика в технологии TCP/IP используется протокол RTP (Real-time Transport Protocol), который переносит временные отметки. На принимающем узле эти метки используются для «выравнивания» задержки блоков речи в джиттер-буфере. Если блоки слишком долго доставляются до адресата, то они отбрасываются на принимающем узле. При использовании протокола RTP только оконечные узлы принимают решения о качестве обслуживания потока и своевременности доставки каждого блока в отдельности. При таком подходе, промежуточные узлы сети могут пересылать пакеты, превысившие допустимую задержку. Также неизвестно, можно ли придержать блок или его необходимо немедленно передавать.
В предлагаемом решении механизм обеспечения параметров задержки предусматривает участие всех узлов сети в процессе контроля параметров качества обслуживания для любого вида трафика. Каждый узел сети, исходя из передаваемой дополнительной информации о резерве задержки, может принимать решение обрабатывать блок данных с большим или меньшим приоритетом, или отбросить его как «опоздавший».
По величине резерва задержки можно определить, как долго блок данных может ожидать своей очереди на отправку.
С этой целью каждый передаваемый пакет на выходе k-го сетевого узла имеет в заголовке дополнительные поля, включающие следующие параметры:
Nk – текущее число промежуточных узлов, оставшихся до узла-получателя;
– остающийся резерв, .
Эти параметры передаются в заголовке блока данных. В процессе перемещения блока с одного узла на другой, значения этих параметров изменяются. Из Nk на каждом узле вычитается единица, а из вычитается интервал времени, на который блок был задержан на k-ом узле сети. Здесь – резерв по задержке блока данных, определяемый, как разность между допустимой задержкой при передаче через сеть, устанавливаемой пользователем, приложением или иным способом, и задержкой распространения.
Для работы механизма контроля и управления задержками сначала необходимо определить значения параметров, используемых в этом механизме. При вводе блока данных в сеть задаются начальные значения дополнительных параметров. Для этого, при установлении соединения необходимо определить количество промежуточных узлов между отправителем и получателем, а также задержка из конца в конец. Число промежуточных узлов определяется простым подсчетом узлов по пути следования. Чтобы определить задержку, необходимо отметить время отправления пакета, а на каждом промежуточном узле к этому времени прибавлять задержку, имеющее место на данном узле. Величина смещения записывается в поле управления блока. Начальное смещение на узле-отправителе равно 0. После прохождения пакета от отправителя к получателю, он передается в обратном направлении. В этом пакете отмечается количество промежуточных узлов N и задержки, полученных при прохождении пакета от отправителя до получателя. На обратном пути, в нем также отмечается количество промежуточных узлов и задержки. Если маршрут прохождения пакета в прямом и обратном направлении не меняется, то количество сетевых узлов будет одинаковым, а задержки могут быть разными. Зная время получения пакета, можем определить задержку в оба конца:
,
где:
– задержка в прямом и обратном направлении, соответственно;
– задержка на i-м сетевом узле в прямом и обратном направлении, соответственно.
Также необходимо принимать во внимание задержку на узле-получателе.
Поскольку задержки при прохождении блоков данных по сети зависят от её загрузки, то полученные значения характеризуют текущие задержки в узлах коммутации и могут дополнительно учитываться при определении .
После определения значений всех необходимых для передачи соответствующего трафика параметров, блоки данных поступают в сеть со следующими исходными значениями:
.
При поступлении блока данных на k-й узел сети, рассчитывается коэффициент приоритета для этого блока:
где: – оставшаяся резервная задержка, – число оставшихся до получателя сетевых узлов.
На каждом сетевом узле происходит сортировка блоков, исходя из значения , которое рассчитывается для каждого блока. Так как параметр отражает запас резервной задержки, рассчитанной для одного сетевого узла, то чем меньше значение , тем выше приоритет. Блоки передаются в канал в порядке, определяемом их приоритетами. Если на одном из узлов принимает значение 0, то это означает, что блок превысил назначенное ему «время жизни» и отбрасывается. В процессе нахождения блоков в очереди на исходящем интерфейсе для каждого блока уменьшается и осуществляется перерасчет значения . Если размер очереди превышает допустимый, то из очереди удаляется соответствующее количество блоков. Выбор блоков для удаления может осуществляться исходя из приоритетов или случайным выбором.
На узел получателя блок приходит с записанным в заголовке резервом задержки, т. е. указано время, на которое надо задержать выдачу данного блока, чтобы выровнять задержку для всех принимаемых блоков.
Коэффициент приоритета определяет, на какое время можно задержать блок данных на каждом из оставшихся до получателя сетевых узлов. Блоки данных, следующие от отправителя к получателю через большее число узлов, на входе в сеть имеют меньшее значение и, соответственно, больший приоритет.
Можно по-другому рассчитывать коэффициент приоритета , чтобы продвижение блоков данных осуществляется с учетом соотношения между N и . В этом случае:
,
где: – выравнивающий коэффициент.
Тогда, при вводе блока данных в сеть, независимо от соотношения между значениями N и , коэффициент приоритета . Это позволит выровнять начальные условия передачи для всех блоков, поступающих в сеть. Далее при прохождении по сети значение для разных блоков может изменяться, но за счет приоритизации значение будет корректироваться с тем, чтобы у всех блоков оно приближалось к 1.
При расчете коэффициента приоритета можно также учитывать другие признаки приоритетов потоков. Возможны также другие методики расчета коэффициентов приоритета на основании параметров , , и .
Следует отметить, что использование рассматриваемых приоритетов не исключает использование других механизмов, используемых при обеспечении QoS.
Рассмотренный механизм дает возможность реализации различных требований по задержке, вплоть до постоянной задержки. В реальных условиях не только трафик реального времени, а все виды трафика имеют определенные требования по допустимой задержке, поэтому предлагаемые методы применимы для любых видов потоков данных. Это позволяет обеспечить единые механизмы контроля и управления задержками для всех видов трафика независимо от его структуры. Предлагаемые механизмы применимы в различных условиях работы сети. Особая эффективность достигается в глобальных сетях. В них задержка распространения может изменяется в широких пределах, в зависимости от месторасположения взаимодействующих устройств, а загруженность различных участков сети может существенно различаться в разное время. Данные обстоятельства никак не учитываются, используемыми механизмами обеспечения качества обслуживани, в то время как предлагаемые механизмы используют эти особенности глобальных сетей.
Список литературы:
1. Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. Учебник для вузов. 5-е изд. – СПб.: Питер, 2016.
дипломов
Оставить комментарий