BC/NW 2019№ 2 (35):4.2
МЕТОДОЛОГИЯ МОДЕЛИРОВАНИЯ БЕСПРОВОДНОЙ СЕТИ IEEE 802.11 С ИСПОЛЬЗОВАНИЕМ NS-3
Руденкова М.А., Абросимов Л.И.
Введение
Сложность протоколов беспроводного доступа к среде растет. Основной причиной этого является множество подходов, позволяющих избежать снижения производительности, что обусловлено использованием общего медиа-доступа. Эти подходы вводят новые протоколы доступа к среде, такие как DCF (функция распределенной координации), PCF (функция точечной координации), EDCF (расширенная функция распределенного канала) и HCCA (гибридный контролируемый доступ к каналу) [4].
Существует много работ по изучению производительности беспроводной локальной сети [5-10]. Некоторые из них были проверены посредством моделирования или измерениями на реальных объектах. [11-16]. Результаты моделирования и эксперимента могут быть использованы для проверки аналитической модели.
Модель трафика конкретного приложения необходима для сравнения аналитических результатов и результатов эксперимента. В представленной статье рассматривается методология моделирования модели трафика конкретного приложения для беспроводной локальной сети. В статье описан пример испытательного стенда для моделирования корпоративной беспроводной локальной сети IEEE 802.11 с протоколами доступа к среде DCF.
1 Сетевой симулятор дискретных событий (Network Simulator NS-3)
NS-3, предназначенный главным образом для исследовательских и образовательных целей, является свободным программным обеспечением, лицензированным по лицензии GNU GPLv2, и является общедоступным для исследований, разработок и использования. Пользователи NS-3 могут создавать модели компьютерных сетей, которые использованием генераторы трафика, протоколов, таких как TCP / IP, и модели устройств и каналов, таких как WiFi, и анализировать и/или визуализировать результаты.
В статье рассматривается типичная корпоративная беспроводная локальная сеть IEEE 802.11, которая состоит из N беспроводных станций (STA) и точки доступа (AP).
Испытательный стенд беспроводной локальной сети IEEE 802.11 показан на рис.1. Матрица M показывает физические соединения между STA, AP, коммутатором и сервером. Физическое соединение представлено как беспроводная среда (WM) и проводная среда (CM). Физическое соединение имеет определенный настраиваемый набор параметров.
Коммутатор - это сетевое устройство, которое подключило AP и корпоративную локальную сеть.
Сервер - это устройство, представляющее корпоративные сетевые сервисы приложений , где
Каждая беспроводная станция имеет ряд сетевых приложений, которые используют беспроводную среду, отправляя трафик с интенсивностью λi, где и l - длина пакетов. AP и беспроводные станции STA имеют определенный набор параметров конфигурации: set .
Рис. 1. Испытательный стенд беспроводной сети IEEE 802.11
NS-3 - это симулятор дискретных событий [17] [18]. Он состоит из основных компонентов и модулей, написанных на языке C ++. В таблице 1. показаны компоненты NS-3 для моделирования беспроводной локальной сети.
Таблица 1. Компоненты ns-3 для беспроводного моделирования ЛВС
Компоненты ns-
|
Компоненты WLAN |
Узел - это объект, представляющий сетевое вычислительное устройство. |
STA1,…, STAN, AP, Switch, Server |
Приложение - это объект, который имитирует поведение сетевого программного приложения. |
λi, sj,l |
Канал - это объект, который представляет модель конкретного медиа |
|
Топология представляет физическую и логическую топологии сети |
N, M, IP = {ipi}, |
Сетевое устройство - это объект, который представляет модель аппаратного и программного компонента промежуточного сетевого устройства или сетевой карты, обычно этот объект описывает характеристики MAC |
STA1,…, STAN, AP, Switch, Server, |
2 Методология моделирования беспроводной ЛВС IEEE 802.11
Методология состоит из следующих этапов:
Шаг 1. Сначала определяется набор узлов , набор сетевых устройств и набор их параметров конфигурации , где .
, где тип сетевого устройства.
Шаг 2. Определяются каналы и матрица M соединений узлов, как показано на рис. 2. Пусть для канала существуют специфичные настраиваемые параметры и существует c0i и определяется тип канала
, который используется, если M ij > 0.
|
1 |
… |
N |
N+1 |
N+2 |
N+3 |
1 |
0 |
0 |
0 |
1 |
0 |
0 |
… |
… |
… |
… |
… |
… |
|
N |
0 |
0 |
0 |
1 |
0 |
0 |
N+1 |
1 |
1 |
1 |
1 |
1 |
0 |
N+2 |
0 |
0 |
0 |
1 |
0 |
1 |
N+3 |
0 |
0 |
0 |
0 |
1 |
0 |
Рис. 2. Матрица М узлов соединений
Шаг 3. Можно разместить сервер и логику коммутатора в точке доступа. Это означает, что все службы приложений корпоративной сети размещены на узле AP.
Для каждого n в создаётся объект Channel как YansWifiPhyHelper с настройками .
Если n = STA, то создаётся объект Mac StaWifiMac и STA сетевого устройства с настройками и назначают STA сетевого устройства объекту Chanel и объекту Mac.
Если n = AP, то создаётся объект Mac ApWifiMac и AP сетевого устройства с настройками и назначьте точку доступа сетевого устройства Chanel и объект Mac.
Шаг 4. Определяются сервисы приложений корпоративной сети S и набор сетевых приложений на i-STA и их интенсивность трафика λ.
, где тип услуг приложений корпоративной сети.
Для каждого n в N:
n = AP, то каждый s в |S|: где s тип услуг приложений корпоративной сети
Если F n = STA , то для каждого i in ||
Если i != 0 THEN
Если n = AP Для каждого s в | S |: создать сервис приложений корпоративной сети;
ЕСЛИ n = STA THEN
Для каждого я в | |
ЕСЛИ i! = 0, ТО создают клиентские приложения k-network и назначают интенсивность трафика.
Шаг 5. Запустить приложения.
3 Пример моделирования беспроводной ЛВС IEEE 802.11
Принимаем, что устройства STA похожи, A1 = … = Aj, = … = и каждый канал имеет идеальное состояние канала. Трнбуется сравнить производительность беспроводной локальной сети IEEE 802.11, представленную на рисунке 1, для различных протоколов доступа к среде (DCF, PCF), используя популярную модель экспоненциального распределения трафика.
Шаг 1. Набор узлов :
Мы могли бы использовать узлы AP для логического включения функциональности коммутатора и сервера, а затем
Количество беспроводных станций STA равно 4.
В таблице 2 перечислены параметры конфигурации беспроводной локальной сети для беспроводной локальной сети DCF и PCF.
Таблица 2. Параметры сетевого устройства беспроводной ЛВС IEEE 802.11 для беспроводной ЛВС DCF и PCF
|
Media access control protocol |
Протокол доступа к среде |
DCF |
|
Wireless Network SSID |
Идентификатор беспроводной сети |
TEST_WLAN |
|
Active Probing |
Использование активного полинга |
False |
|
Support PCF |
Поддержка протокола PCF |
False |
|
CFPMaxDuration |
|
65536 us |
|
Media access control protocol |
Протокол доступа к среде |
PCF |
|
Wireless Network SSID |
Протокол доступа к среде |
TEST_WLAN |
|
Active Probing |
Использование активного полинга |
True |
|
Support PCF |
Поддержка протокола PCF |
True |
|
Active Probing |
Использование активного полинга беспроводными станциями |
False |
|
CFPMaxDuration |
Длительность периода без конкуренции |
65536 us |
Можно использовать пример конфигурации в папке примеров проекта ns-3 и изменить их параметры, если это необходимо [19].
Пример настройки
Шаг 1:
NodeContainer wifiStaNodes;
wifiStaNodes.Create (N);
NodeContainer wifiApNode;
wifiApNode.Create (1);
Шаг 2. Пусть М аналогичен фиг. 2, то список каналов и список параметров конфигурации каналов приведены в Таблице 3:
= … = = C
Таблица 3 Параметры сетевого устройства беспроводной лвс IEEE 802.11 для беспроводной ЛВС DCF и PCF
|
Type of the media |
Тип среды передачи |
YansWifiChannel |
|
Propagation delay model |
Модель задержки распространения сигнала |
ConstantSpeedPropagationDelayModel |
|
Vector of propagation loss models |
Модель патерь при распространении |
LogDistancePropagationLossModel |
|
Data Mode |
Режим передачи данных |
OfdmRate54Mbps |
|
Control Mode |
Режим передачи управлеющих данных |
OfdmRate54Mbps |
Пример конфигурации
Шаг 2
YansWifiChannelHelper channel = YansWifiChannelHelper::Default();
YansWifiPhyHelper phy = YansWifiPhyHelper::Default ();
phy.SetChannel (channel.Create ());
Шаг 3. Создайте конфигурации сетевых устройств:
Пример настройки Шаг 3:
WifiHelper wifi;
WifiMacHelper mac;
Ssid ssid = Ssid ("TEST_WLAN ");
wifi.SetRemoteStationManager ("ns3::ConstantRateWifiManager", "DataMode", StringValue ("OfdmRate54Mbps"), "ControlMode", StringValue ("OfdmRate24Mbps"));
NetDeviceContainer staDevices;
mac.SetType ("ns3::StaWifiMac",
"Ssid", SsidValue (ssid),
"ActiveProbing", BooleanValue (false),
"PcfSupported", BooleanValue (enablePcf));
staDevices = wifi.Install (phy, mac, wifiStaNodes);
mac.SetType ("ns3::ApWifiMac",
"Ssid", SsidValue (ssid),
"BeaconGeneration", BooleanValue (true),
"PcfSupported", BooleanValue (enablePcf),
"CfpMaxDuration", TimeValue (MicroSeconds (cfpMaxDurationUs)));
NetDeviceContainer apDevice;
apDevice = wifi.Install (phy, mac, wifiApNode);
Шаг 4. Пусть количество приложений корпоративной сети j=1, а интенсивность трафика сетевых приложений является переменной [100, 10000] и имеет экспоненциальную модель трафика распределения.
В качестве сетевых приложений можно использовать классы UdpServer и UdpClient.
Для модели экспоненциального распределения трафика нам нужно изменить функцию отправки UdpClient следующим образом:
if (m_sent < m_count)
{
std::exponential_distribution<double> lambda(m_lambda);
std::random_device rd;
std::mt19937 gen(rd());
m_interval = Time::FromDouble((lambda(gen)), Time::S);
m_sendEvent = Simulator::Schedule (m_interval, &UdpClient::Send, this);
}
Добавление параметра Lambda ():
class UdpClient : public Application
….
uint32_t m_lambda;
….
Пример конфигурации на шаге 4.
for (uint32_t index = 0; index < Nd; ++index) {
UdpClientHelper udpClient (serverAddr, portNumber);
udpClient.SetAttribute ("Lambda", UintegerValue (packetRate));
clientApplications.Add(udpClient.Install(wifiStaNodes(index)));
}
Рис. 3. Зависимость интенсивности трафика, доставленного пользователям беспроводной сети, от интенсивности входного сетевых приложений (N = 4)
Рис. 4. Зависимости вероятностей потерь пакетов входного трафика от интенсивности входного трафика сетевых приложений (N = 4)
На рис. 3 и рис. 4 показаны соответственно зависимости трафика, доставленного пользователям, и вероятности потерь пакетов входного трафика от интенсивности от трафика сетевых приложений.
Выводы
1. В статье предлагается методология моделирования беспроводной локальной сети IEEE 802.11. Приведены пример испытательного стенда, конфигурации и результаты экспериментов.
2. Моделирование ns-3 может использоваться для новых исследований производительности протокола управления доступом к среде IEEE 802.11 и проверки существующих моделей производительности для протоколов управления доступом к среде IEEE.
3. Доказано, что при больших интенсивностях трафика входных потоков формируется поток отказов, однако достигнутая максимальная величина доставленного трафика остается неизменной.
4. Анализ полученных зависимостей количественно подтверждает, что при больших интенсивностях трафика входных потоков (уже при 4-х беспроводных станциях STA) протокол PCF функционирует эффективнее, чем протокол DCF.
Литература
1.Edirisinghe, Sampath & Ranaweera, Chathurika & Wong, Elaine & Lim, Christina & Nirmalathas, Ampalavanapillai. (2019). ns-3 Module for Optical Wireless Communication.
2.Maygua- Marcillo, Lesly & Urquiza Aguiar, Luis & Paredes-Paredes, Martha. (2018). Wireless Channel 802.11 in NS-3. 10.20944/preprints201809.0367.v1.
3.[Farruh Muzafarov, Javlonbek Abdujalilov. Modeling wireless network topology with NS3. International Journal for Research in Applied Science & Engineering Technology (IJRASET). Volume 4 Issue VIII, August 2016, pp. 80-85.
4.IEEE Standard for Information technology – Telecommunications and information exchange between systems Local and metropolitan area networks--Specific requirements - Part 11: Wireless LAN Medium 5.Access Control (MAC) and Physical Layer (PHY) Specifications," in IEEE Std 802.11-2016 (Revision of IEEE Std 802.11-2012) , vol., no., pp.1-3534, 14 Dec. 2016.
6.G. Bianchi, Performance analysis of the IEEE 802.11 distributed coordination function, IEEE J. Sel. Areas in Commun. 18 (March 2000) 535–547.
7.Chien-ErhWeng, Hsing-Chung Chen. The performance evaluation of IEEE 802.11 DCF using Markov chain model for wireless LANs - Computer Standards \& Interfaces. Volume 44, February 2016, Pages 144-149
8.E. Ziouva, T. Antonakopoulos, CSMA/CA performance under high traffic conditions: throughput and delay analysis, Comput. Commun. 25 (Feb. 2002) 313–321.
9.Z. Hadzi-Velkov, B. Spasenovski, Saturation throughput delay analysis of IEEE 802.11 DCF in fading channel, Proc. IEEE Int. Conf. Commun. (ICC 2003) 26 (May 2003), pp. 121–126.
10.Y.S. Liaw, A. Dadej, A. Jayasuriya, Performance analysis of IEEE 802.11 DCF under limited load, in: Proceedings of the Asia-Pacific Conference on Communications, Perth, Western Australia, vol. 1, 2005, pp. 759–763.
11.[Malone2007] D . Malone, K. Duffy, D. Leith. Modeling the 802.11 distributed coordination function in nonsaturated heterogeneous conditions IEEE/ACM Trans. Netw., 15 (1) (2007), pp. 159-172
12.T.D. Senthilkumar, A. Krishnan, P. Kumar, Nonsaturation throughput analysis of IEEE 802.11 distributed coordination function, in: Proceedings of the 5th International Conference on Electrical and Computer Engineering, ICECE’08, Dhaka, Bangladesh, 2008, pp. 472–477.
13.Sarah Shaaban, Hesham M. El Badawy, AttallahHashad, Performance Evaluation of the IEEE 802.11 Wireless LAN Standards - World Congress on Engineering 2008 Vol I.
14.Ali, Qutaiba. (2009). Performance Evaluation of WLAN Internet Sharing Using DCF & PCF Modes. International Arab Journal of e-Technology.
15.Z. Chen, D. Fu, Y. Gao and X. Hei, "Performance Evaluation for WiFi DCF Networks from Theory to Testbed," 2017 IEEE International Symposium on Parallel and Distributed Processing with Applications and 2017 IEEE International Conference on Ubiquitous Computing and Communications (ISPA/IUCC), 16.Guangzhou, 2017, pp. 1364-1371.
Selinis, Ioannis. (2014). Performance study of 802.11n WLAN and MAC enhancements in ns-3.
Yin, Yachao & Gao, Yayu & Hei, Xiaojun. (2019). Performance Evaluation of a Unified IEEE 802.11 DCF Model in NS-3. 10.1007/978-3-030-32216-8_38.
17.Henderson, Thomas R.. “Network Simulations with the ns-3 Simulator.” (2008).
18. ns-3 Tutorial. Retrieved December 09, 2019, from https://www.nsnam.org/docs/release/3.30/tutorial/html/index.html
19.Hanging A Wireless. (2019) ns-3 tutorial: 6.3 Building a Wireless Network Topology. Retrieved December 09, 2019, from https://www.nsnam.org/docs/release/3.9/tutorial/tutorial_27.html