Алгоритм распределения потоков данных между беспроводными глобальными и локальными сетями связи

Телекоммуникационные системы и компьютерные сети

DOI: 10.18721/JCSTCS.10301 УДК 004.22, 658.5, 65.011.56

АЛГОРИТМ РАСПРЕДЕЛЕНИЯ ПОТОКОВ ДАННЫХ МЕЖДУ БЕСПРОВОДНЫМИ ГЛОБАЛЬНЫМИ И ЛОКАЛЬНЫМИ СЕТЯМИ СВЯЗИ

С.Г. Попов, А.С. Тучков, Л.М. Курочкин, М.П. Шарагин

Санкт-Петербургский политехнический университет Петра Великого,

Санкт-Петербург, Российская Федерация

Описан алгоритм динамического распределения потоков данных между беспроводными локальными и глобальными сетями связи, такими как Wi-Fi и LTE. Предмет исследования — зависимость времени выполнения алгоритма распределения потоков данных между беспроводными локальными и глобальными сетями связи. Разработан алгоритм динамического мультиплексирования гетерогенных каналов связи, учитывающий динамику оценки пропускных способностей каналов связи и их комбинаций. Проведено исследование времени работы алгоритма выбора канала, показавшее эффективность стратегии безусловного приоритета перед стратегией квотирования. Реализованный прототип системы может использоваться в подсистеме маршрутизации мультипро-токольного узла.

Ключевые слова: алгоритм распределения потоков данных; мультипротокольный узел; интеллектуальная транспортная система; гетерогенные каналы связи; беспроводные технологии; динамическое мультиплексирование каналов.

Ссылка при цитировании: Попов С.Г., Тучков А.С., Курочкин Л.М., Шарагин М.П. Алгоритм распределения потоков данных между беспроводными глобальными и локальными сетями связи // Научно-технические ведомости СПбГПУ. Информатика. Телекоммуникации. Управление. 2017. Т. 10. № 3. С. 7-17. DOI: 10.18721/JCSTCS.10301

ALGORITHM OF DATA STREAMS DISTRIBuTION BETwEEN wIRELESS wAN AND LAN

S.G. Popov, A.S. Tuchkov, L.M. Kurochkin, M.P. Sharagin

Peter the Great St. Petersburg Polytechnic University, St. Petersburg, Russian Federation

The goal of the study is the development and experimental verification of the applicability of a new data streams distribution algorithm between wireless local and global communication networks. The object of research is the data streams dynamic allocation algorithm between the wireless local and wide area networks such as Wi-Fi and LTE. The research subject is the dependent runtime data flow allocation algorithm between wireless local and wide area networks. The authors developed a dynamic multiplexing algorithm for heterogeneous communication channels that takes into account the dynamics of evaluating the communication channels capacity and channel combinations, investigated the running time of the channel selection algorithm, which showed that the unconditional priority strategy was more effective than the quota strategy. The implemented prototype

system can be used in a multiprotocol routing subsystem.

Keywords: data streams distribution algorithm; multiprotocol unit; intelligent transports system; heterogeneous communication channels; wireless technology; dynamic multiplexing.

Citation: Popov S.G., Tuchkov A.S., Kurochkin L.M., Sharagin M.P. Algorithm of data streams distribution between wireless WAN and LAN. St. Petersburg State Polytechnical University Journal. Computer Science. Telecommunications and Control Systems. 2017, Vol. 10, No. 3, Pp. 7-17. DOI: 10.18721/JCSTCS.10301

Введение

Пропускная способность трафика, формируемого сервисами Интернет и системными службами, используемого в мультипротокольном узле [7], превышает пропускную способность используемых каналов передачи данных, что приводит к рассогласованию функционирования компонент интеллектуальной транспортной системы (ИТС). Поэтому при внедрении ИТС возникает проблема выбора такой комбинации каналов связи, которая обеспечит минимальную гарантированную пропускную способность для потока данных и при этом минимизирует время передачи.

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

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

В работах [2, 3] авторы решали проблему повышения эффективности передачи потоков данных по разнородным каналам передачи данных с использованием протокола МРТСР. Для решения проблемы превышения потока данных пропускной способности передачи данных в транспортных сетях в работах [1, 4] использованы гомогенные каналы передачи данных.

В статьях [5, 6] предложен новый способ распределения трафика в узле: концепция совместного роутинга, основанная на оценке задержки и числа потоков отдельно для внутренних и внешних соединений, основанных на учёте дистанции между транспортными средствами.

В статье [10] целью исследования являлось определение времени соединения и скорости передачи данных из транспортно-

Рис. 1. Классификация технологий распределения потоков данных

го средства в стационарную беспроводную сеть, используя протоколы FTP, HTTP, HTTPS и SSH. Исследование базировалось на стандарте беспроводных сетей IEEE 802.11g.

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

Наша цель — разработка и экспериментальная проверка области применимости

нового алгоритма распределения потоков данных между беспроводными локальными и глобальными сетями связи.

Мультипротокольная среда передачи данных транспортных средств

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

Рис. 2. Программно-аппаратная схема фрагмента стенда мультипротокольного узла

объем передаваемых данных.

Диспетчер соединений (Connection manager) контролирует все сетевые подключения по запросам от приложений, а также формирует пары «заявка—канал передачи данных». Обработка заявок регламентируется правилами, заложенными планировщиком (Scheduling policy), которые могут со временем изменяться.

Обработанный телекоммуникационный трафик передается по разнородным беспроводным каналам связи по протоколу MPTCP [8, 9], что позволяет обмениваться пакетами с несколькими адресами/интерфейсами одновременно, в рамках одного соединения. Отметим, что MPTCP сохраняет обратную совместимость со старыми версиями TCP и допускает подключение устройства по стандартному TCP.

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

Критерий оптимальности задачи распределения потоков данных

Пусть F(tv..tn) — множество заявок для обслуживания, формирующих входящий поток данных. Каждая t. заявка характеризуется следующими параметрами: приоритет p., где j = 1...3, требуемая пропускная способность для обслуживания заявки Ct , объем передаваемых данных Vt .

В стационарном случае суммарная пропускная способность виртуального канала равна сумме пропускных способностей входящих в него каналов:

c = ,

где C. — пропускная способность /-го фи-

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

Учет динамики текущей пропускной способности виртуальных каналов связи обеспечивает оценку пропускной способности канала на текущий момент времени (более точный выбор канала для передачи данных):

С = £ С,-,

где С. — динамическая оценка пропускной способности 1-го виртуального канала передачи данных.

На практике суммарная пропускная способность виртуального канала меньше, чем теоретически возможная. Это связано с накладными расходами на создание соединения между источником и приемником данных. Накладные расходы зависят от времени создания подпотоков передачи данных и их разбиения, количества каналов, разнородности каналов, качества передачи пакетов в канале (процент потерь пакетов) и задержек в сети. За разбиение и создание подпотоков отвечает специальный планировщик потоков протокола МРТСР. За качество разбиения отвечает алгоритм распределения нагрузки, от реализации которого зависит разница между теоретическим и эмпирическим значениями пропускной способности виртуального канала. Иными словами, при учете динамики пропускной способности необходимо ввести коэффициент пропускной способности виртуального канала связи. Тогда формула (2) примет следующий вид:

С = ^ ,

где к. — коэффициент пропускной способности 1-го виртуального канала, сформированного для передачи по протоколу МРТСР (к< 1).

Во время движения транспортного средства количество доступных телекоммуникационных сетей меняется, что требует непрерывного обновления списка комбинаций каналов связи.

Таким образом, осуществляется поиск

локального минимума задачи двухкрите-риальной оптимизации, представленной в следующем виде:

arg min{t, шах

где t — время передачи потока данных.

Алгоритм динамического мультиплексирования гетерогенных каналов передачи данных

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

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

способность каждого из каналов и обновляет матрицу пропускных способностей.

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

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

Блок-схема алгоритма приведена на рис. 3. При поступлении новой заявки происходит проверка на переполнение очереди. В случае если очередь не переполнена, происходит поиск канала среди всех свободных каналов на текущий момент времени, удовлетворяющего минимальной пропускной способности заявки по критерию тт(Ск - С^), где С к — текущая оценка к-го виртуального канала передачи данных. Таким образом алгоритм ищет канал связи, у которого разность между его пропускной способностью и пропускной

Рис. 3. Блок-схема алгоритма формирования пула заявок

способностью заявки минимальна. После поиска канала осуществляется проверка переполнения пула. В случае если пул не переполнен, заявка добавляется в пул и удаляется из очереди. Пул представляет собой словарь, хранящий пары <<1ё заявки— виртуальный канал».

Алгоритм распределения заявок по каналам связи. Сортировка пула осуществляется по времени передачи заявок

VI

^ = . Процедура сортировки инициализируется в момент добавления новой заявки в пул.

После того как пул отсортирован, заявка отправляется на передачу по виртуальному каналу. Перед отправкой каналу присваивается статус «занят». После отправления заявки канал получает статус «свободен», позволяющий вновь использовать данный канал в алгоритме формирования пула. Заявка после отправления на передачу удаляется из пула. За гарантию доставки заявки отвечает протокол МРТСР.

В случае если заявку не удалось отправить на передачу, вновь вызывается процедура сортировки пула, т. к. в этот момент могла появиться новая заявка, время передачи которой меньше, чем у той, которую не удалось отправить. Блок-схема алгоритма распределения заявок по каналам связи приведена на рис. 4.

Алгоритм распределения потоков данных инвариантен к стратегиям обслуживания очереди: они являются входными данными для алгоритма. Данный алгоритм можно использовать для технологической среды тестирования стратегий обслуживания очереди и пула заявок.

Условия проведения экспериментов

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

Сортировка пула

по времени передачи заявки

Рис. 4. Блок-схема алгоритма распределения заявок по каналам связи

щения «emergency call», средний приоритет имеет трафик от мультимедийных приложений, электронной почты, приложений, отражающих ситуацию на дороге и пр., низший приоритет имеет трафик от фоновых процессов, происходящих на мульти-протокольном узле.

Для подтверждения применимости алгоритма динамического мультиплексирования гетерогенных каналов связи проведены два блока экспериментов:

первый блок состоит из четырех серий экспериментов, цель которых — определение зависимости времени работы алгоритмов формирования пула и распределения заявок по каналам от размера очереди и пула (табл. 1);

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

Результаты экспериментов

В ходе проведения первого блока экспериментов получены серии значений

Таблица 1

Описание параметров первого блока экспериментов

Параметры Эксперимент

1 2 3 4

Размер структуры, шт. от 8 до 106 от 8 до 106 от 6 до 104 от 6 до 104

Эмулируемые 2 х Wi-Fi, 2 х Wi-Fi, 2 х Wi-Fi, 2 х Wi-Fi,

каналы, шт. 2 x LTE 2 x LTE 2 x LTE 2 x LTE

Стратегия обслуживания очереди Безусловный приоритет По квотам Безусловный приоритет По квотам

Распределение заявок по приоритетам

Размер потока, шт. 1000 1000 1000 1000

Частота ПЗ, Гц 2 2 2 2

Таблица 2

Описание параметров второго блока экспериментов

Параметры Эксперимент

1 2 3 4

Размер очереди, шт. 8 8 106 106

Размер пула, шт. 6 6 104 104

Эмулируемые каналы, шт 2 х Wi-Fi, 2 x LTE 2 х Wi-Fi, 2 x LTE 2 х Wi-Fi, 2 x LTE 2 х Wi-Fi, 2 x LTE

Стратегия обслуживания очереди Безусловный приоритет По квотам Безусловный приоритет По квотам

Распределение заявок по приоритетам

Размер потока, шт. 1000 1000 1000 1000

Частота ПЗ, Гц 2 2 2 2

среднего времени обслуживания заявок для алгоритмов формирования пула и распределения заявок по каналам в зависимости от выбранных правил формирования пула.

На рис. 5 представлена зависимость среднего времени обслуживания заявки в очереди от размера очереди. Серия экспериментов показала, что среднее время обслуживание заявки не зависит от размеров очереди и пула, и оно константно. Также среднее время обслуживания заявки в очереди для алгоритма формирования пула для стратегии безусловного приоритета меньше, чем для стратегии «по квотам».

На рис. 6 представлена зависимость среднего времени распределения заявки в пуле. Серия экспериментов показала, что среднее время обслуживания заявки в пуле для алгоритма распределения заявок по каналам передачи данных не зависит от выбранной стратегии формирования пула. Связано это с тем, что в стратегии безусловного приоритета происходит только одна процедура сортировки очереди заявок, в то время как в стратегии «по квотам» необходимо сортировать заявки трижды — наборы заявок по приоритетам.

В ходе проведения второго блока экс-

0.2

з: 0,15

X ОД

0,05

• „ * Безусловный приоритет • По квотам

• • «

• • •  •

• • • • •

- ( >  —1

20

40

60

80

100

Размер очереди, шт.

Рис. 5. Зависимость среднего времени обслуживания заявки в очереди от размера очереди

• • • • • • •

• Безусловный приоритет

• По квотам

20

40 60

Размер пула, шт.

80

100

Рис. 6. Зависимость среднего времени распределения заявки в пуле

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

На рис. 7 а представлены гистограммы распределения среднего времени обслуживания заявок на минимальных и максимальных значениях размера очереди для

алгоритма формирования пула на 20 интервалах. Из гистограмм видно, что среднее время обслуживания заявок в очереди на максимальных и минимальных значениях размеров очередей для обеих стратегий не отличается. Также видно, что среднее время обслуживания заявок в очереди для стратегии безусловного приоритета меньше, чем для стратегии «по квотам», что подтверждается результатами из первого блока экспериментов.

Рис. 7. Гистограммы распределения среднего времени обслуживания заявок на минимальных и максимальных значениях размерах очереди

На рис. 7 б представлены гистограммы распределения среднего времени обслуживания заявок на минимальных и максимальных значениях размера пула для алгоритма распределения заявок по каналам связи на 20 интервалах. Из гистограмм видно, что среднее время обслуживания заявок в пуле на максимальных и минимальных значениях не меняется для обеих стратегий, а сам алгоритм распределения заявок по каналам связи не зависит от выбранной стратегии формирования пула заявок.

Заключение

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

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

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

В качестве правил формирования пула были выбраны стратегии безусловного приоритета обслуживания очереди и «по квотам». Серия экспериментов показала, что среднее время обслуживания заявки:

не зависит от размеров очереди и пула, оно константно;

в очереди для алгоритма формирования пула для стратегии безусловного приоритета меньше, чем для стратегии «по квотам»;

в пуле для алгоритма распределения заявок по каналам передачи данных не зависит от выбранной стратегии формирования пула.

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

Исследование выполнено при финансовой поддержке РФФИ в рамках научного проекта № 16-29-04319.

СПИСОК ЛИТЕРАТУРЫ

1. Hadama H., Chiba N., Fukui D., Ogura M., Nakamura R. Implementation of dual transmission function for remote vehicle controls // Proc. of the 10th Asia-Pacific Symp. on Information and Telecommunication Technologies. Colombo, 2015. Pp. 1-3.

2. Chirwa R.M.N., Lauf A.P. Performance improvement of transmission in Unmanned Aerial Systems using multipath TCP // Proc. of the IEEE Internat. Symp. on Signal Processing and Information Technology. Noida, 2014. Pp. 000019-000024.

3. Kumar Gupta S., Khara S. Technique to improve the file transfer outcomes between road side unit and vehicles in vehicular ad-hoc networks // Proc. of the Internat. Conf. on Computing, Communication & Automation. Noida, 2015. Pp. 360-366.

4. Sukuvaara T., Nurmi P. Wireless traffic service platform for combined vehicle-to-vehicle and vehicle-to-infrastructure communications // IEEE Wireless Communications. 2009. Vol. 16. No. 6. Pp. 54-61.

5. Viriyasitavat W., Bai F., Tonguz O.K. Providing fairness between multiple flows in vehicular networks // Proc. of the Vehicular Networking Conf. IEEE. Kyoto, 2015. Pp. 44-51.

6. Cordeschi N., Amendola D., Baccarelli

Статья поступила в редакцию 27.05.2017

E. Reliable Adaptive Resource Management for Cognitive Cloud Vehicular Networks // IEEE Transactions on Vehicular Technology. 2015. Vol. 64. No. 6. Pp. 2528-2537.

7. Popov S., Kurochkin M., Kurochkin L., Glazunov V. The implementing of the internet of things concepts for the continuous provision of informational services for vehicle drivers and passengers // Proc. of the 1st Internat. Conf. on Telematics and Future Generation Networks. Pp. 1-5.

8. Nigel Williams, Prashan Abeysekera, Nathan

Dyer, Hai Vu Multipath TCP in Vehicular to Infrastructure Communications // Grenville Armitage Centre for Advanced Internet Architectures. Technical Report 140828A. Swinburne University of Technology Melbourne.

9. Ford A., Raiciu C., Handley M., Bonaventure O. TCP Extensions for Multipath Operation with Multiple Addresses. RFC 6824. Internet Engineering Task Force // URL: http://tools.ietf.org/html/ rfc6824 (Дата обращения: Jan. 2013).

10. Zhao L., Hong X., Gu B. Handshake time and transmission rate of 802.11g measurement in vehicular networks // Proc. of the IEEE 35th Conf. on Local Computer Networks. 2010. Pp. 730-736.

REFERENCES

1. Hadama H., Chiba N., Fukui D., Ogura M., Nakamura R. Implementation of dual transmission function for remote vehicle controls. Proc. of the 10th Asia-Pacific Symposium on Information and Telecommunication Technologies, Colombo, 2015, Pp. 1-3.

2. Chirwa R.M.N., Lauf A.P. Performance improvement of transmission in Unmanned Aerial Systems using multipath TCP. Proc. of the IEEE International Symposium on Signal Processing and Information Technology, Noida, 2014, Pp. 000019-000024.

3. Kumar Gupta S., Khara S. Technique to improve the file transfer outcomes between road side unit and vehicles in vehicular ad-hoc networks. Proc. of the International Conference on Computing, Communication & Automation, Noida, 2015, Pp. 360-366.

4. Sukuvaara T., Nurmi P. Wireless traffic service platform for combined vehicle-to-vehicle and vehicle-to-infrastructure communications. IEEE Wireless Communications, 2009, Vol. 16, No. 6, Pp. 54-61.

5. Viriyasitavat W., Bai F., Tonguz O.K. Providing fairness between multiple flows in

vehicular networks. Proc. of the Vehicular Networking Conference IEEE, Kyoto, 2015, Pp. 44-51.

6. Cordeschi N., Amendola D., Baccarelli E. Reliable Adaptive Resource Management for Cognitive Cloud Vehicular Networks. IEEE Transactions on Vehicular Technology, 2015, Vol. 64, No. 6, Pp. 2528-2537.

7. Popov S., Kurochkin M., Kurochkin L., Glazunov V. The implementing of the internet of things concepts for the continuous provision of informational services for vehicle drivers and passengers. Proc. of the 1st International Conference on Telematics and Future Generation Networks, 2015, Pp. 1-5.

8. Nigel Williams, Prashan Abeysekera, Nathan Dyer, Hai Vu Multipath TCP in Vehicular to Infrastructure Communications. Grenville Armitage Centre for Advanced Internet Architectures, Technical Report 140828A, Swinburne University of Technology Melbourne.

9. Ford A., Raiciu C., Handley M., Bonaventure O.

TCP Extensions for Multipath Operation with Multiple Addresses. RFC 6824, Internet Engineering Task Force. Available: http://tools.ietf.org/html/rfc6824

(Accessed: Jan. 2013). in vehicular networks. Proc. of the IEEE 35th

10. Zhao L., Hong X., Gu B. Handshake time Conference on Local Computer Networks, 2010,

and transmission rate of 802.11g measurement Pp. 730—736.

Received 27.05.2017

СВЕДЕНИЯ ОБ АВТОРАХ / THE AuTHORS

ПОПОВ Сергей Геннадьевич POPOV Sergey G.

E-mail: popovserge@spbstu.ru

ТУчКОВ Андрей Сергеевич TuCHKOV Andrei S.

E-mail: tucha.te@gmail.com

курочкин Леонид Михайлович KuROCHKIN Leonid M.

E-mail: kurochkinl@spbstu.ru

ШАРАГин Максим Павлович SHARAGiN Maksim P.

E-mail: msharagin@gmail.com

© Санкт-Петербургский политехнический университет Петра Великого, 2017