Показаны сообщения с ярлыком имитационное моделирование. Показать все сообщения
Показаны сообщения с ярлыком имитационное моделирование. Показать все сообщения

вторник, 12 февраля 2013 г.

Сеть связи Wi-Fi 802.11



Основные особенности моделирования протоколов IEEE 802.11

В предыдущей статье мы рассмотрели модель канала и ее место в имитационной модели сети.  Ниже мы сосредоточимся на нескольких основных особенностях протоколов IEEE 802.11.

Известно , что для обеспечения надёжной доставки пакетов, в протоколах IEEE 802.11 используется механизм CSMA/CA (Carrier Sense Multiple Acsses with Collisuon Avoidance) – механизм множественного доступа с контролем несущей частоты и предотвращением коллизий
Основной принцип действия этого механизма достаточно прост и заключается в следующем:
1) перед началом передачи каждое устройство слушает эфир и дожидается, когда канал освободится;
2) канал считается свободным, если, в течение заданного интервала времени - IFS, не обнаружено признаков активности каких-либо других станций;
3) если в течение интервала IFS канал оставался свободным, то рассматриваемое устройство выбирает случайный интервал времени отсрочки, и ещё раз убедившись в том, что канал свободен, передаёт пакет.
Далее, если пакет или кадр предназначен конкретному устройству, то приёмник, успешно приняв пакет, посылает передатчику короткий кадр «квитанции» - ACK (ACKnowledge). При этом если передатчик не принял «квитанции», попытка передачи кадра считается неудачной.
При широковещательной передаче информации квитирование пакетов не производится.
 Стандарт IEEE 802.11 предусматривает два механизма контроля активности в канале: физический и виртуальный.
Первый из них реализован на физическом уровне и сводится к определению уровня сигнала в антенне и его сравнению с заданной пороговой величиной.
Виртуальный механизм основан на том, что в передаваемых кадрах данных, а также служебных (управляющих) кадрах содержится информация о времени, необходимом для передачи пакета (или группы пакетов) и получения подтверждения.
Все устройства сети получают информацию о текущей передаче  и могут определить, сколько времени канал будет занят.
Как только станция фиксирует момент окончания передачи кадра, она обязана отсчитать межкадровый интервал IFS.
Если в процессе отсчёта этого интервала канал остаётся свободным, то начинается отсчет слотов – коротких интервалов времени фиксированной длины, число которых ограничено. Номер слота выбирается как случайное число, равномерно распределённое в интервале [0, CW] то есть в интервале конкурентного окна.

Рассмотрим этот процесс на примере, представленном на рисунке 1:

Рисунок 1
Пусть станция «А» выбрала для передачи слот 3. Тогда, после завершения интервала ожидания квитанции - TIFS, она будет проверять состояние канала в начале каждого слота. Если канал свободен, то из значения таймера отсрочки вычитается единица, и, когда его значение станет равным нулю, начинается передача кадра. Если же в начале какого-либо слота канал окажется занятым, то вычитание единицы не производится, и таймер «замораживается». В этом случае станция «А» осуществляет следующую попытку захвата канала, изменяя только алгоритм выбора слота для передачи.
Как и в предыдущей попытке, данная станция следит за каналом и при его освобождении выдерживает паузу TIFS. При освобождении канала, станция «А» использует значение «замороженного» таймера в качестве номера слота и выполняет описанную выше процедуру проверки свободных слотов с вычитанием единиц, начиная с «замороженного» значения.     
Очевидно, что при моделировании поведения системы связи желательно, чтобы этот процесс был представлен в максимально упрощенной форме – в виде формального описания причинно-следственных связей между событиями, а также алгоритмов определения интервалов между такими событиями.
В частности,  (см. рисунок 1),  процесс передачи кадра может быть представлен как последовательность следующих событий:
- освобождение канала;
- начало передачи кадра;
- завершение передачи.
Интервал времени между событиями «освобождение канала» и «начало передачи кадра» может быть представлен как сумма двух величин: TIFS и Tотср.
В свою очередь, величина TIFS может быть определена как константа, а величина Tотср (при идеальном стечении обстоятельств) – может быть определена с помощью простейшего выражения (1.1): 
Tотср = nср Tсл
(1.1)
где
- nср – среднее значение числа на интервале [0, CW] , которое в реальности выбирается случайным образом;
-  Tсл – условная единица времени («тик»), соответствующая промежутку времени, затрачиваемому на один слот.
Интервал времени между началом и завершением передачи кадра может быть определён как функция от длины пакета. Причём, при вычислении этого интервала, должны быть учтены особенности передачи данных, которые присущи IEEE 802.11 при использовании каналов высокой производительности.
Например, в спецификациях IEEE 802.11b и IEEE 802.11g,  время передачи кадра складывается из двух составляющих:
1) времени передачи преамбулы и заголовка физического уровня - Tзаг, которые передаются с низкой скоростью – Vзаг=1 Мбит/c, которое определяется произведением (1.2):  
Tзаг = Lзаг Vзаг
(1.2)
где Lзаг – длина заголовка в битах;
2)  времени передачи MAC-части кадра – TMAC, которая может передаваться с более высокой скоростью - VMAC=5.5 или 11 Мбит/c, и составлять величину (1.3):
TMAC = LMAC VMAC
(1.3)
где LMAC – длина MAC-части
Имея величины Tзаг и TMAC можно вычислить время передачи кадра, выраженное в условных единицах – «тиках». Для этого достаточно воспользоваться выражением (1.4):
Tпрд = (Tзаг + TMAC) / Tсл
(1.4)
1.2.5. Однако, в общем случае, причинно-следственные связи между подобными событиями не так уж и просты - при составлении формального описания процессов передачи кадров, следует учитывать поведение приёмных и передающих станций в более сложных ситуациях, а именно:
- при возникновении коллизий, когда на один и тот же канальный ресурс  претендуют две или более станций;
- при отсутствии радиослышимости между отдельными станциями;
- при наличии радиопомех.
Причём, необходимость учёта подобных явлений связана не только со спецификой каналов и устройств Wi-Fi вообще, но и с другими, пока ещё не разрешёнными проблемами. Наиболее сложная из них – проблема скрытых станций, суть которой заключается в следующем.
В беспроводных сетях возможны ситуации, когда два станции – «A» и «B» удалены и не слышат друг друга, но обе попадают в зону охвата третьей станции – «C». Такая ситуация изображена на рисунке 2:                       

Рисунок 2
Если, при таких условиях, станции «A» и «B» начнут передачу в направлении станции «С», то они не смогут обнаружить конфликтную ситуацию и определить, почему пакеты не проходят.
В доступных реализациях IEEE 802.11 эта проблема решена, но лишь частично. Для того, чтобы предотвратить коллизии, в них предусмотрена возможность обмена очень короткими служебными кадрами - RTS и CTS.
Первый из них – RTS (Request To Send – запрос на передачу), отправляется источником кадра (например, станцией «А») и оповещает станцию «С» о необходимости передачи кадра заданной длины. Второй – CTS (Clear To Send – свободна для передачи), формируется станцией «С» и оповещает все смежные станции о том, что, в соответствующий промежуток времени, эфир будет занят, и предоставлен станции «А». Получив такой кадр, станция «А» получает право доступа к каналу, а конкурирующая с ней станция «B» должна «уступить» эфир до завершения работы станции «А».
Следует отметить, что, даже при наличии такого механизма, риск коллизий не исключён, но будет существенно снижен. Это достигается тем, что RTS- и CTS-кадры гораздо короче, чем кадр данных. Например, максимальная длина кадра данных в IEEE 802.11 равна 2346 байт, длина RTS-кадра – 20 байт, а длина CTS-кадра – 14 байт.
 Однако, такой режим доступа не всегда возможен. Для того чтобы реализовать его на практике, необходимо включение в сеть специальных точек доступа, которые должны выполнять роль арбитров в такого рода конфликтах.
Существует ещё одна, схожая проблема. В сети Wi-Fi могут сосуществовать две спецификации протоколов IEEE 802.11 – IEEE 802.11b и IEEE 802.11g.  Частично, эти спецификации совместимы, поскольку, на одних скоростях передачи, они используют один и тот же метод модуляции, на других – нет. Для того чтобы убедиться в этом, достаточно заглянуть в таблицу 1.1:
Таблица 1.1
Скорость
Мбит / c
Тип модуляции
IEEE 802.11g
IEEE 802.11b
1
Последовательность Баркера
Последовательность Баркера
2
Последовательность Баркера
Последовательность Баркера
5.5
CCK
CCK
6
OFDM
-
11
CCK
CCK
12
OFDM
-
24
OFDM
-

Вспомним теперь, что основной принцип  IEEE 802.11 –  «слушать, прежде чем вещать». Но устройства типа IEEE 802.11b не способны услышать устройства IEEE 802.11g  в  OFDM-режиме. Возникает проблема, аналогичная проблеме  скрытых станций.
Очевидно, что рассмотренные выше проблемы должны быть учтены при имитационном моделировании.
На первый взгляд, эти проблемы могут быть учтены достаточно просто – условия радиослышимости могут быть заданы исходными данными, оформленными в виде неориентированного графа, вершины которого соответствуют станциям (узлам сети), а дуги – «пригодным» радиолучам.
Однако, не всё так просто. Известно, что радиоволна, в процессе её распространения в пространстве, занимает объём в виде эллипсоида вращения с максимальным радиусом в середине пролёта, который называют зоной Френеля (см. рисунок 3).

Рисунок 3

Естественные и искусственные преграды, попадающие в это пространство, ослабляют сигнал. Причём ослабление сигнала зависит от следующих параметров:
- расстояний от антенн до самой высшей точки предполагаемого препятствия (в  километрах) – S и D;
 - частоты (в ГГц);
На основании этих данных может быть найден радиус зоны Френеля – R, который позволяет оценить затухание в канале (более детально об этом – в подразделе 2.3).
Таким образом, наличие скрытых станций в сети может быть учтено ещё на стадии подготовки исходных данных для моделирования.
На этой же стадии могут быть заданы  вероятности успешной доставки пакетов по заданным радиолучам  - будем считать, что далеко не все моделируемые процессы должны имитироваться «буквально», то есть в полном соответствии с поведением оригинала. Часть из них может быть представлена в виде аналитических моделей, которые позволят получить интересующие нас результаты с использованием численных методов, с помощью которых имитационная модель сможет заранее «предсказать» исходы тех или иных процессов.
Исходя из этой предпосылки, попытаемся оценить возможность и целесообразность использования таких методов, и, на основании этих оценок, уточнить облик имитационной модели.
Далее приводится один из многих, возможных вариантов формального представления сети. Следует отметить, что в реальных системах имитационного моделирования чаще всего сеть описывается графом(соответствующими программными абстракциями). Мы же рассмотрим представления графа сети с академической стороны - с помощью матриц.

понедельник, 11 февраля 2013 г.

Сеть связи

Модель канала и её место в имитационной модели сети.

Продолжая тему имитационного моделирования беспроводных сетей связи, необходимо отметить, что современные беспроводные сети базируются на совокупности двух технологий – беспроводной передачи информации и сетевого взаимодействия.
Причём и те, и другие технологии стандартизированы и отвечают требованиям эталонной модели взаимодействия открытых систем – МВОС, утверждённой ещё в 1984 году.
Согласно этой модели, (см. рисунок 1), все протоколы взаимодействия систем подразделяются на семь уровней – физический, канальный (звена данных), сетевой, транспортный, сеансовый, представительский и прикладной.
Из всех существующих стандартов беспроводной передачи данных – протоколов нижних уровней, чаще всего используются протоколы семейства IEEE 802.11. Эти протоколы предусматривают разбиение протоколов канального и физического уровней, на следующие подуровни:
1) на канальном уровне - подуровней управления доступом к среде MAC (Media Access Control) и логической передачи данных LLC (Logical Linc Control);
2) на физическом уровне – подуровней PLCP (Physical Layer Convergence Procedure – определение состояния физического уровня) и PMD (Physical Medium Dependent – подуровень, зависящий от среды передачи).
Как эти подуровни соотносятся между собой и с вышестоящими уровнями МВОС, показано на рисунке 1:

Рисунок 1

При этом протоколы предполагают, что структура сети представляет собой случайный набор узлов, связанных между собой случайным образом, но связь между узлами сети осуществляется через типовые процедуры сетевого, канального и физического уровней, вся совокупность которых – всего лишь «внешняя» среда. 
Причём предоставленная самой себе среда может пребывать в устойчивом состоянии, но её организация - то есть состояние связей между станциями, может меняться, как под влиянием внешних воздействий на среду например, шумов, так и внутренних воздействий на элементы среды, которые описываются протоколами «нижних» уровней. В свою очередь реакции «среды» на эти воздействия должны рассматриваться как управляющие воздействия.
Из сказанного следует, что реальные способности системы зависят не столько от свойств механизмов управления системой связи, сколько от структуры и поведения «среды» и от характера взаимодействия «системы» со «средой». Очевидно, что именно это обстоятельство должно определять облик той или иной имитационной модели.  
 Разумеется, что поведение рассматриваемой «среды» должно быть представлено в упрощенном виде – в виде модели поведения канала, достаточной для получения конкретных значений вероятностей и времён доведения пакетов при любых ситуациях в сети.
Подобное упрощение может быть достигнуто за счёт замены отдельных подмножеств состояний канала и канального оборудования на ключевые точки - «макро состояния», причём такая замена не должна приводить к искажениям наиболее важных причинно-следственных связей.
Поэтому, модель канала должна отражать наиболее важные особенности протоколов «нижних» уровней. 
В следующей части мы обсудим основные особенности моделирования протоколов IEEE 802.11.

воскресенье, 10 февраля 2013 г.


Сеть связи

Имитационное моделирование беспроводных сетей связи.


Проблемы построения и использования имитационных моделей сетей связи и её элементов могут ставиться и решаться в самых различных аспектах. Разработка имитационной модели, которая обеспечивает возможность оценки вероятностей и качества предоставления услуг связи в сети с произвольной топологией, является нетривиальной задачей.
 Такая модель должна обеспечивать:
1) возможность ввода и корректировки формального описания топологии сети;
2) имитацию предложенных алгоритмов назначения и корректировки маршрутов, (в том числе имитацию процедур формирования и рассылки служебных пакетов);
3) имитацию движения пользовательских пакетов в соответствии с предложенными процедурами маршрутизации;
4) получение следующих характеристик сети:
- вероятности доставки пакетов, поступивших в сеть;
-  среднего времени обслуживания пакета в сети (без учёта его пребывания в очереди);
-  среднего время пребывания пакета в очередях;

Причём, в данной имитационной модели может быть использована любая модель канала, которая удобна для необходимых экспериментальных исследований. Главное, чтобы данная модель соответствовала всем чертам оригинала, которые существенны для круга изучаемых явлений. 
В частности, каналы и каналообразующие средства cети могут быть представлены как некие «чёрные ящики», с известной номенклатурой входных воздействий и соответствующих реакций на данные воздействия.
Такой подход обеспечивает возможность объективного изучения систем, построенных на базе реальных технических средств, внутренняя структура которых неизвестна, либо слишком сложна для точной имитации их поведения.
Рассмотрению возможных вариантов формального описания поведения таких технических средств посвящен этот цикл статей.

В следующей части мы расскажем о модели канала и ее месте в имитационной модели сети.
    

четверг, 7 февраля 2013 г.



Здравствуйте и разрешите представиться! 


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

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

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

А мы не против!

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