Способ управления потоками данных в центрах коммутации при сопряжении разнородных сетей
Иллюстрации
Показать всеИзобретение относится к управлению потоками данных в сетях асинхронной передачи дискретной информации с пакетной коммутацией, в частности к системам управления трафиком, проходящим через центры коммутации (ЦК) пакетов. Технический результат позволяет повысить вероятностно-временные параметры передачи сообщений в условиях нестационарного трафика за счет снижения вероятности отказа в приеме пакетов высокоприоритетного трафика при сохранении максимально возможной интенсивности низкоприоритетного трафика, путем адаптации доступного объема в памяти центров коммутации для пакетов различных потоков данных к скорости ее заполнения этими пакетами и объему свободной памяти. Для этого в заявленном способе при управлении потоками пакетов данных, поступающих в центры коммутации, учитывают степень занятости и скорость изменения свободного объема буферной памяти ЦК. Установление функциональной зависимости между степенью занятости и скоростью заполнения буферной памяти позволяет так ограничивать трафик, что потоки пакетов данных, имеющих высшие приоритеты, получают минимальное ограничение. Изменение интенсивности входящих потоков осуществляется за счет адаптивной вариации доступного объема памяти, выделяемого для пакетов каждого из потоков при заполнении, очередного элементарного объема памяти. 5 з.п. ф-лы, 3 ил.
Реферат
Изобретение относится к электросвязи, а именно к способам управления потоками данных в сетях асинхронной передачи дискретной информации с пакетной коммутацией, в частности к системам управления трафиком (трафик - нагрузка, создаваемая потоком вызовов, сообщений и сигналов, поступающих на средства связи [Федеральный закон "О связи". - Российская газета, 10.07.2003. - №135]), проходящим через центры коммутации (ЦК) пакетов. Способ может быть использован в коммутаторах и маршрутизаторах потоков пакетов данных с целью повышения вероятностно-временных характеристик передачи сообщений.
Заявленное техническое решение расширяет арсенал средств аналогичного назначения.
Известен способ управления потоками при передаче пакетов данных по патенту Япония №6-164625, класс Н04L 12/48, G06F 13/00 "Способ и устройство для управления скоростью потока пакетов", заявл. 06.10.1994, 1994. Известный способ включает следующую последовательность действий. Предварительное установление параметров обработки потоков пакетов, индивидуальных для каждого потока, прием пакетов данных от источника, сравнение периода поступления пакетов с установленными периодом Т, по результатам сравнения запись пакетов в память или их стирание, передача пакетов получателю.
Недостатком описанного способа является низкая производительность (производительность - интенсивность своевременно обслуженного потока пакетов [Захаров Г.П. Методы исследования сетей передачи данных. - М.: Радио и связь, 1982. - 208 с., ил. на стр.22, 25]) коммутационных устройств сети передачи данных при пульсирующем трафике, что обусловлено большим количеством стертых пакетов при несовпадении параметров пульсирующего трафика и априорно установленного периода T его обработки, кроме того, следует отметить отсутствие процедуры разделения и приоритетной обработки поступающих потоков пакетов с учетом их категории срочности.
Также известен способ управления потоками при передаче пакетов данных по патенту РФ №2183912 "Способ управления передачей пакетов потоков цифровой информации", МПК Н04L 12/56, заявл. 09.02.2001. Известный способ заключается в том, что предварительно устанавливают параметры обработки пакетов, общие для всех потоков данных: контрольный интервал времени Тконт, верхний Рверх и нижний
Рнижн коэффициент заполнения памяти. Одновременно устанавливают индивидуальные параметры обработки пакетов для i-го потока, где i=1, 2, 3…Y, Y - общее число потоков: интенсивность обслуживания пакетов µI, допустимое время задержки пакетов Тдопi, размер выделенной памяти Ввыдi=µi.
Принимают пакеты данных различных потоков, предназначенные для последующей передачи в данном направлении. Запоминают их, выделяют пакет, имеющий минимальное виртуальное время передачи Твирт, и передают его. После этого в реальном масштабе времени для каждого потока измеряют занимаемый им объем памяти Взанi, как сумму всех пакетов этого потока, находящихся в данный момент времени в памяти. Сравнивают размер объема памяти, занимаемого пакетами i-го потока Взанi, с выделенным для него объемом памяти Ввыдi. Увеличивают объем памяти, выделенной для пакетов i-го потока, при Ввыдi<Взанi на вычисляемую величину . Уменьшают объем выделенной памяти при Ввыдi>Взанi. Удаляют пакеты, лежащие вне выделенных для потоков объемов памяти.
Недостатком данного способа является относительно низкая производительность центров коммутации пакетов в условиях быстро изменяющейся интенсивности трафика. Это объясняется тем, что при значительной девиации интенсивности трафика не представляется возможным предварительно определить интенсивность обслуживания пакетов µi и соответственно размер памяти Ввыдi, выделяемой для пакетов i-го потока. Кроме того, большое число предварительно устанавливаемых параметров (Тдопi, Тконт, Рверх, Рниж) снижает эффективность управления размером и , что приводит к увеличению количества пакетов,
удаленных из памяти центров коммутации, вследствие попадания их вне выделенных объемов памяти. Удаленные из памяти ЦК пакеты передаются повторно, что увеличивает время пребывания их в сети и снижает вероятность своевременной доставки получателю.
Наиболее близким по технической сущности к заявленному является способ управления потоками при передаче пакетов данных по патенту РФ №2272362 "Способ управления потоками при передаче пакетов данных", МПК Н04L 12/56, заявл. 21.09.2004. Сущность способа-прототипа заключается в том, что предварительно устанавливают размер объема памяти В центра коммутации, дискретное значение элементарного объема памяти ΔВэ и функцию коэффициента задержки подтверждения Р(Вт). Дополнительно при приеме пакетов данных измеряют время tm, где m=0, 1, 2, …, в течение которого текущее значение объема памяти Вт, занятого пакетами данных всех принимаемых потоков, изменится на величину ΔВэ. Кроме того, измеряют среднюю в интервале времени tm интенсивность поступления
λi(tm) пакетов i-го потока из канала связи, где i=1, 2, 3, …, Y и среднюю интенсивность их передачи µi(tm) получателю. По измеренным значениям λi(tm) и µi(tm) рассчитывают среднюю в интервале времени tm скорость заполнения памяти пакетами каждого потока. По текущему значению памяти Вт, занятой пакетами данных всех принимаемых потоков, вычисляют текущее значение функции коэффициента задержки подтверждения Pm(Вт). Передачу подтверждения о приеме очередного пакета в следующем интервале времени t(m+l) задерживают на время .
В качестве функции коэффициента задержки подтверждения Р(Вт) выбирают линейную или экспоненциальную, или тригонометрическую функции, а значение элементарного объема памяти ΔВэ выбирают из расчета где М≥(2·Y). Среднюю скорость заполнения памяти пакетами i-го потока в интервале времени tm рассчитывают по формуле Rзап mi=λi(tm)-µi(tm).
По сравнению с аналогами способ-прототип позволяет повысить производительность сети передачи данных за счет снижения вероятности повторных передач пакетов между соседними ЦК.
Недостатком прототипа является, то что его относительно низкие вероятностно-временные характеристики передачи пакетов данных в условиях нестационарного трафика приводят к высокой вероятности отказа в приеме низкоприоритетных пакетов данных особенно в разнородных сетях передачи данных.
Целью заявленного технического решения является разработка способа управления потоками данных различных категорий срочности в центрах коммутации при сопряжении разнородных сетей передачи данных, позволяющего повысить вероятностно-временные характеристики передачи сообщений в условиях нестационарного трафика за счет снижения вероятности отказа в приеме пакетов высокоприоритетного трафика, при сохранении максимально возможной интенсивности низкоприоритетного трафика, путем адаптации количества доступного объема памяти в центрах коммутации для потоков пакетов данных различной категории срочности к скорости ее заполнения этими пакетами и объему свободной памяти.
Поставленная цель достигается тем, что в известном способе управления потоками при передаче пакетов данных, заключающемся в том, что предварительно для Jk>1 потоков пакетов данных, где k=1, 2, …, К, К - число категорий срочности, поступающих в память центра коммутации, устанавливают параметры, необходимые для их обработки, принимают пакеты данных, идентифицируют по принадлежности к одному из j-потоков, где j=1, 2, …, Jk, передают идентифицированные пакеты данных в память центра коммутации, запоминают и обрабатывают их, одновременно из числа ранее обработанных выделяют пакеты данных для последующей передачи и передают их получателю, а после приема получателем передают отправителю подтверждение о приеме очередного пакета данных, определяют интенсивность поступления λjk(tk) пакетов данных j-го потока из канала связи и интенсивность передачи µjk(tk) пакетов данных получателю за время tk изменения текущего ΔBkT состояния памяти центра коммутации на величину элементарного объема памяти ΔBk. В качестве параметров обработки пакетов данных задают: общий объем памяти центра коммутации В, вычисляют размер элементарного объема памяти ΔBk=В/К для j-го потока каждой k-ой категории срочности и задают функцию текущего заполнения памяти Fk(ΔBkT), причем одновременно с приемом и передачей пакетов данных считают количество принятых njвх(ΔBk) и переданных njвых(ΔBk) пакетов данных j-го потока за время tk заполнения элементарного объема ΔBk памяти ЦК, измеряют j-й поток пакетов данных, принадлежащий k-ой категории срочности, поступающий из канала связи, вычисляют уровень текущего заполнения ΔBkT элементарного объема памяти центра коммутации ΔBk, ΔBkT=k·ΔBk и сравнивают количество принятых пакетов данных j-го потока njвх(ΔBk) при заполнении очередного элементарного объема памяти ΔBk, с выделенным объемом памяти Bj для пакетов данных этого потока, в случае превышения допустимого значения Bj<njвх пакет данных стирают и дальнейшую его обработку не производят, в противном случае при Bj>njвх пакет передают в память центра коммутации, рассчитывают скорость заполнения RЗjk k-го элементарного объема памяти ΔBk пакетами j-го потока по формуле:
дополнительно по значению коэффициента k рассчитывают значение функции текущего заполнения памяти центра коммутации Fk(ΔBkT), которая может иметь линейный, экспоненциальный или тригонометрический вид, а ее область значений находится в интервале при этом
Объем памяти Bj(k±1), выделенной для пакетов данных каждого из j-потоков при заполнении следующего k±1 элементарного объема памяти ΔBk±1, определяют по формуле
где µl - средняя интенсивность передачи пакетов данных в канале связи l-го порта центра коммутации.
Подсчет количества пакетов данных njвх(ΔBk) и njвых(ΔBk) производят между моментами изменения текущего объема памяти центра коммутации ΔBkT, заполненного пакетами данных, превысившие выделенный лимит объема памяти Bj стирают.
Управление интенсивностью λjk(tk) поступающих потоков пакетов данных осуществляют варьированием объема памяти Bj доступного для пакетов данных каждого из j-потоков при заполнении очередного элементарного объема памяти ΔBk.
Новая совокупность существенных признаков в заявленном способе обеспечивает повышение вероятностно-временных характеристик передачи пакетов данных различных категорий срочности при передаче их в разнородных сетях за счет снижения вероятности отказа в приеме пакетов высокоприоритетного трафика при сохранении максимально возможной интенсивности низкоприоритетного трафика, когда величина параметра использования ресурсов стремится к единице λ/µ→1.
Заявленный способ поясняется чертежами.
Фиг.1 - блок-схема алгоритма, реализующего заявленный способ;
Фиг.2 - зависимость вероятности отказа в приеме пакетов во входных устройствах центра коммутации от интенсивности их поступления при ограничениях на объем буферной памяти.
Фиг.3 - структурная схема центра коммутации.
Заявленный способ реализуют следующим образом.
Известные способы управления потоками (см., например, В.М.Вишневский "Теоретические основы проектирования компьютерных сетей". Москва: Техносфера, 2003, стр.273-287; В.Г.Олифер, Н.А.Олифер "Компьютерные сети. Принципы, технологии, протоколы". СПб.: Питер, 2003, стр.634-644), в соответствии с которыми ограничивается либо общее количество пакетов
в памяти 21-2k центра коммутации (см. фиг.3), либо объемы памяти 21, 22, …2k соответственно выделяемые для пакетов n1вх, n1вх, …njвх различной категории срочности, включают в себя действия, присущие описанным выше аналогам. Объем памяти ΔBk, выделяемый для пакетов njвх определенной категории срочности, определяют из условия достаточности для хранения очереди среднестатистической длины сообщений этой категории срочности. Обработанные пакеты n1вых, n2вых, …njвых отправляют получателю через выходные устройства 3 в канал передачи данных. Однако установить точное значение размера памяти, выделяемого для пакетов каждого потока, достаточно сложно, так как оно зависит от интенсивности информационного обмена λjk(tk) и µjk(tk) между пользователями сети, а также принятых приоритетов обслуживания. В случае заполнения памяти В дальнейший прием пакетов блокируется, и пакеты во входных устройствах 1 центров коммутации стираются. Повторные передачи пакетов, осуществляемые протоколами верхних уровней, порождают лавинообразный рост количества стертых пакетов, так как они приходятся на уже перегруженную память центров коммутации. Это существенно снижает производительность сети вплоть до блокировки отдельных направлений связи.
Таким образом, при решении задачи распределения памяти центров коммутации между потоками данных различной категории срочности при сопряжении разнородных сетей, целью которой является снижение вероятности отказа в приеме пакетов высокоприоритетного трафика при сохранении максимально возможной интенсивности низкоприоритетного трафика, возникает необходимость адаптации объема памяти центров коммутации, выделенных для пакетов каждой категории срочности к интенсивности их обслуживания и степени заполнения памяти.
На решение данной проблемы и направлен заявленный способ, блок-схема алгоритма которого представлена на фиг.1.
Предварительно устанавливают параметры обработки пакетов общие для всех потоков: объем памяти В центра коммутации, размер элементарного памяти ΔBk и функцию текущего заполнения памяти Fk(ΔBkT), которая может иметь линейный, экспоненциальный или тригонометрический вид, а ее область значений находится в интервале 0≤Fk(ΔBkT)≤1, при этом функция Fk(ΔBkT) должна быть убывающей при увеличении объема памяти, занятой пакетами
Размер элементарного объема памяти определяют соотношением где М - целое, неотрицательное число определяет степень дискретизации памяти центра коммутации, вычисляется по формуле M≥2Jk, где Jk>1 число потоков пакетов данных, обрабатываемых ЦК в l-ом направлении передачи. Выбор значения М влияет на чувствительность системы управления потоками пакетов данных к изменению степени занятости памяти центра коммутации. Затем принимают пакеты данных во входные устройства центра коммутации, идентифицируют их по принадлежности к одному из потоков. Считают количество принятых njвх(ΔBk) и переданных njвых(ΔВk) пакетов данных j-го потока. Оценивают состояние памяти ЦК.
Вычисляют уровень текущего заполнения ΔBkT элементарного объема памяти ЦК ΔBk. Если текущее состояние памяти ΔBkT=k·ΔBk, где k∈[0;М], тогда фиксируют количество njвх(ΔBk) пакетов данных каждого потока, принятых из канала связи, и количество njвых(ΔВk) переданных пакетов данных.
Рассчитывают RЗjk - скорость заполнения (освобождения) k-го элементарного объема памяти ΔBk пакетами каждого потока по формуле:
где njвх(ΔBk) - количество принятых и njвых(ΔBk) - количество переданных пакетов данных j-го потока за время tk при заполнении очередного, k-го элементарного объема памяти центра коммутации ΔBk пакетами j-го потока, где k=1, 2, …, . Дополнительно по значению коэффициента k вычисляют значение функции текущего заполнения памяти Fk(ΔBkT).
Определяют объем памяти Bj(k±1), доступный для пакетов данных каждого из j-потоков при заполнении следующего элементарного объема памяти ΔBk±1 по формуле
В последующем определяют возможность приема пакета.
Среднюю интенсивность передачи пакетов µl в канале связи l-го порта центра коммутации определяют по формуле
где Rl - скорость передачи данных (бит/с) в канале связи l-го порта ЦК,
- средний размер пакетов (бит).
Если текущее состояние памяти ΔBkT≠k·ΔBk, то определяют возможность приема пакета по условию, что количество njвх(ΔBkT) принятых пакетов данных i-го потока не должно превышать количества выделенных для них объема памяти ЦК Bj. При невыполнении условия пакеты данных во входных устройствах стирают.
Принятые пакеты данных передают в память центра коммутации, запоминают и обрабатывают их, передают отправителю подтверждение о приеме очередного пакета. Одновременно из числа ранее обработанных пакетов выделяют пакеты данных для последующей передачи и передают их получателю.
Таким образом, осуществляется адаптация объема памяти ЦК, выделяемого для пакетов различных j-потоков, к интенсивности их обработки в центре коммутации и размеру свободной памяти центра коммутации. Это позволяет снизить вероятность блокирования памяти ЦК за счет обработки поступающих потоков данных в соответствии с требованиями по качеству обслуживания в сети передачи данных.
Возможность достижения заявленного эффекта проверена путем математического моделирования трафика и процесса его обработки в ЦК и поясняется графиком фиг.2, построенного по результатам моделирования.
В силу необходимости выполнения вероятностно-временных требований по передаче пакетов данных или по техническим причинам память ЦК имеет ограниченный объем В. После заполнения памяти поступающие в ЦК пакеты стирают, но отправитель через определенное время передает их повторно до тех пор пока не получит подтверждение о приеме.
Известно (см., например, Захаров Г.П. Методы исследования сетей передачи данных. - М.: Радио и связь, 1982. - 208 с., ил. на стр.22, 25), что производительность ЦК прямо пропорциональна вероятности своевременной обработки пакетов в центре коммутации. На графиках фиг.2 показана зависимость вероятности отказа Ротк в приеме пакетов данных во входных устройствах ЦК от интенсивности их поступления λ при ограничениях на объем буферной памяти в различных способах управления потоками. Вероятность своевременной обработки пакетов при управлении потоками данных в соответствии с заявленным способом значительно повышается, особенно при высокой интенсивности поступления пакетов в центр коммутации.
Из рассмотренной сущности заявленного способа видно, что он обеспечивает повышение производительности центров коммутации пакетов за счет установления функциональной зависимости между степенью занятости и скоростью заполнения буферной памяти. Это позволяет так ограничивать трафик, что потоки пакетов данных с высшими приоритетами получают минимальное ограничение. Этим достигается сформулированная цель - разработка способа управления потоками данных различных категорий срочности в центре коммутации при сопряжении разнородных сетей передачи данных, позволяющего повысить вероятностно-временные характеристики передачи сообщений в условиях нестационарного трафика за счет снижения вероятности отказа в приеме пакетов высокоприоритетного трафика при сохранении максимально возможной интенсивности низкоприоритетного трафика, путем адаптации количества доступного объема памяти в центрах коммутации для пакетов различных потоков к скорости ее заполнения этими пакетами и объему свободной памяти.
1. Способ управления потоками данных в центрах коммутации при сопряжении разнородных сетей, заключающийся в том, что предварительно для Jk>1 потоков пакетов данных, где k=1, 2, …, K, K - число категорий срочности, поступающих в память центра коммутации, устанавливают параметры, необходимые для их обработки, принимают пакеты данных, идентифицируют их по принадлежности к одному из j-потоков, где j=1, 2, …, Jk, передают идентифицированные пакеты данных в память центра коммутации, запоминают и обрабатывают их, одновременно из числа ранее обработанных выделяют пакеты данных для последующей передачи и передают их получателю, а после приема получателем передают отправителю подтверждение о приеме очередного пакета данных, определяют интенсивность поступления λjk(tk) пакетов данных j-го потока из канала связи и интенсивность передачи µjk(tk) пакетов данных получателю за время tk изменения текущего ΔBkt состояния памяти центра коммутации на величину элементарного объема памяти ΔBk, отличающийся тем, что в качестве параметров обработки пакетов данных задают: общий объем памяти центра коммутации В, вычисляют размер элементарного объема памяти ΔBk=B/K для j-го потока каждой k-ой категории срочности и задают функцию текущего заполнения памяти Fk(ΔBkT), причем одновременно с приемом и передачей пакетов данных, считают количество принятых njвх(ΔBk) и переданных njвых(ΔBk) пакетов данных j-го потока за время tk заполнения элементарного объема ΔBk памяти центра коммутации, измеряют j-й поток пакетов данных, принадлежащий k-ой категории срочности, поступающий из канала связи, вычисляют уровень текущего заполнения ΔBkT элементарного объема памяти центра коммутации ΔBk, ΔBkT=к·ΔBk и сравнивают количество принятых пакетов данных j-го потока njвх(ΔBk) при заполнении очередного элементарного объема памяти ΔBk, с выделенным объемом памяти Bj для пакетов данных этого потока, в случае превышения допустимого значения Bj<njвх пакет данных стирают и дальнейшую его обработку не производят, в противном случае при Bj>njвх пакет передают в память центра коммутации, рассчитывают скорость заполнения R3jk k-го элементарного объема памяти ΔBk пакетами j-го потока.
2. Способ по п.1, отличающийся тем, что скорость заполнения R3jk рассчитывают по формуле дополнительно по значению коэффициента к рассчитывают значение функции текущего заполнения памяти центра коммутации Fk(ΔBkT).
3. Способ по п.1, отличающийся тем, что функцию Fk(ΔBkT) текущего заполнения памяти определяют в интервале 0≤Fk(ΔBkT)≤1, при этом
4. Способ по п.1, отличающийся тем, что управление интенсивностью λjk(tk) поступающих потоков пакетов данных осуществляют варьированием объема памяти Bj доступного для пакетов данных каждого из j - потоков при заполнении очередного элементарного объема памяти ΔBk.
5. Способ по п.1, отличающийся тем, что объем памяти Bj(k±i), выделенной для пакетов данных каждого из j - потоков при заполнении следующего k±1 элементарного объема памяти ΔBk±1, определяют по формуле
6. Способ по п.1, отличающийся тем, что подсчет количества пакетов данных njвх(ΔBk) и njвых(ΔBk) производят между моментами изменения текущего объема памяти центра коммутации ΔBkT, заполненного пакетами данных, превысившие выделенный лимит объема памяти Bj - стирают.