Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ЛР2 / Краткая_теоретическая_информация_2

.pdf
Скачиваний:
8
Добавлен:
25.06.2023
Размер:
472.13 Кб
Скачать

Краткое содержание лекции №2

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

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

БС АБ4

АБ1

АБ3 АБ2

Рисунок 1. Пример распределения абонентов.

Работа БС строится по принципу, показанному на рисунке 2.

Очереди

1

Internet

Абоненты

2

Планировщики ресурсов

Ключ

N

Из сети «интернет» на БС поступают пакеты данных для передачи каждому АБ. Объем данных, содержащихся в каждом пакете одинаков и равен

Vп = 1 кбайт. В рассматриваемой модели, количество пакетов данных Pi k ,

поступающих в слоте k для передачи каждому абонентскому устройству i,

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

1

распределения с параметром – p. Данные поступившие на БС в слоте с индексом k могут быть переданы только в следующих слотах k+1 (и так далее).

Для каждого абонента, подключенного к БС, выделяется буфер, в

который поступают пакеты данных и ожидают отправку на абонентское устройство. Задача БС доставить пакеты данных каждому АБ. Для этого время передачи разделено на равные интервалы – слоты, длительность каждого равна длительности передаваемого сообщения. В рассматриваемой модели длительность сообщений принята равной RB = 0.5 мс , а полоса частот,

выделяемая для каждого абонента fBS =180 кГц. Предполагается, что БС начинает передачу сообщений только в начале слота. Основной задачей БС является доставка сообщений на АБ, при этом буфер для каждого абонента не должен переполняться.

Объем передаваемых данных одному абоненту в каждом слоте

различный и определяется как

V

k

 

= C

k

RB , где

V

k

 

– объем данных,

i

 

i

 

i

 

который может быть передан абоненту

i в слоте с индексом k,

C

k

 

i

 

максимальная пропускная способность канала связи для абонента i в слоте с индексом k. Изменение максимальной пропускной способности от слота к слоту связано с тем, что затухание сигнала при распространении от БС до

абонента является случайной величиной и определяется как

L

 

k

 

= L + x

k

 

 

i

 

i

i

 

с размерностью [dB], где

x

 

k

 

 

 

-

 

нормальная

случайная

 

величина

 

с

i

 

 

 

 

 

 

математическим ожиданием

μ = 0

 

и

среднеквадратическим

отклонением

σ = 1 , для i–го абонента и k–го слота,

Li - среднее затухание в канале от БС до

абонента i (полученное на основе модели Окамура-Хаты или ITU).

 

 

 

 

Таким образом объем данных, находящихся в буфере каждого АБ на БС

в конце слоте, определяется как:

D

 

k

 

= D

k 1

V

k

 

+ P

k

 

1кбайт

 

 

 

 

 

i

 

 

i

 

i

 

i

 

 

 

 

 

 

 

 

1) Алгоритм последовательной передачи данных Рассмотрим стратегию работы БС, основанную на последовательной

передаче данных АБ, согласно их порядковому номеру (см. рисунок 3).

2

Номер слота

1

2

3

4

5

6

k-1

k

k+1

Номер

АБ1

АБ2

АБ3

АБ4

АБ1

АБ2

. . .

 

 

абонента

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 3 – Последовательная передача для N = 4

При работе БС на основе данной стратегии за каждым АБ закреплен номер слота, в котором данному АБ будет передаваться информация. Если в

буфере БС нет данных для абонента i, то в данном слоте БС не передает сообщение и дожидается следующего слота (при этом во всех слотах для каждого АБ на БС поступают пакеты данных).

2) Оптимизированный алгоритм последовательной передачи данных

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

Рассмотрим пример, согласно очереди, в слоте k = 5 БС должна отправлять данные первому АБ (i = 1), однако данных для отправки для первого АБ нет (буфер пуст), поэтому слот k = 5 достается второму АБ и так далее.

Номер слота

1

2

3

4

5

6

7

8

k

k+1

Номер

АБ1

АБ2

АБ3

АБ4

АБ1

АБ2

. .

АБ4

 

 

абонента

АБ3

 

 

 

 

 

 

 

 

 

 

 

 

Рисунок 4 – Оптимизированный алгоритм последовательной передачи

данных

Как можно промоделировать такую систему

3

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

 

имеет размерность [пакет/сек], а пакеты данных могут прийти в каждом

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

 

=

RB

слот

 

Далее необходимо найти параметр p для геометрического распределения, соответствующий интенсивности входного потока слот:

p =

1

 

 

+1

 

 

слот

 

что соответствует геометрической случайной величине, означающей число

«неудач» до первого «успеха» (см. https://ru.wikipedia.org/wiki/Геометрическое_распределение).

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

4

функцию np.random.geometric(). Данная функция возвращает с.в.

распределенную по геометрическому закону, физический смысл которой

номер первого «успеха» (см. рисунок ниже).

Математическое ожидание такой случайной величины находится как 1/p

(см. https://ru.wikipedia.org/wiki/Геометрическое_распределение). При этом

минимальной

значение возвращаемой с.в.

равно

единицы

(носитель

n 1, 2,3,....

То есть если вы используете

данную

функцию

в Вашей

 

).

программе, как минимум один пакет данных для абонента будет приходить в каждом слоте! В этом случае с большой вероятностью буферы абонентов будут переполняться. Данная ситуация не соответствует реальной картине функционирования телекоммуникационных систем. Поэтому из возвращаемого значения функции np.random.geometric() необходимо вычитать единицу, то есть количество пакетов данных пришедших на БС для абонента i

в слоте k будет равно:

Pi k = np.random.geometric(p) – 1

5

Значение

Pi k

будет распределено по геометрическому закону

распределения с параметром p и математическим ожиданием М = (1 – p)/p.

Если Вы пишите программу на matlab, то скорее всего, для генерации с.в. распределенной по геометрическому закону распределения используете функцию random(‘Geometric’, p, [1, 1]). Данная функция возвращает с.в.

распределенную по геометрическому закону, физический смысл которой

количество «неудач» первого «успеха» (см. рисунок ниже).

Тогда количество пакетов данных пришедших на БС для абонента i в слоте k

будет равно:

Значение

 

 

 

P

 

k

= random(‘Geometric’, p, [1, 1])

 

 

 

i

 

P

 

k

 

 

будет распределено по геометрическому закону

i

 

 

распределения с параметром p и математическим ожиданием М = (1 – p)/p.

Далее необходимо промоделировать в соответствии с Вашим вариантом задания.

После моделирования можно построить график зависимости среднего суммарно объема данных, находящихся в буфере у всех АБ от интенсивности входного потока – или слот.

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

6

7

Псевдокод

Добавление библиотек Инициализация переменных

Инициализация списка значений интенсивности входного потока Цикл по количеству пользователей в системе

Генерация расстояний до АБ Расчет Li

Цикл по значениям интенсивности входного потока

Цикл по количеству моделируемых слотов Расчёт Li k

Расчёт

Ci k

Расчёт

Vi k

Расчёт

Di k

Расчёт среднего суммарного объема данных в буфере БС

8

Соседние файлы в папке ЛР2