Скачиваний:
4
Добавлен:
27.08.2024
Размер:
876.33 Кб
Скачать

ГУАП

КАФЕДРА 41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

ст. преподаватель

 

 

 

Н.В. Апанасенко

 

 

 

 

должность, уч. степень, звание

 

подпись, дата

 

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №2

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

по курсу: МОДЕЛИРОВАНИЕ СИСТЕМ РАСПРЕДЕЛЕНИЯ РЕСУРСОВ

РАБОТУ ВЫПОЛНИЛ

 

 

 

 

 

СТУДЕНТ гр. №

4016

 

 

 

М.О. Жовтяк

 

 

 

 

подпись, дата

 

инициалы, фамилия

Санкт-Петербург 2024

1.Цель.

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

2.Краткие теоретические сведения

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

(Сhannel Сapacity) может быть выражена как:

 

С

i

f log

2

1 SNR

,

 

 

 

 

 

 

i

 

 

 

где f

- полоса пропускания канала связи,

SNRi

-

отношение сигнал/шум

(Signal-to-Noise Ratio, SNR)

у абонента с индексом

i 1, N . Как видно из

данной формулы максимальная пропускная способность канала связи

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

f фиксировано,

то значение

параметра SNR в общем случае является случайной величиной, зависящей от

многих факторов.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

SNR

P

 

 

 

 

 

 

 

 

 

 

 

 

RX

,

 

 

 

 

 

 

 

 

 

 

 

P

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

N

 

 

 

 

 

 

 

где P

- принятая

мощность сигнала,

 

P

-

мощность теплового шума.

RX

 

 

 

 

 

 

 

 

 

N

 

 

 

Мощность теплового шума определяется следующим выражением:

 

 

 

 

 

P f T k k

N

,

 

 

 

 

 

 

 

 

N

 

 

 

 

 

 

 

здесь T

абсолютная температура

 

(К),

k

– постоянная

Больцмана

1.38 10

23

Дж/К

,

k

N - коэффициент теплового шума приемника kN 1 .

 

 

 

 

Очевидным является тот факт, что принятая мощность сигнала

определяется излучаемой мощностью БС -

PTX

и уровнем потерь мощности

при преодолении сигналов расстояния от БС к АБ и определяется следующим выражением:

2

P

 

P

.

TX

 

 

 

RX

 

L

 

 

 

 

В качестве модели затухания в помещениях (Indoor Propagation Model, IPM) в помещениях рассмотрим разработанной международным союзом связи (International Telecommunication Union, ITU). В рамках этой модели потери L в помещении рассчитывается следующим образом:

10 lg L 20 lg f

0

K lg d P

(n) 28,

 

 

 

 

f

 

 

 

 

где K – коэффициент, зависящий от типа помещения,

Pf

(n)

– принять

равным нулю, К – принять равным 29.

 

 

 

 

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

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

Первым был рассмотрен алгоритм Maximum Throughput, что

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

определяется как:

[ ] [ ]

Так, получаем приоритет для пользователя по алгоритму будет равен максимальной пропускной способности пользователя. Чтобы определить, кем будет занят блок нужно определить приоритет каждого из АБ, а после дать блок тому, у кого он больше. В случае этого алгоритма,

блок будет отдан тому, у кого больше пропускная способность в этом блоке.

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

 

 

 

 

 

NRB

 

 

 

 

 

 

 

 

 

Vi, j k

1 bi, j k 1

 

1

 

Ri k (1 ) Ri k 1

j 1

 

, где

.

 

 

 

 

 

RB

 

 

 

 

 

 

 

 

yслот

 

 

 

 

 

3

 

 

 

 

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

piEB, j k

1

.

 

 

 

 

 

 

Ri k

 

 

Для алгоритма Proportional fair, который выравнивает ресурсы, отдаваемые пользователям, нужно рассчитывать приоритет по формуле:

p

PF

k

 

 

 

i , j

 

C

i , j

k

 

 

R

k

 

i

 

 

.

3.Ход работы

Вариант работы №14 представлен на рисунке 1.

Рисунок 1 – Вариант работы Моделируется программа, размещающая случайным образом

абонентов вокруг станции со случайно генерируем значением R. Для каждого слота генерируется случайное затухание сигнала согласно формуле

L

k L x

k

 

i, j

i

i, j

 

.

 

 

 

 

 

Также,

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

случайная величина с параметром λ, в физическом смысле означающую количество пакетов данных V поступающих в буфер БС для передачи абоненту. После этого для сформированных местоположений абонентов рассчитываются величины максимальных скоростей.

В программе производится расчёт значений приоритета пользователей для трёх алгоритмов распределения ресурсов с учётом средней скорости за последнюю секунду. На основе этого строятся графики зависимости среднего

4

суммарного объёма данных, находящихся в буфере от параметра λ, что можно увидеть на рисунке 2.

Рисунок 2 – График зависимости среднего суммарного объёма данных в буфере от интенсивности входного потока для разных алгоритмов работы с буфером

Для каждого количества пользователей построен подробный график,

это представлено на рисунках 3-7.

Рисунок 3 – График зависимости среднего суммарного объёма данных в буфере от интенсивности входного потока для разных алгоритмов работы с буфером (2 пользователя)

5

Рисунок 4 – График зависимости среднего суммарного объёма данных в буфере от интенсивности входного потока для разных алгоритмов работы с буфером (4 пользователя)

Рисунок 5 – График зависимости среднего суммарного объёма данных в буфере от интенсивности входного потока для разных алгоритмов работы с буфером (8 пользователя)

6

Рисунок 6 – График зависимости среднего суммарного объёма данных в буфере от интенсивности входного потока для разных алгоритмов работы с буфером (16 пользователя)

Рисунок 7 – График зависимости среднего суммарного объёма данных в буфере от интенсивности входного потока для разных алгоритмов работы с буфером (32 пользователя)

7

По графику видно, что все алгоритмы ведут себя схожим образом при одинаковом числе пользователей. При этом схожими остаются Equal Blind и Proportional fair, в то время как алгоритм Maximum Throughput показывает немного более худшие результаты – буфер больше заполнен в среднем при одинаковом значении интенсивности.

4.Вывод

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

Исходя из результатов можно говорить, что самым оптимальными алгоритмами являются Equal Blind и Proportional fair, так как в среднем размер их буфера меньше, чем у Maximum Throughput хотя их значения приблизительно равны.

8

ПРИЛОЖЕНИЕ

import pandas as pd import numpy as np

import matplotlib.pyplot as plt

#from numba import njit, prange from tqdm import tqdm

#Определение параметров по варианту

Rmax

= 10

# R

(метры)

f0 =

1200

# f0

 

МГц

p =

0.01 # Ptx

 

Вт

k_n

= 3 #

k_n

-

коэффициент теплового шума

N_rb

= 50

# Nrb

- количество ресурсных блоков

K_boltsman = 1.38 * ( 10**(-23) ) # Постоянная Больцмана

t_rb = 0.0005 # Длина слота, с

y = 1 # Длина временного промежутка, с y_full = 10 # Весь временной промежуток, с delta_f = 180 # delta f кГц

T = 300 # Темература

K_const = 29 # Константа из формулы

def get_L(f0, Rmax):

# Создаем случайный радиус до вышки

r = np.sqrt(np.random.uniform(0, Rmax**2))

# Считаем потери

L = 10**((20 * np.log10(f0) + K_const * np.log10(r) - 28) / 10) return L

cur_L = 10**((20 * np.log10(f0) + K_const * np.log10(15) - 28) / 10)

# Мощность шума

P_n = delta_f * T * K_boltsman * k_n

# Мощность принятая абонентом

P_rx = p / (cur_L) # Затухание со случайной величиной

# Соотношение сигнал/шум

SNR = P_rx / P_n

# Пропускная способность канала связи np.log2(1+SNR)

# Функция расчета максимальной пропускной способности

9

def get_C(cur_L):

# Мощность шума

P_n = delta_f * T * K_boltsman * k_n

# Мощность принятая абонентом

P_rx = p / (cur_L) # Затухание со случайной величиной

# Соотношение сигнал/шум

SNR = P_rx / P_n

# Пропускная способность канала связи cur_C = delta_f * np.log2(1+SNR) return cur_C*125 # из Мбит в Кбайт

# Получение массивов L, C, V для одного пользователя def get_user_frame(user_L, n_slots, lmbd):

L_list = []

C_list = []

# Для каждого слота

for k in range(n_slots):

L_list.append([None for i in range(N_rb)])

C_list.append([None for i in range(N_rb)])

# Для каждого ресурсного блока for j in range(N_rb):

# Генерируем шум со случайной нормальной величиной

L_list[k][j] = user_L + np.random.normal(0,1)

# Считаем максимальную пропускную способность в зависимости от

шума

C_list[k][j] = get_C(L_list[k][j])

# Массив с объемом данных, который приходит в каждом слоте

V_list = []

# Для каждого слота генерируем объем данных в кбайт for k in range(n_slots):

V_list.append(np.random.poisson(lmbd))

return V_list, L_list, C_list

# Алгоритм Maximum Throughput

def maximum_throughput(C_list, V_list):

# Массив с распределением ресурсных блков по пользователям choice_list = []

# Для каждого слота

for k in range(len(C_list[0])):

choice_list.append([None for j in range(len(C_list[0][0]))]) v_sums = [V_list[u][k] for u in range(len(V_list))]

10

Соседние файлы в предмете Моделирование систем распределения ресурсов