
- •Пример расчёта параметров моделируемой системы
- •Результаты моделирования
- •3 Описание разработанной программы
- •Что такое нисходящий канал связи в телекоммуникационных сетях?
- •2) Какой из изученных алгоритмов распределения ресурсов оптимален для передачи данных по заданному варианту базовой станции? Почему?
- •Приложение а «Генерация абонентов и отображение их положения»
- •Приложение б «Построение графиков распределения аб»
- •Приложение в «Реализация алгоритмов распределения ресурсов»
- •Приложение г «Вычисление оценок работы для каждого алгоритма»
- •Приложение д «Построение графиков оценок алгоритмов и запуск программы»
Что такое нисходящий канал связи в телекоммуникационных сетях?
В телекоммуникационных сетях нисходящий канал связи представляет собой передачу данных от базовой станции к абонентскому устройству. Согласно лекции, примерно 95% всего интернет-трафика проходит по нисходящему каналу. Например сюда можно отнести загрузку веб-страниц в ответ на запрос пользователя.
2) Какой из изученных алгоритмов распределения ресурсов оптимален для передачи данных по заданному варианту базовой станции? Почему?
Согласно полученным в результате работы графикам для используемой системы передачи данных (параметры приведены на Рисунке 1) среди изученных алгоритмов распределения ресурсов оптимальным является Proportion Fair.
Алгоритм Maximum Throughput приводит к неравномерному распределению ресурсов. Как видно на Рисунке 4, при использовании этого алгоритма скорость передачи данных для некоторых абонентов (в данном случае для всех, кроме ближайшего) будет равна к нулю, что не подходит для стабильной работы системы для большинства абонентов.
Алгоритм Equal Blind распределяет ресурсы равномерно, но не учитывает качества канала, что может привести к неоптимальному использованию пропускной способности, так как у абонентов разное качество связи.
А алгоритм Proportion Fair обеспечивает баланс между суммарной скоростью сети и равномерностью распределения ресурсов. На Рисунке 2 видно, что алгоритм Proportion Fair немного превосходит Equal Blind. Он позволяет поддерживать приемлемый уровень скорости для всех абонентов, поэтому и является оптимальным.
Приложение а «Генерация абонентов и отображение их положения»
import numpy as np
import matplotlib.pyplot as plt
# константы
R = 30 # радиус действия БС
Ptx = 0.1 #
f0 = 5600 # частота
df = 40 # частота пропускания канала
kn = 3 # коэффициент теплового шума
T = 300 # температура (К)
K = 1.380649*10**-23 #постоянная Больцмана
Pn = df * T * K * kn * 10**6 # мощность теплового шума
K = 29 # коэффициент типа помещения ?
# генерация абонентов и расчёт пропускных способностей
def generate_ab(n):
subs = []
for _ in range(n):
angle = 2 * np.pi * np.random.rand() # случ. угол
distance = R * np.sqrt(np.random.rand()) # расстояние от БС до АБ
L_dB = 20 * np.log10(f0) + K * np.log10(distance) - 28 # потери мощности в дБ
L = 10 ** (L_dB / 10) # перевод потерь в разы
Prx = Ptx / L # принятая мощность сигнала
SNR = Prx / Pn # отношение сигнал / шум
CC = df * np.log2(1 + SNR) # пропускная способность
subs.append({'angle': angle, 'distance': distance, 'CC': CC}) # добавление АБ
return subs
# график расположения абонентов
def plot_ab(subs):
angles = [s['angle'] for s in subs]
distances = [s['distance'] for s in subs]
fig, ax = plt.subplots(subplot_kw={'projection': 'polar'})
ax.scatter(angles, distances)
ax.set_title(f'Расположение {len(subs)} абонентов')
plt.show()