Estudio de trafico de tecnología LTE (4G) A mediante ...
Transcript of Estudio de trafico de tecnología LTE (4G) A mediante ...
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
A
N° tesis:
PROYECTO FIN DE CARRERA
Presentado a
LA UNIVERSIDAD DE LOS ANDES
FACULTAD DE INGENIERÍA
DEPARTAMENTO DE INGENIERÍA ELÉCTRICA Y ELECTRÓNICA
Para obtener el título de
INGENIERO ELÉCTRONICO
Por:
Jorge Leonardo Gómez Mora
Estudio de trafico de tecnología LTE (4G) mediante análisis de
sensibilidad de los parámetros de un sistema con uso del simulador NS3
Sustentado el 7 de enero de 2015 frente al jurado:
- Asesor: Roberto Bustamante Miller, Profesor Asociado, Universidad de Los Andes
- Jurado: José Fernando Jiménez Vargas, Profesor Asociado, Universidad de los Andes
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
B
Contenido Resumen Ejecutivo .................................................................................................................. i
1. INTRODUCCIÓN ....................................................................................................... 1
2. LTE release 8 FDD ...................................................................................................... 2
2.1. Parámetros tenidos en cuenta en la creación de los escenarios de simulación ........ 8
2.2. Módulos y clases del simulador NS3 de interés .................................................... 12
3. Diseño estadístico de experimento ............................................................................ 22
3.1. Tiempo de simulación y cantidad de semillas para cada experimento .................. 22
4. Escenarios de simulación........................................................................................... 22
4.1. Escenario base ........................................................................................................ 22
4.2. Escenario con edificaciones ................................................................................... 23
4.3. Escenario con femtoceldas ..................................................................................... 24
5. Resultados .................................................................................................................. 24
5.1. Metodos de analisis de archivos resultados del simulador .................................... 24
5.2. Estudio de desempeño del escenario base ............................................................. 26
5.3. Estudio espectro en cada escenario ........................................................................ 27
5.4. Estudio de sensibilidad de trafico de escenario de los tres escenarios .................. 29
6. Conclusiones .............................................................................................................. 33
7. REFERENCIAS .......................................................................................................... 1
8. ANEXOS ..................................................................................................................... 1
Código del escenario base ................................................................................................... 1
Código del escenario con edificaciones ............................................................................ 12
Codigo de escenario con femto celdas .............................................................................. 22
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
C
Índice de Tablas
Tabla 1. Parametros de celda en cada escenario ...................................................................... i Tabla 2. Desempeño del sistema de los escenarios simulados .............................................. iii Tabla 3. Resumen de los requerimientos objetivos para LTE 8. ............................................ 4
Tabla 4. EARFCN para 2.5 GHz y BW de 20 MHz. ............................................................. 9 Tabla 5. Bandas de transmisión E-UTRA .............................................................................. 9 Tabla 6. Estándar de calidad de servicio para LTE 8. ......................................................... 12
Tabla 7. Algoritmo de selección de modelo de pérdidas por propagación en la clase hibrida.
.............................................................................................................................................. 15 Tabla 8. Coeficientes de pérdidas, N, para propagación indoor ........................................... 19
Tabla 9 Desvanecimiento estadístico, desviación estándar (dB) para cálculo de perdidas
indoor. ................................................................................................................................... 19
Tabla 10. Parámetros de celda .............................................................................................. 19 Tabla 11. Parámetros del modelo de propagación. ............................................................... 20 Tabla 12. Modelos de simulación de tipo de escenario. ....................................................... 20
Tabla 13. Valores de transmisión. ........................................................................................ 21 Tabla 14. Parámetros de las edificaciones en el modelo. ..................................................... 21
Tabla 15. Desempeño del sistema de los escenarios simulados, resultados ......................... 32
Índice de Figuras
Figura 1. Escenarios simulados en el documento .................................................................... i
Figura 2. SINR de todos los escenario simulados. ................................................................. ii Figura 3. Línea de tiempo aproximada del panorama de estándares de las comunicaciones
móviles. .................................................................................................................................. 2 Figura 4. Vista de tecnologías para acceso múltiple LTE, visto en el dominio de la
frecuencia................................................................................................................................ 6
Figura 5. Principios fundamentales de los beneficios de la tecnología de antenas múltiples. 7 Figura 6 .Planificador de alta velocidad y adaptación a conexión. ........................................ 8 Figura 7.Esquema de la red mediante los módulos de NS3. ................................................ 12 Figura 8. Arquitectura de clases en NS3 para la red LTE. ................................................... 13
Figura 9. Modelos de propagación disponibles en la clase hibrida. ..................................... 14 Figura 10. Líneas de propagación del modelo de propagación. ........................................... 20 Figura 11. Topología del escenario base. ............................................................................. 23 Figura 12. Topología del escenario con edificaciones. ........................................................ 23 Figura 13. Topología de escenario con femto celdas. .......................................................... 24
Figura 27. Eficiencia de canal dada relacion señal a ruido. ................................................. 26 Figura 14. Retardo vs número de usuarios escenario base. .................................................. 27 Figura 15. Trafico ofrecido por usuario vs número de usuarios. ......................................... 27 Figura 16. Jitter vs numero de usuarios. ............................................................................... 27 Figura 17. SINR escenario base 2.5 GHz. ............................................................................ 28
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
D
Figura 18. SINR escenario con edificaciones 2.5 GHz. ....................................................... 28
Figura 19. SINR de femto celdas en escenario con edificaciones 700 MHz........................ 29 Figura 20. Retardo dependiendo del escenario. . .................................................................. 29 Figura 21. Jitter depediendo del escenario. .......................................................................... 30 Figura 22. Eficiencia espectral dependiendo el escenario simulado. ................................... 30 Figura 23. Asignacion de trafico dado el CQI de los usuarios.. .......................................... 30
Figura 24. Trafico ofrecido por usuario dependiendo del escenario. ................................... 31 Figura 25. Capacidad de canal promedio dependiendo del escenario. ................................. 31
Figura 26. Porcentaje de pérdidas de paquetes dependiendo el escenario. .......................... 31
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
E
Agradecimientos- A mis padres, hermanos y amigos
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
i
Resumen Ejecutivo
El siguiente documento presenta el estudio de tráfico en una red LTE 4G FDD release 8
mediante el análisis de parámetros de sensibilidad correspondientes al sistema, el trabajo plantea
tres escenarios de simulación de una única estación base con usuarios que presentan un tráfico
correspondiente a una aplicación de voz sobre IP. El objetivo del documento es determinar la
sensibilidad de una celda frente a cambios de los factores en el modelo, como inclusión de
femtoceldas y edificaciones según el modelo de propagación hibrido del software de simulación
NS-3. Se procedió a calcular el número máximo de usuarios con distribución espacial aleatoria
uniforme que pueden ser atendidos dentro de la celda y de esta manera establecer un escenario base
al cual se le evaluaran las parámetros de desempeño de la celda. Los otros dos escenarios
corresponden a la inclusión de edificaciones y femtoceldas dentro de la macro celda. Las
simulaciones son realizadas mediante el software de simulación ns-3.20 y un diseño estadístico de
análisis de resultado que garantiza estos resultados dentro un intervalo de confianza del 99%.
Los parámetros del modelo utilizados para la simulación de la macro celda y femto celda en cada
escenario se presentan en la tabla 1, estos parámetros corresponden a valores congruentes de
sistema LTE existentes. Tabla 1. Parametros de celda en cada escenario
Parámetro de la red Macro celda Femto celda
Ancho de banda (MHz) 10 (5)[1] 1.5
Canal de transmisión
(EARFCN)
27 27
Tipo de antena Isotrópica Isotrópica
Potencia de antena (dB) 46 10 [1] Valor seleccionado dada la distribución de ancho de banda en la celda con femto celdas.
Los escenarios de simulación corresponden a los presentados en la figura 1. De donde se puede
observar la configuración del sistema según el escenario. El número de usuarios por macrocelda es
de 80 y el área por macro celda es de 1 km.
Figura 1. Escenarios simulados en el documento
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
ii
Se muestra a continuación en la figura 2 las figuras de relación señal a ruido para cada uno los
escenarios propuestos. Con el fin de analizar el espectro de potencia de transmisión conforme a la
disposición de las estaciones bases y femtoceldas, así como de edificaciones.
Figura 2. SINR de todos los escenario simulados.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
iii
Los Parámetros de desempeño se presentan en la tabla 2, donde también se presentan los
resultados finales de la simulación de los tres escenarios de simulación.
Tabla 2. Desempeño del sistema de los escenarios simulados
Parámetro de
desempeño
Jitter
(ms)
Perdida de
paquetes (%)
Trafico
ofrecido
(Mbps)
Retardo
promedio
(ms)
Eficiencia
espectral
(b/Hz)
Escenario 1 15 1.8% 11 200 1.2
Escenario 2 15 8% 10 300 1.1
Escenario 3 10 1.5% 15 150 1.4
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
1
1. INTRODUCCIÓN
El siguiente documento presenta el estudio de tráfico en una red LTE 4G FDD release 8
mediante el análisis de parámetros de sensibilidad correspondientes al sistema, el trabajo plantea
tres escenarios de simulación de una única estación base con usuarios que presentan un tráfico
correspondiente a una aplicación de voz sobre IP. El objetivo del documento es determinar la
sensibilidad de una celda frente a cambios de los factores en el modelo, como inclusión de
femtoceldas y edificaciones según el modelo de propagación hibrido del software de simulación
NS-3. Se procedió a calcular el número máximo de usuarios con distribución espacial aleatoria
uniforme que pueden ser atendidos dentro de la celda y de esta manera establecer un escenario base
al cual se le evaluaran las parámetros de desempeño de la celda. Los otros dos escenarios
corresponden a la inclusión de edificaciones y femtoceldas dentro de la macro celda. Las
simulaciones son realizadas mediante el software de simulación ns-3.20 y un diseño estadístico de
análisis de resultado que garantiza estos resultados dentro un intervalo de confianza del 95%.
Para poder llevar a cabo exitosamente el ciclo de vida de un sistema de telecomunicaciones, tal
como lo son la planeación, diseño, optimización, resolución de problemas, gestión del desempeño
entre otros; Es fundamental entender su funcionamiento con el fin de poder predecir su desempeño,
límites, y respuesta sensible ante ciertas cargas, además de sus posibles causas de
malfuncionamiento y en general lograr una intuición sobre todo lo que tiene que ver con el sistema.
Por eso es necesario realizar un análisis de sensibilidad de parámetros de Long Term evolution
(LTE) verificando los modelos teóricos desarrollados correspondientes al estado del arte sobre esta
tecnología.
LTE es una de las últimas tecnologías en sistemas de comunicaciones móviles. Este estándar
permite una mejora tecnología, ya que presenta varias ventajas competitivas frente a otros
estándares predecesores. Su calidad de servicio y ancho de banda proveen un tráfico adecuado de
vos sobre IP que permite una mejor integración con otros servicios multimedia [1]. La tecnología
GSM y su evolución a través de GPRS, EDGE, WCDMA y HSPA, es la tecnología de envió
elegida por la mayoría de operadores móviles del mundo. Los usuarios han experimentado
incremento en las tasas de envió de datos, acompañada con una dramática reducción en los costos
de comunicación. Ahora los usuarios esperan pagar menos recibiendo más. Por lo tanto debe haber
una aproximación dual a esta problemática: buscar una mejora considerable en el desempeño del
sistema a bajos costos. El desempeño mejorado debe ser entregado a través de sistemas los cuales
presentan menores costos de instalación y mantenimiento. Las tecnologías LTE Y LTE avanzada
representan el siguiente este siguiente paso y son la base para las comunicaciones móviles del
futuro. Por lo tanto es de suma importancia reconocer el funcionamiento y desempeño de esta
tecnología, para lograr optimizar su funcionamiento. [1]
Actualmente la tecnología GSM (3G) el sistema actual de comunicaciones móviles para los
usuarios comerciales, corporativos y naturales representa el 99% del mercado de comunicaciones.
Es decir que las comunicaciones actualmente están basadas en 3G; La introducción de las
tecnologías 4G representa una mejora en el desempeño de la tecnología actual bajo parámetros
diferentes de comportamiento. Estudios acerca de esta nueva tecnología demuestran estas
afirmaciones. [1]
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
2
El objetivo general del desarrollo de este estudio es entender el comportamiento de la
tecnología LTE 4G a través de experimentos por simulación, además se plantea una serie de
objetivos específicos como: Entender la teoría básica de comunicaciones sobre la que se soporta el
estándar LTE, lograr una competencia en el uso del simulador NS3, comprender los modelos
tráfico y de propagación en el contexto de escenarios LTE y evaluar el desempeño del sistema
mediante simulaciones. Estos objetivos son cumplidos mediante el desarrollo del siguiente
documento por medio de resultados por simulación con corroboración aproximada basada en
resultados teóricos sencillos según los tres escenarios planteados para el estudio.
2. LTE release 8 FDD
El protocolo de comunicación LTE es uno de los últimos avances en el sistema universal de
telecomunicaciones móviles (UMTS), este sistema permite una mejora en la tecnológica que
presenta varias mejoras competitivas frente a otras tecnologías. Su calidad de servicio y ancho de
banda proveen un tráfico adecuado de vos sobre IP que permite una mejor integración con otros
servicios multimedia [1]. Los sistemas previos tal como el Global System for Mobile
communications (GSM) (3G), que está basado en tecnología digital presenta una representación del
99% en el mercado debido al éxito que tuvo la estandarización de las tecnologías de las
comunicaciones, desde una perspectiva tecnológica y de estándares la IMT clasifica el desarrollo
de estas tecnologías y protocolos tal como se muestra en la figura 1.
Figura 3. Línea de tiempo aproximada del panorama de estándares de las comunicaciones móviles.
Es posible observar de la figura anterior que la tecnología LTE pertenece al desarrollo realizado
en 3GPP (3rd generation partnership Project), que es actualmente el grupo de estándares dominante
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
3
en cuestiones de sistemas de radiocomunicaciones móviles. Dentro del grupo 3GPP existen tres
tecnologías de acceso diferenciables, la segunda generación, las familias GSM/GPRS/EDGE cuyo
protocolo estaba basado en división de tiempo o frecuencia para acceso múltiple TDMA, FDMA;
La tercera generación, la familia UMTS baso el protocolo en acceso múltiple por división de código
(CDMA); Finalmente la cuarta generación, adopto la multiplicación por división ortogonal de
frecuencia (OFMD), la cual es la tecnología dominante en la evolución de los últimos estándares
para todo los estándares para radiocomunicación móvil.[1]
La cuarta generación LTE está basada en un sistema de conmutación de paquetes para todas las
aplicaciones, toda la tecnología desarrollada para este estándar está basada en este supuesto, la
arquitectura SAE (System Architecture Evolution), que comprende los aspectos que no tiene que
ver con comunicación de radio en el sistema completo, incluye un EPC (Evolved Packet Core),
juntos LTE y SAE componen el EPS (Evolved Packet System), donde la red de núcleo y acceso de
comunicaciones de radio están basadas en conmutación de paquetes. Es decir que Todos los
servicios van a ser conmutados por paquetes en vez de continuar el modelo de circuito conmutado.
[2]
El trabajo por parte del grupo 3GPP continúa mejorando el desarrollo en las UMTS mediante la
incorporación de nuevas especificaciones, los lanzamiento 5 y 6 corresponde a acceso de paquetes
de alta velocidad para downlink(HSDPA) y uplink(HSUPA) respectivamente, el 7 corresponde a
acceso de paquetes de alta velocidad (HSPA+) e incorporación por primera vez del sistema MIMO
(Multiple inputs multiple outputs), lanzamientos 8, 9 y 10 corresponde a mejoramiento de
compatibilidad con WCDMA de tercera generación para operadores de red, el lanzamiento 10
continua con la progresión del comienzo del estándar LTE-Adavanced. [1]
Los requerimientos y objetivos para LTE
Las discusiones conforme los requerimientos nuevo sistema LTE guiaron la conformación de un
estudio formal en 3GPP con el objetivo de asegurar la competitividad de este sistema durante una
franja de 10 años. Bajo los resultados de este estudio los requerimientos para el LTE 8 fueron
definidos en 2005, tal como se muestra resumido a continuación [1]:
Reducción de retardos.
Incremento de las tasas de transmisión de usuario.
Incremento de la tasa de transmisión de bit en la frontera de la celda, para provisión
uniforme de servicio.
Reducción del costo por bit transmitido, incremento de la eficiencia espectral.
Mayor flexibilidad del uso del espectro, en bandas nuevas y prexistentes.
Simplificación de la arquitectura de la red.
Mejoramiento de cobertura, incluyendo zonas con diferentes radio tecnologías de acceso.
Disminución de consumo de potencia para las terminales móviles.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
4
Tabla 3. Resumen de los requerimientos objetivos para LTE 8.
Parámetro Requerimiento Release 6 Comentarios
Downlink
Tasa de transmisión
de datos máxima >100 Mbps 14.4 Mbps Lte 20 MHz FDD, 2x2
multplexacion espacial.
Referencia: HSPD 5 MHz FDD,
transmision de unica antena
Eficiencia espectral
máxima > 5 bps/Hz 3 bps/Hz
Eficiencia espectral
promedio por celda > 1.6 - 2.1 bps/Hz/cell 0.53 bps/Hz/cell
Lte: 2x2 multiplexacion
espacial, receptor IRC.
Referencia: HSDPA, receptor
rake, 2 antenas receptoras
Eficiencia espectral de
frontera de celda > 0.04-0.06 bps/Hz/user 0.02 bps/Hz/user 10 usuarios por celda
Eficiencia espectral de
transmisión > 1 bps/Hz N/A
portadora dedicada unicamente
al modo de transmision
Uplink
Tasa de transmisión
de datos máxima >50 Mbps 11 Mbps Lte 20 MHz FDD, 2x2
multplexacion espacial.
Referencia: HSPD 5 MHz FDD,
transmision de unica antena
Eficiencia espectral
máxima > 2.5 bps/Hz 2 bps/Hz
Eficiencia espectral
promedio por celda > 0.66 - 1.0 bps/Hz/cell 0.33 bps/Hz/cell
Lte: 2x2 multiplexacion
espacial, receptor IRC.
Referencia: HSDPA, receptor
rake, 2 antenas receptoras
Eficiencia espectral de
frontera de celda > 0.02-0.03 bps/Hz/user 0.01 bps/Hz/user 10 usuarios por celda
sistema
Latencia plano de
usuario > 10 ms
LTE objetivo de 1/5 de la
referencia
Latencia de
configuración de
conexión >100 ms
Del estado desocupado al estado
activo
rango de ancho de
banda 1.4 - 20 MHz 5 MHz
requerimiento inicial en 1.25
MHz
capacidad VoIP NGMN > 60 sessions/MHz/cell
Tasas pico y pico de eficiencia de espectro
La tasa pico de transmisión de datos es definida como el máximo caudal por usuario asumiendo
todo el ancho de banda asignado a este usuario, con la mayor modulación y esquema de
codificación y con el número máximo de antenas soportadas. La tasa pico de transmisión de datos
por usuario que puede ser alcanzada es afectada generalmente por la cantidad de espectro usada y
sistemas MIMO. La máxima eficiencia de espectro es obtenida dividiendo la tasa pico de
transmisión de datos por usuarios por la el ancho de banda asignado.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
5
Caudal de celda y eficiencia de espectro
El nivel de desempeño de una celda puede ser medido mediante los siguientes parámetros:
Promedio de caudal por celda [bps/cell] y eficiencia espectral [bps/Hz/cell].
Promedio caudal de usuario [bps/user] y eficiencia espectral [bps/Hz/cell].
Caudal de usuario en frontera de celda [bps/cell] y eficiencia espectral [bps/Hz/cell]. Esta
métrica es concebida como el quinto percentil de caudal de usuario, obtenido de una
función de distribución acumulativa de caudal de usuario.
Capacidad de Voz
La capacidad del sistema es definida como el número de usuarios VoIP, dado un modelo
particular de tráfico y restricciones de retardo. Los detalles del modelo de tráfico usado para la
evaluación de LTE son econtrados en [5]. Allí son considerados los usuarios fuera de servicio si
más del 2% de los paquetes de VoIP no llegan exitosamente al usuario dentro de 50 ms y son
descartados, de igual forma se asume que un retardo end-to-end debe estar debajo de 200ms. La
capacidad del sistema VoIP puede ser definida como el número de usuarios presentes en la celda
cuando más del 95% de los usuarios están satisfechos. El grupo Next generation mobile networks
(NGMN) de operadores de red expresa su preferencia por la habilidad de soportar mínimo 60
sesiones VoIP satisfechas por MHz para LTE 8, tal como lo presenta la ilustración 2.
Movilidad y rango de las celdas
En LTE se requiere soportar comunicaciones con terminales en movimiento a velocidades de
hasta 350 km/h, o incluso de hasta 500 km/h dependiendo de la banda. El escenario principal para
operación de estos requerimientos son los trenes de alta velocidad. Este requerimiento signidica que
el handover entre celdas debe hacerse sin interrupción alguna, sin retardo perceptible y perdida nula
de paquetes para servicio de VoIP y otros criterios de confiabilidad para otros servicios.
Desempeño del modo de transmisión
Los requerimientos LTE 8 referentes a la integración eficiente del modo de transmisión para
altas tasas de transmisión de datos multimedia para servicios Broadcast/Multicast (MBMS) como
TV móvil. La eficiencia espectral requerida es dada en términos de banda dedicada a la transmisión
de datos. En sistemas de este tipo, el caudal del sistema está limitado a la tasa posible de
transmisión para el usuario en las peores condiciones. Por lo tanto, este sistema fue definido en
términos de caudal alcanzado (bps) y eficiencia espectral (bps/Hz).
Latencia – User plane latency
Es definida como el tiempo promedio entre la primera transmisión de paquetes de datos y la
recepción de una capa física reconocida. El cálculo de esta métrica debe incluir las tasas usuales de
retransmisión HARQ. Esta definición por lo tanto considera la capacidad del diseño del sistema, sin
ser afectado por la retardos de planificador que puedan surgir en caso de que le sistema este
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
6
cargado. La latencia round-trip es obtenida multiplicando la latencia por un factor de 2. En LTE es
requerida una latencia mínima de 5 ms en condiciones óptimas.
Latencia del control LTE y capacidad del sistema –Control plane latency and Capacity.
Es definida como el tiempo requerido para realizar la transición entre los dos estados básicos de
LTE. (RRC_Idle y RRC_connected). Es querido que para el estándar LTE 8 la transición del estado
inactivo al estado activo se realice en menos de 100 ms. La capacidad del sistema depende del
caudal soportando y de número de usuarios conectados a la celda que puedan ser soportados por la
señalización que haga el control. Para LTE 8 es requerido que al menos 200 usuarios activos sean
soportados por celda para un espectro de 5 MHz, y al menos 400 por celda para un espectro más
ancho.
Asignación de frecuencias LTE y modos dúplex
Debido al incremento en de la demanda de espectro para comunicaciones móviles está en
incremento, el estándar LTE puede realizar asignaciones de espectro de 1.4 a 20 MHz con una única
portadora y agendar todas las bandas de frecuencia identificadas por sistema IMT por ITU-R [4],
incluyendo frecuencias inferiores a 1 GHz. Esto permite que la implementación LTE pueda ser
desplegada sobre el espectro actualmente ocupado, además de incluir nuevos espectros disponibles
para ser utilizados. LTE provee soporte para operación TDD (Time división duplex), FDD
(Frecuency división duplex) y medio-duplex FDD en un diseño unificado.
Tecnologías usadas para LTE
El cumplimiento de la gran cantidad de requerimientos ya mencionados es únicamente posible
gracias a los avances realizados en las tecnologías móviles.
Tecnología mult-iportadora
La tecnología utilizada seleccionada, por los requerimientos de LTE 8, para downlinnk es
división ortogonal de frecuencia para múltiple acceso (OFDMA) y para uplink es división de
frecuencia para acceso múltiple para única portadora (SC-FDMA). Estos esquemas son mostrados
en la ilustración 3, a continuación.
Figura 4. Vista de tecnologías para acceso múltiple LTE, visto en el dominio de la frecuencia.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
7
La tecnología OFDMA subdivide un ancho de banda disponible para transmisión en múltiples
sub-portadores de banda estrecha, arregladas para ser mutuamente ortogonales, las cuales
individualmente o en grupos pueden transmitir paquetes independientes de información. Esta
subdivisión permite aprovechar todo el ancho de banda entre múltiples usuarios. Esta flexibilidad
puede ser usada e diferentes formas:
Anchos de banda en diferentes espectros pueden ser utilizados sin cambiar los parámetros
fundamentales de operación del sistema.
Recursos de transmisión de anchos de banda variables pueden ser asignados a diferentes
usuarios y planificados libremente en el dominio de la frecuencia.
Es facilitado el FFR (Fractional frecuency re-use) y la coordinación de interferencia entre
celdas.
Tecnología de antenas múltiples
El desarrollo en esta tecnología permite la explotación del dominio espacial de la celda como
otra dimensión para el diseñador de red. Los principios básicos mostrados en la ilustración 4 a
continuación.
Figura 5. Principios fundamentales de los beneficios de la tecnología de antenas múltiples.
Diversidad de ganancia: la diversidad de disposición de antenas dado un arreglo de antenas
mejora la robustez del sistema de transmisión contra los modelos de desvanecimiento de
señal de múltiple camino.
Ganancia de arreglo: La concentración de energía en una o más direcciones mediante
precodificación y generación de haz. Posibilita igualmente el multi-user MIMO.
Multiplexación espacial de ganancia: Transmisión de múltiples señales a un usuario en
capas múltiples espaciales creadas mediante la combinación de antenas disponibles.
Interfaz de radio de conmutación de paquetes
Como ya se ha mencionado LTE fue diseñado para operar sobre un sistema multiservicio
orientado a paquetes de datos. Este diseño se extiende sobre todas las capas de los protocolos con
los que opera. El planificador de alta velocidad sobre interfaz de radio fue propuesto por HSDPA
LTE 5, permite que la transmisión de paquetes cortos tenga una duración en coherencia con el
orden de magnitud del desvanecimiento instantáneo de canal, tal como es mostrado en la ilustración
5. Esta función permite una optimización de la utilización de la configuración de la capa física y el
manejo de los recursos llevado a cabo mediante los protocolos de conexión de acuerdo a las
condiciones de propagación del canal prevalecientes.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
8
Figura 6 .Planificador de alta velocidad y adaptación a conexión.
En el estándar LTE 8 los requerimientos sugieren que en orden de mejorar la latencia, la
duración del paquete fuera reducida de 2 ms a 1 ms. Esta mejora permite conjunto a la las técnicas
entre capas MAC y física incluir las siguientes técnicas en LTE:
Planificador adaptativo en las dimensiones de frecuencia y espacial.
Adaptación de la configuración MIMO incluyendo la selección del número de capas
espaciales transmitidas simultáneamente.
Adaptación de la conexión de modulación y tasa de codificación, incluyendo el número
transmitido de palabras codificadas.
Un conjunto mayor de modos de reporte rápido de estado de canal.
2.1. Parámetros tenidos en cuenta en la creación de los escenarios de simulación
Se definen a continuación 3 escenarios simulación para el análisis de este documento. De la
misma forma se definen los parámetros principales del modelo para de esta manera poder construir
los archivos de simulación en el software NS 3.20. Los escenarios son los siguientes (la
disposición de usuarios y detalles de la configuración son explicados en la sección III de este
documento):
Escenario 1: Distribución uniforme de usuarios sobre un espacio, todos los usuarios
presentan tráfico requerido de VoIP, única celda de servicio en espacio urbano.
Escenario 2: Distribución no uniforme de usuarios, 3 edificaciones contienen el 40% de los
usuarios, todos los usuarios presentan tráfico requerido de VoIP, única celda de servicio en
espacio urbano.
Escenario 3: Distribución no uniforme de usuarios, 3 edificaciones contienen el 40% de los
usuarios, todos los usuarios presentan tráfico requerido de VoIP, única celda de servicio en
espacio urbano, integración de 3 femtoceldas ubicadas sobre las edificaciones.
2.1.1. Parámetros del modelo
Ancho de banda
El ancho de banda para todos los escenarios de subida y bajada corresponde a 10 MHz. Este
ancho de banda es utilizado completamente por la estación base en los escenarios 1 y 2, en el
escenario 3, el ancho de banda es repartido entre las 4 estaciones, en la estacion principal 5 MHz y
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
9
en la estaciones del femtocelda con 1.4 MHz. De esta manera se reparte el ancho de banda para no
generar interferencia.
Frecuencia de transmisión
La frecuencia de transmisión para todos los escenarios es de 2.5 GHz. E-ARFCN: El número de
canal de radio frecuencia absoluto evolucionado, corresponde a un código que especifica un par de
canales de radio en donde viajan las portadoras para downlink y uplink. La ecuación que define este
parámetro relaciona la frecuencia de transmisión y el ancho de banda especificado [4].
𝐹𝐷𝐿 = 𝐹𝐷𝐿_𝑙𝑜𝑤 + 0.1(𝑁𝐷𝐿 −𝑁𝑂𝑓𝑓𝑠−𝐷𝐿)
[1]
Donde la FDL_low es la frecuencia que especifica la menor frecuencia permitida para el downlink,
NDL es el valor EARFCN para downlink, y la Noffs_dl es el minimo valor EARFCN para la banda
seleccionado. Para el uplink la ecuación usada es la siguiente:
𝐹𝑈𝐿 = 𝐹𝑈𝐿_𝑙𝑜𝑤 + 0.1(𝑁𝑈𝐿 −𝑁𝑂𝑓𝑓𝑠−𝑈𝐿)
[2]
Para los escenarios de simulación, 2.5 GHz y ancho de nada de 15 MHz, estos valores
corresponden a, LTE FDD r.8:
Tabla 4. EARFCN para 2.5 GHz y BW de 20 MHz.
Banda Nombre Area Modo Earfcn DL Downlink(MHZ) Earfcn UL Uplink (MHz)
7 2600 EMEA FDD 2750 2620 20750 2500
41 TD 2500 todas TDD 39690 2500 39690 2500
E-UTRA
El estándar para acceso de radio universal terrestre evolucionado, especifica las bandas de
frecuencia, tal como se muestra en la tabla a continuación: Tabla 5. Bandas de transmisión E-UTRA
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
10
Formato de comunicación
El modelo de comunicación para todos los escenarios corresponde al modelo SISO, single input,
single output. Lo que implica que las comunicaciones son atendidas en las bandas uplink y
downlink por la misma antena de comunicación.
Modelo de propagación
El modelo de propagación utilizado es el urbano para todos los escenarios, los modelos de
propagación indoor para los usuarios dentro de las edificaciones el moldeo de propagación en
construcciones. Debido a la disposición de usuarios dentro del área de cobertura se utiliza un
modelo de propagación hibrido. El cual propone usuarios outdoor, indoor y estaciónes base outdoor
e indoor. Tal es el caso para los modelos 2 y 3.
Tipo de Antena
En los escenarios 1 y 2 es utilizada únicamente una antena isotrópica con potencia de
transmisión de 46 dB y con una elevación de 15 m sobre el nivel del suelo. Para el escenario 3 se
utiliza la misma antena para la celda principal, y antenas isotrópicas con potencia de transmisión de
10 dB para las femtoceldas con la misma elevación. Las figuras de ruido corresponden a 9 y 5 parar
estacion base y usuarios respectivamente tal como esta configurado por defecto en el simulador.
Tipo de planificador
El MacScheduler seleccionado para todos los escenarios es el Proportional Fair. Este
planificador otorga recursos al usuario cuando su calidad instantánea de calidad de canal es mayor a
su promedio relativo en el tiempo. La ecuación que describe el comportamiento del planificador es
mostrada a continuación, Tasa lograda en bps para el usuario i:
[3]
Donde M es el esquema de codificación de modulación para el usuario i en el bloque de recurso
k, de acuerdo al modelo de adaptivo para modulación y codificación. Y S es el tamaño del bloque
de transporte in bits, finalmente t es la ventana de tiempo TTI. La tasa de bit garantizada por el
bloque asignado en el tiempo t es determinada por la siguiente ecuación:
[4]
Donde T es el desempeño el caudal percibido por el usuario j. De acuerdo con el algoritmo de
planificación, un usuario puede ser asignado para diferentes grupos de bloques de recurso, los
cuales pueden ser adyacentes o no, dependiente de la condición actual del panal y el último
desempeño del caudal T, el cual es definido por la siguiente ecuación:
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
11
[5]
Donde alpha es la constante de tiempo (en número de sub-franjas) de la media móvil
exponencial, y T barra es el caudal alcanzado por el usuario j en el sub-franja t. T barra es medido
de acuerdo con el siguiente procedimiento:
[6]
Primero es calculado el esquema de codificación de modulación M para el usuario j, y luego se
determina el número de grupos asignados de bloques de recursos usados por el usuario j.
HARQ (hybrid Automatic repeat request)
El modelo hibrido de retrasmisión de paquetes errados, implementa la redundancia incremental
de bits para la transmisión exitosa de un paquete, con múltiples protocolos stop-and-wait para
habilitar el flujo continuo de datos. Es posible configurar los modelos tipo I y II en el LTE release
8, donde el tipo I contiene el código de detección de errores y el FEC (Forward error-correcting
coding). Y el tipo II permite alternar entre mensajes el código de detección de errores y solo los bits
de paridad del FEC. El tipo I puede llegar a triplicar la cantidad de bits en el mensaje, mientras el
tipo II es una optimización de esta redundancia. Para efectos de este trabajo el HARQ está
inhabilitado en todos los escenarios, ya que se busca estudiar el tráfico real y desempeño de la red.
Aplicación de Voz sobre IP
La aplicación on/off para el modelo de VoIP está definida por los siguientes parámetros, el
modelo de ajuste para tráfico requerido por cada usuario es el siguiente:
Tiempo medio exponencial en el estado on: 0.352 segundos.
Tiempo medio exponencial en el estado off: 0 .650 segundos.
Tasa de generación de bits por la aplicación: 52 Kbps.
Tamaño del paquete transmitido: 136 Bytes.
Parámetros de desempeño VoIP
Los parámetros de desempeño de calidad de servicio para cada tipo de servicio, como ya se
nombraron en la capacidad de voz para una celda, son mostrados en la siguiente tabla, para el objeto
de este documento se toma el retardo de paquete y tasa de perdida de erros en paquete de la primera
fila de la tabla.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
12
Tabla 6. Estándar de calidad de servicio para LTE 8.
CQI Tipo de
recurso
prioridad Retardo de
paquete
(ms)
Tasa de
perdida de
paquete
Ejemplo de servicio
1 GBR 2 100 10-2 Voz
2 GBR 4 150 10-3 Llamada con video
3 GBR 5 300 10-6 video
4 GBR 3 50 10-3 juegos en tiempo real
5 Non-GBR 1 100 10-6 IMS señalización
6 Non-GBR 7 100 10-3 Juegos interactivos
7 Non-GBR 6 300 10-6 Video
8 Non-GBR 8 300 10-6 navegación
9 Non-GBR 9 300 10-6 navegación
2.2. Módulos y clases del simulador NS3 de interés
El modulo LENA del software NS3 presenta modelos de simulación mediante lo modelos de
LTE y EPC tal como se muestra a continuación [2]:
Figura 7.Esquema de la red mediante los módulos de NS3.
El modelo de LTE incluye los protocolos de radio RRC, PDCP, RLC, MAC, PHY. Estas
entidades residen enteramente dentro de los nodos de eNB y UE.
El modelo de EPC incluye las interfaces de red, protocolos y entidades de núcleo. Estas
entidades y protocolos residen dentro de los nodos SGW, PGW y MME, y parcialmente
dentro de los nodos eNB.
El modelo de LTE ha sido diseño para soportar la evaluación de los siguientes aspectos de los
sistemas LTE:
Manejo de recursos de radio.
Planificación de paquetes mediante parámetros de calidad de servicio.
Coordinación de interferencia entre celdas.
Acceso a espectro dinámico.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
13
Se presenta a continuación el plano de protocolos integrados en los modelos LTE-EPC en el
simulador NS3. En rojo se resalta las capas de los protocolos para LTE comunicación de radio,
entre los nodos de usuario y estación base, los cuales son objeto de este documento.
Figura 8. Arquitectura de clases en NS3 para la red LTE.
PDCP: Packet data convergence protocol. Entrega capas PDU y PCCP según RLC.
RLC: Radio Link Control. Detección de errores.
MAC: Medium Access control. Mapeo entre canales lógicos y de transporte, información
de planificación, HARQ
PHY: Physical layer. Detección de errores en canales de transporte, ponderación de
potencia de canales, modulación y demodulación de canales físicos.
2.2.1. Aplicación on/off
La aplicación permite generar tráfico desde un nodo de acuerdo a un patrón on/off. El generador
de tráfico tiene como entradas determinadas los tiempos medios exponenciales de estado on/off
(onTime y offTime) que se escogen aleatoriamente de acuerdo a la distribución exponencial
mostrada en la ecuación (YYY). De la misma forma recibe parámetros de tamaño de paquete
(PacketSize), tasa de datos en estado on (DataRate), el tipo de protocolo que es usado (Protocol),
entre otras. 𝑂𝑛𝑇𝑖𝑚𝑒 = 𝛼𝑒−𝛼𝑡 , 𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑟𝑜 = 1/𝛼
𝑂𝑓𝑓𝑡𝑖𝑚𝑒 = 𝛽𝑒−𝛽𝑡, 𝑝𝑎𝑟𝑎𝑚𝑒𝑡𝑟𝑜 = 1/𝛽
[7]
La clase correspondiente es ns3::OnOffApplication, los atributos mencionados son los
modificados en código de simulación de acuerdo a los cálculos correspondientes a la sección
anterior.
2.2.2. Modelo de pérdidas de propagación para construcciones hibrido
Con calse ns3::HybridBuildingsPropagationLossModel es posible modelar diferentes modelos
de evaluación de pérdidas de propagación desde 200 a 2600 MH, en diferentes entornos y con
construcción con la posibilidad de realizar comunicaciones indoor y outdoor. Mediante este
modelo es posible evaluar entornos: urbanos, suburbanos y áreas abiertas. Además de poder
evaluar simular comunicaciones de corto y largo alcance. Es posible ubicar nodos con respecto a
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
14
construcciones: indoor, outdoor, hibrido mediante perdidas de penetración en las construcciones.
Este modelo funciona únicamente con el modelo ns3 MobilityBuildingInfo (modelo que permite el
manejo de escenarios indoor (casas, offcinas, etc) y outdoor.
HybridBuildingPropagationLossModel.
Como su nombre lo indica, la principal característica de este modelo de propagación creado para
simular escenarios LTE es combinar varios modelos de propagación con el objetivo de simular
varias clases de escenarios como rural, urbano, suburbano en una misma simulación. El modelo
tiene en cuenta el tipo de edificios y el modo de comunicación (Outdoor- Indoor). Esta clase modela
las perdidas por propagación en el medio mediante los modelos de propagación ITU-R. 1411, ITU-
R. 1238 y COST 231. Estos modelos pueden ser aplicados a escenarios urbanos, suburbanos y
semiurbanos y tamaño de metrópoli, mediana y pequeña. Estos modelos son aplicados según el
escenario, de los posible 11 señalados en la gráfica. Los atributos posibles de ingreso a la clase
corresponden a la frecuencia de propagación de la onda portadora, el entorno a simular, la posición
de los nodos con respecto a las edificaciones, las perdidas correspondientes a las pérdidas de
penetración en las edificaciones. El tamaño de la ciudad, el umbral de línea de vista y sin línea de
vista en ITU-R 1411 y la altura promedio de los edificios escenario a simular.
Figura 9. Modelos de propagación disponibles en la clase hibrida.
En la figura 9, se pueden apreciar los modelos de propagación para determinar las perdidas por
propagación mediante la clase HybridBuildingPropagationLossModel, en la figura los caminos
en rojo corresponden a modelos que consideran una distancia de propagación superior a 1km y los
caminos en negro corresponden a los modelos que no superan esta distancia.
Modelos para cuando la estación base y el usuario están fuera de una edificación:
Los modelos 1, 2, 3 corresponden a escenarios para los cuales tanto la estación base como el
usuario no están contenidos en edificaciones explícitamente en el modelo del escenario de ns3.
1: La estación base y el usuario tienen menor altura que el promedio de los edificios. La
distancia es mayor a 1000 mts. Las pérdidas usadas para este modelo son: ITUR-1411 entre
los nodos A y B.
2: La estación base o el usuario no tienen una altura menor que el promedio de los edificios.
La distancia es mayor a 1000 mts. Las pérdidas usadas para este modelo son: Okumura-
Hata entre los nodos A y B.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
15
3: La distancia entre los nodos es menor que 1000 mts. Las pérdidas usadas para este
modelo son: ITUR-1411 entre nodos A y B.
Modelos para cuando la estación base o el usuario están dentro de edificaciones:
Los modelos 4, 5, 6 corresponden a escenarios para los cuales uno de los nodos esta contenido
explícitamente en una edificación dentro del escenario de ns-3.
4: La estación base y el usuario están por debajo de la altura promedio de los edificios. La
distancia entre nodos es mayor a 1000 mts. Las pérdidas para este modelo son: ITUR 1411
entre A y B, más las perdías de la pared exterior entre los nodos A y B.
5: La estación base o el usuario no tienen una altura menor que el promedio de los edificios.
La distancia es mayor a 1000 mts. Las pérdidas para este modelo son: Okumura Hata entre
A y B, más las perdías de la pared exterior entre los nodos A y B.
6: La distancia entre los nodos es menor que 1000 mts. Las pérdidas para este modelo son:
ITUR 1411 entre A y B, más las perdías de la pared exterior entre los nodos A y B.
Modelos para cuando la estación base y el usuario están dentro de edificaciones:
Los modelos 7 y 8 corresponden a escenarios para los cuales los dos nodos están contenidos
explícitamente dentro de edificaciones dentro del escenario de ns-3.
7: La estación base y el usuario están contenidos en la misma edificación. Las pérdidas para
este modelo son: ITUR 1283 entre A y B, más las perdías de la pared interior entre los
nodos A y B.
8: La estación base y el usuario están contenidos en diferentes edificaciones. Las pérdidas
para este modelo son: ITUR 1411 entre A y B, más las perdías de la pared exterior entre los
nodos A y B.
Tabla 7. Algoritmo de selección de modelo de pérdidas por propagación en la clase hibrida.
A-B
-Obtiene posición de los nodos
-Obtiene altura de los
nodos -Obtiene la posición con
respecto a las
edificaciones -Obtiene la distancia
plana entre los nodos
A
OUTDOOR
B
ES
OUTDOOR
Distancia
>1000
A y B altura menor a altura promedio
ITUR 1411 (a,b)
A y B No menor a altura
promedio OkumuraHata (a,b)
Distancia <1000 ITUR 1411(a,b)
B
ES
INDOOR
Distancia
>1000
A y B altura menor a altura
promedio
ITUR 1411 (a,b) +
ExternalWallLoss(b) + HeightLoss(b)
A y B No menor a altura
promedio
OkumuraHata (a,b) +
ExternalWallLoss(b)
Distancia <1000 ITUR 1411 (a,b) +
ExternalWallLoss(b)
A
INDOOR
B
INDOOR
SAMEBUILDING ITUR1238(a,b) +
InternalWallLoss(a,b)
DIFFERENT
BUILDING
ITUR1411(a,b) + ExternalWallLoss(a) +
ExternalWallLoss(b)
Okumura-Hata model
Okumura-Hata expresa las pérdidas de propagación como:
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
16
𝐿𝑏 = 69,55 + 26.16 log(𝑓) − 13.82 log(ℎ𝑏) − 𝑎(ℎ𝑚) + (44.9 − 6.55log (ℎ𝑏))log (𝑑𝑚) [8]
Donde a(hm) es un factor de corrección que depende de la altura del móvil que se calcula como
sigue, Donde 1< hm < 10 mts.
o Para ciudades pequeñas y medianas.
𝑎(ℎ𝑚) = (1.1 log(𝑓) − 0.7)ℎ𝑚 − (1.56 log(𝑓) − 0.8) [9]
o Para ciudades grandes:
𝑎(ℎ𝑚) = {8.29((log(1.54ℎ𝑚))2) − 1.1 𝑠𝑖 𝑓 ≤ 200 𝑀𝐻𝑧
3.2(log(11.75ℎ𝑚))2 − 4.97 𝑠𝑖 𝑓 ≥ 400 𝑀𝐻𝑧 [10]
o Para áreas suburbanas:
𝐿𝑏 = 𝐿𝑏(𝑢𝑟𝑏𝑎𝑛) − 2 (log (𝑓
28))
2− 5.4 [11]
o Para áreas rurales o abiertas:
𝐿𝑏 = 𝐿𝑏(𝑢𝑟𝑏𝑎𝑛) − 4.78 log(𝑓)2 + 18.33 log(𝑓) − 40.94 [12]
Modelo COST 231
El modelo opera bajo los parámetros: Frecuencia portadora (fc) [30 -200 Mhz], Altura de la antena
de estación base (hb) [30 – 200 mts], Altura el equipo de usuario (hm) [1-10 mts] y Distancia de
transmisión (d) [1-20 km]. COST-Hata model, donde resuelve el parámetro Lb tal como se presenta
en la siguiente ecuación.
𝐿𝑏 = 𝐴 + 𝐵 log(𝑑) + 𝐶
𝐴 = 46.33 + 33.9 log(𝑓𝑐) − 13.28 log(ℎ𝑏) − 𝑎(ℎ𝑚) 𝐵 = 44.9 − 6.55 log(ℎ𝑏)
𝐶 = {0 𝑝𝑎𝑟𝑎 𝑎𝑟𝑒𝑎𝑠 𝑠𝑢𝑏𝑢𝑟𝑏𝑎𝑛𝑎𝑠 𝑦 𝑐𝑖𝑢𝑑𝑎𝑑𝑒𝑠 𝑚𝑒𝑑𝑖𝑎𝑛𝑎𝑠
3 𝑝𝑎𝑟𝑎 𝑎𝑟𝑒𝑎𝑠 𝑚𝑒𝑡𝑟𝑜𝑝𝑜𝑙𝑖𝑡𝑎𝑛𝑎𝑠 [13]
Modelo ITU-R 1411
En línea de vista – LoS
Este modelo establece límites entre los posibles valores que se pueden obtener de las siguientes
ecuaciones.
El limite por debajo
𝐿𝐿𝑜𝑆 = 𝐿𝑏𝑝 +
{
20 log (
𝑑
𝑅𝑏𝑝) 𝑝𝑎𝑟𝑎 𝑑 ≤ 𝑅𝑏𝑝
40 log (𝑑
𝑅𝑏𝑝) 𝑝𝑎𝑟𝑎 𝑑 > 𝑅𝑏𝑝
𝑅𝑏𝑝 =4ℎ𝑏ℎ𝑚 ʎ
[14]
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
17
El limite por encima
𝐿𝐿𝑜𝑆,𝑢 = 𝐿𝑏𝑝 + 20 + {25 log (
𝑑
𝑅𝑏𝑝) 𝑝𝑎𝑟𝑎 𝑑 ≤ 𝑅𝑏𝑝
40 log (𝑑
𝑅𝑏𝑝) 𝑝𝑎𝑟𝑎 𝑑 > 𝑅𝑏𝑝
[15]
Lbp es el valor base para las pérdidas de transmisión en el punto crítico.
𝐿𝑏𝑝 = ‖20 log (ʎ
8𝜋ℎ𝑏ℎ𝑚) ‖ [16]
Sin línea de vista -NLoS
UHF modelo valido para el siguiente rango de valores hb [4-50 mts], hm [1-3 mts], frecuencia [800
-2000 MHz], distancia [20-5000 mts]. La propagación sobre el promedio del altura de las
edificaciones en la cuidad.
𝐿𝑁𝐿𝑜𝑆1 = {𝐿𝑏𝑓 + 𝐿𝑟𝑡𝑠 + 𝐿𝑚𝑠𝑑 𝑝𝑎𝑟𝑎 𝐿𝑟𝑡𝑠 + 𝐿𝑚𝑠𝑑 > 0
𝐿𝑏𝑓 𝑝𝑎𝑟𝑎 𝐿𝑟𝑡𝑠 + 𝐿𝑚𝑠𝑑 ≤ 0 [17]
Las pérdidas en espacio libre:
[18]
El término Lrts describe el acople de ondas de propagación sobre los múltiples caminos en las calles
donde la estación móvil está localizada. El modelo también tiene en cuenta el ancho de la calle y su
orientación.
[19]
Para el cálculo de Lmsd es comparado a la distancia l sobre la cual las construcciones se extienden.
Calculo de Lms cuando l > ds.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
18
[20]
Calculo de Lmsd cuando l < ds.
[21]
Propagación dentro de corredores entre edificios
[22]
Modelo ITUR 1238
Las pérdidas por trasmisión indoor se calculan mediante la ecuación presentada a continuación,
la cual está programada de acuerdo al escenario simulado.
[23]
En la ecuación anterior las variables , N corresponde al coeficiente de perdidas presentado en la
tabla 7, f corresponde a la frecuencia de transmisión, d corresponde a la distancia, Lf corresponde
a las perdidas asociadas a el cambio de piso y n corresponde al número de pisos entre los nodos de
comunicación.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
19
Tabla 8. Coeficientes de pérdidas, N, para propagación indoor
Frecuencia Residencial Oficinas Comercio
900 MHz - 33 20
1,2 - 1,3 GHz - 32 22
1,8 - 2 GHz 28 30 22
2,4 GHz 28 30 -
3,5 GHz - 27 -
4 GHz 30 28 22
5,2 GHz - 31 -
5,8 GHz - 24 -
60 GHz - 22 17
70 GHz - 22 -
Tabla 9 Desvanecimiento estadístico, desviación estándar (dB) para cálculo de perdidas indoor.
Frecuencia
(GHz)
Residencial Oficinas Comercial
1,8 - 2 8 10 10
3,5 - 8 -
5,2 - 12 -
5,8 - 17 -
Los atributos configurables para la clase HybridBuildingsPropagationLossModel son:
Frecuencia (Hz): rango de valores (200 -2600 MHz).
LossNlosThr (mts): umbral de punto de ruptura en distancia de línea de vista y punto de
línea de no vista.
Environment: tipo de entorno urbano, suburbano o áreas abiertas.
CitySize: Tres posibles ciudades pequeña, mediana y grande.
RoofTopLevel(mts): altura promedio de los edificaciones en la ciudad.
Los parámetros de todas las celdas a simular corresponden a la siguiente tabla de los valores
estándar para la compilación del modelo.
Tabla 10. Parámetros de celda
Macro celda – Urbana
Potencia de transmisión 46 dB
Altura de estación base 35 mts
Figura de ruido ante 9 dB
Radio celda 1 km
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
20
Tabla 11. Parámetros del modelo de propagación.
Modelo de propagación hibrido
Ruptura de línea de vista 50 mts
Altura promedio edificaciones 15 mts
Shadow fading Outdoor LogNormal σ=0
Shadow fading Indoor LogNormal σ=1
Shadow fading ExtWalls LogNormal σ=1.5
Street Width 20 mts
Configuración de la clase ns-3 HybridPropagationLossModel:
Figura 10. Líneas de propagación del modelo de propagación.
Tabla 12. Modelos de simulación de tipo de escenario.
Entorno Descripción y degradaciones de la propagación significativas
Urbano Valle urbano, caracterizado por avenidas con edificios de varios pisos
La altura de los edificios reduce la probabilidad de una contribución significativa de la
propagación que pasa por encima de los tejados
Las hileras de edificios altos hacen posible la existencia de largos retardos de trayecto.
El gran número de vehículos en movimiento en la zona actúan como reflector, lo que añade
un efecto doppler aleatorio
Urbano de
construcción
baja/suburbano
Amplias avenidas
La altura de los edificios suele ser menor a tres pisos
Pueden producirse efectos de pérdidas adicionales debido a vehículos en tránsito.
Zona residencial Construcciones de uno o dos pisos
Posible de vegetación densa o ligera
Rural Pequeñas casas
Influencia de la altura del terreno
2.2.3. Planificador MAC Scheduler.
El planificador proportional Fair ns3::PfFfMacScheduler esta implementado para recibir como uno
de sus parametros un valor lógico HarqEnable, el cual por defecto está activo en tipo I, para efecto
de los escenario a simular este valor es falso.
Config::SetDefault ("ns3::PfFfMacScheduler::HarqEnabled", BooleanValue (false));
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
21
2.2.4. EARFCN
Hace parte de los atributos de la clase ns3::LteSpectrumModelId::earfcn para el cual se realiza la
modificación de este valor para el downlink y uplink y se instala en todos los nodos de los
escenarios (canales EUTRA ). El ancho de banda para el downlink y el uplink de la misma forma
se pueden cambiar en la misma clase LteSpectrumModelId::bandwidth (para efectos de simulación
este valor está asignado de la siguiente manera: 6 -> 1.4 MHz, 15 -> 3 MHz, 25 -> 5 MHz, 50-> 10
MHz, 75 -> 15 MHz, 100 -> 20 MHz ). Para el escenario de simulación se escoge 50. y para la
femtoceldas se escoge 6.
Tabla 13. Valores de transmisión.
Escenario
Tipo de ambiente Macrocelda urbana, largecity
Frecuencia 2.5 GHz banda 7 EARFCN 2750
Ancho de Banda 10 MHz – 55 RBs
2.2.5. Modo de transmisión
En la clase ns3::LteEnbRrc::m_defaultTransmissionMode se escoge el modo de comunicación
SISO. La clase presenta el atributo DefaultTransmissonMode, el valor por defecto para el modo de
transmisión es de 0, este valor corresponde al modelo SISO. Los demás atributos para efectos de
simulación de esta clase de escogen por defecto para todo los nodos de los escenarios.
2.2.6. Construcciones
La clase ns3::MobilityBuildingInfo presenta parámetros de entrada para la introducción de
nodos dentro de una construcción, hace parte de los atributos de cada uno de los nodos instalados
en los escenarios, esta clase no es necesaria para el escenario 1.
Tabla 14. Parámetros de las edificaciones en el modelo.
Modelo de Edificaciones
Superficie externa Concreto con ventana (7dB)
Coeficiente de pérdidas interno 5 dB
Largo 100 mts
Ancho 100 mts
Alto 15 mts
Cuartos en X 1
Cuartos en Y 1
Numero de edificios 3
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
22
3. Diseño estadístico de experimento
Intervalos de confianza para el modelo de distribución normal del error en las mediciones
tenemos las siguientes ecuaciones para definir intervalos de confianza.
𝜇 𝜖 �̅� ∓ 𝑧𝛼2 𝜎
√𝑛
[24]
Donde el intervalo de confianza está definido como 1-α. El margen de error sobre la medición se
tiene al despejar de la ecuación [24] el error de muestreo está definido por la ecuación [25]. Para
los resultados se espera un intervalo de confianza de la media del 99%.
𝑀𝑎𝑟𝑔𝑒𝑛 𝑑𝑒 𝑒𝑟𝑟𝑜𝑟 𝑝𝑒𝑟𝑚𝑖𝑡𝑖𝑑𝑜 = 𝑧𝛼2 𝜎
√𝑛
𝑒 𝑚𝑢𝑒𝑠𝑡𝑟𝑒𝑜 = 𝜎
√𝑛
[25]
3.1. Tiempo de simulación y cantidad de semillas para cada experimento
Se asumen que todas los resultados de los experimentos presentan una distribución
normal con media y desviación estándar desconocidas, mediante el intervalo de confianza
es posible calcular la presicion del resultado y su posible valor dentro de un rango donde el
resultado real existe. La clase NS-3 seedManager permite establecer el nurmo de
experimentos y semillas experimentales para generar una serie de resultados independientes
e idénticamente distribuidos con el objetivo de obtener los valores de confianza dadas las
ecuaciones de la sección anterior.
Dada la cantidad de usuarios se pleantea el experimento se realizan 10 corridas del
experimento por 120 segundos de simulación, lo que implica una desviación estándar de los
datos con cumplen con un error de muestreo aproximado al 0,01% sobre todos los datos.
4. Escenarios de simulación
Los escenarios que componen el estudio de sensibilidad son los correspondientes a las figuras
11, 12 y 13 de donde es posible observar las topologías correspondientes a cada escenario. Todos
los usuarios tienen una posición fija en la celda.
4.1. Escenario base
Como ya se ha explicado en secciones anteriores el escenario base corresponde al
escenario en el cual ninguno de los nodos de usuario es indoor en la macro celda, este
escenario tiene un ancho de banda de 10 MHz, la potencia de la antena de transmisión es de
46 dB, y todos los nodos presentan un trafico en el link de subida y bajada debidos a una
aplicación on/off mediante protocolo UDP para VoIP.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
23
Figura 11. Topología del escenario base.
4.2. Escenario con edificaciones
Como ya se ha explicado en secciones anteriores el escenario con edificaciones
corresponde al escenario en el cual aproximandamente el 40% de los nodos de usuario es
indoor en la macro celda, este escenario tiene un ancho de banda de 10 MHz, la potencia de
la antena de transmisión es de 46 dB, y todos los nodos presentan un trafico en el link de
subida y bajada debidos a una aplicación on/off mediante protocolo UDP para VoIP. Las 3
edificaciones presentan un modelo de perdidas asociado al de concreto con ventana y las
edificaciones contiene cada una 10 usuarios.
Figura 12. Topología del escenario con edificaciones.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
24
4.3. Escenario con femtoceldas
Como ya se ha explicado en secciones anteriores el escenario con edificaciones
corresponde al escenario en el cual aproximandamente el 40% de los nodos de usuario es
indoor en la macro celda, este escenario tiene un ancho de banda de 5 MHz , la potencia de
la antena de transmisión es de 46 dB, y todos los nodos presentan un trafico en el link de
subida y bajada debidos a una aplicación on/off mediante protocolo UDP para VoIP. Las 3
edificaciones presentan un modelo de perdidas asociado al de concreto con ventana y las
edificaciones contiene cada una 10 usuarios. Adicinalmente cada edificación presenta una
femtocelda la cual tiene asignado un ancho de banda de 1.4 MHz y transmisión por el
canal 7 correspondiente a 700 MHz.
Figura 13. Topología de escenario con femto celdas.
5. Resultados
Los resultados de las simulaciones corresponden a las métricas tal como se establecen en el
numeral siguiente.
5.1. Metodos de analisis de archivos resultados del simulador
Todos los archivos fueron analisados en Excel siguiendo las siguientes ecuaciones dados los datos
arojados por las distintas capas simuladas en cada uno de los escenarios, se presentan acontinuacion
las ecuación para establecer los parametros de desempeño como trafico promedio, jitter promedio,
retardo promedio, porcentaje de paquetes perdidos [2].
𝑡𝑟𝑎𝑓𝑖𝑐𝑜 𝑝𝑟𝑜𝑚𝑒𝑑𝑖𝑜 =(𝑁𝑢𝑚𝑒𝑟𝑜 𝑑𝑒 𝑅𝑥𝐵 𝑥 8 )
𝑠𝑒𝑔𝑢𝑛𝑑𝑜𝑠
[26]
𝑅𝑒𝑡𝑎𝑟𝑑𝑜 𝑝𝑟𝑜𝑚𝑒𝑑𝑖𝑜 =∑𝑟𝑒𝑡𝑎𝑟𝑑𝑜 𝑖
𝑅𝑥𝑃
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
25
[27]
𝐽𝑖𝑡𝑡𝑒𝑟 𝑝𝑟𝑜𝑚𝑒𝑑𝑖𝑜 =(∑𝑟𝑒𝑡𝑎𝑟𝑑𝑜 𝑖 (𝑠𝑒𝑔 𝑖 ) − 𝑟𝑒𝑡𝑎𝑟𝑑𝑜 𝑖(𝑠𝑒𝑔 𝑖 − 1))
𝑅𝑥𝐵
[28]
𝑝𝑒𝑟𝑑𝑖𝑑𝑎 𝑑𝑒 𝑝𝑎𝑞𝑢𝑒𝑡𝑒𝑠 = 𝑇𝑥𝑃 − 𝑅𝑥𝑃 [29]
𝑝𝑟𝑜𝑐𝑒𝑛𝑡𝑎𝑗𝑒 𝑑𝑒 𝑝𝑒𝑟𝑑𝑖𝑑𝑎𝑠 𝑑𝑒 𝑝𝑎𝑞𝑢𝑒𝑡𝑒𝑠 = 𝑝𝑒𝑟𝑑𝑖𝑑𝑎 𝑑𝑒𝑝𝑎𝑞𝑢𝑒𝑡𝑒𝑠
𝑇𝑥𝑃
[30]
Los archivos de resultados arrojados por el simulador presentan la siguiente disposición de datos
dada la capa simulada según el intervalo de tiempo por usuario. Se presenta acontinuacion el orden
y significado de cada uno de estos datos.
5.1.1. Downlink signal to noise ratio (DlRsrpSinrStats).
CellId: Identificador de celda.
IMSI: Indetificador de equipo de usuario.
Rsrp: Valor de señal recibida.
Sinr: Relacion de señal a ruido e interferencia.
5.1.2. Donwlink packet data convergence protocol (DlPdcpStats)
nTxPDUs: numero de PDUs transmitidos.
nRxPDUs: numero de PDUs recibidos.
PduSize: Tamaño de PDUs.
Start and end time: tiempos de comienzo y terminación en paso de 0.25 s.
5.1.3. Downlink médium acceso control (DlMacStats)
mcsTb1: Valor de MCS por UE para el Puerto de antena 0.
sizeTb1: Tamaño dl bloque de transporte para el puerto de antena 0.
mcsTb2: Valor de MCS por UE para el Puerto de antena 1, si es utilizado.
sizeTb2: Tamaño dl bloque de transporte para el puerto de antena 1.
Se realiza la corroboracion por estimación de canal mediante la ecuación de Shannon-Hartley,
la cual relación los parametros de ancho de banda, relación señal a ruido y eficiencia de espectro,
esto con el objetivo de verificar las tasas de datos alcanzables dada las posiciones de los usuarios en
la celda. La siguiente ecuación realiza esta relación, dado los parametros asignados a un ancho de
banda de 10 MHz.
𝐶 = 𝐵𝑊 𝑙𝑜𝑔2(1 + 𝑆𝐼𝑁𝑅)
[31]
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
26
Al considerar interferencia como una señal de ruido blanco gaussiano, y considerar la eficiencia
espectral como la relación entre C y el ancho de banda, y la potencia recibida como el factor entre la
eneria de bit y la tasa de transmisión de datos es posible expresar el índice de utilización de canal o
efciencia espectral como:
𝛾 ≤ 𝑙𝑜𝑔2 (1 +𝛾𝐸𝑏
𝑁0)
[32]
Donde 𝛾 corresponde la utilización del ancho de banda, relación entre la tasa de transmisión y el
ancho de banda, Eb es la energía de bit, No es la densidad de potencia espectral la cual es el
producto de la constante de boltzman y la temperatura en grados kelvin.
Figura 14. Eficiencia de canal dada relacion señal a ruido.
5.2. Estudio de desempeño del escenario base
El objetivo del estudio de trafico del escanrio base fue determinar la cantidad máxima de
usuarios que se pueda atender dada la configuración de la celda. Una vez sen obtiene este numero
de usuarios se procede a realizar el estudio de sensibilidad de trafico sobre los escenarios que
incluyen nodos de usuario indoor y femto celdas.
Dadas la figuras 14, 15 y 16 y los valores de retardo, tráfico, jitter y perdida de paquetes se puede
observar que el limite de usuarios para cumplir con los parámetros minimos de calidad de servicio
están determinado por el retardo en mmilisegundos de los paquetes transmitidos, ya que en este
valor se alcanza el máximo retardp permitido para la aplicación de voz sobre IP y por lo tanto se
toman 80 usuarios para realizar los análisis de desempeño de la red posteriores.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
27
Figura 15. Retardo vs número de usuarios escenario base.
Figura 16. Trafico ofrecido por usuario vs número de usuarios.
Figura 17. Jitter vs numero de usuarios.
5.3. Estudio espectro en cada escenario
En las figuras 17, 18 y 19 se puede observar la relación señal a ruido de los diferentes
escenarios dadas las configuraciones de los mismos. Se puede observar a su vez que los
modelos de propagación en los escenarios no se ajustan suavemente conforme se realiza el
cálculo de desvanecimiento.
0
100
200
300
5 15 30 45 60 80
Re
tard
o (
ms)
# usuarios
134
135
136
137
138
5 15 30 45 60 80Traf
ico
kb
ps
po
r u
suar
io
# usuarios
0
5
10
15
20
5 15 30 45 60 80
Jitt
er
(m
s)
# usuarios
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
28
Figura 18. SINR escenario base 2.5 GHz.
Figura 19. SINR escenario con edificaciones 2.5 GHz.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
29
Figura 20. SINR de femto celdas en escenario con edificaciones 700 MHz
En la figura 19 se presenta únicamente la relación señal a ruido de las femtoceldas con una
frecuencia de 700 Mhz y anchos de banda de 1.4 MHz, esta figura conjutno a la figura 18
conforman la traza de relación señal a ruido dado que se deben sobre poner ya que son trazas de
canal en diferentes frecuencias de operación, 2.5 GHz y 700 MHz. Se puede observar en la figura
que presenta una mejor cobertura que los escenarios base y con edificaciones en cuento a potencia
de transmisión, sin embargo los anchos de banda son más reducidos 5 MHz y 1.4 MHz en
comparación a los escenarios base y con edificaciones.
5.4. Estudio de sensibilidad de trafico de escenario de los tres escenarios
El estudio de sensibilidad presenta la comparación de los valores de los parámetros de desempeño
del sistema entre los tres escenarios supuestos para este trabajo, en las figuras 20 – 26 se pueden
observar la comparación de las matricas por cada escenario.
Figura 21. Retardo dependiendo del escenario. .
0
100
200
300
400
Base edificaciones Femto celdas
Re
tard
o (
ms)
Escenario
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
30
Figura 22. Jitter depediendo del escenario.
Figura 23. Eficiencia espectral dependiendo el escenario simulado.
Figura 24. Asignacion de trafico dado el CQI de los usuarios..
0
5
10
15
20
Base edificaciones Femto celdas
Jitt
er
(ms)
Escenario
0
0,5
1
1,5
Base edificaciones Femto celdas
Efic
ien
cia
esp
ect
ral
bp
s/H
z
Escenario
0
2
4
6
8
10
12
14
16
Nu
me
ro d
e u
suar
ios
decil
Base
Edificaciones
Femto celdas
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
31
Figura 25. Trafico ofrecido por usuario dependiendo del escenario.
Figura 26. Capacidad de canal promedio dependiendo del escenario.
Figura 27. Porcentaje de pérdidas de paquetes dependiendo el escenario.
0
50
100
150
Base edificaciones Femto celdas
Traf
ico
kb
ps
po
r u
suar
io
Escenario
0
5
10
15
20
Base edificaciones Femto celdas
Cap
acid
ad d
e c
anal
p
rom
ed
io (
Mb
ps)
Escenario
0,00%
2,00%
4,00%
6,00%
8,00%
10,00%
Base edificaciones Femto celdasPo
rce
nta
je d
e p
erd
ida
de
paq
ue
tes
Escenario
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
32
En la tabla 15 se presenta los valores se desempeño de los escenarios simulados, valores que
corresponden a las figuras anterioremente presentadas. De los cuales se puede resaltar que la
configuración que presenta un mejor desempeño es la referente a la utilización de femto celdas, ya
que presenta mejoras en todas las métricas de desempeño consideradas.Aun cuando la
configuración base presenta las métricas adecuadas para la prestación de servicio asginado en la
simulación.
Esto es debido a que dada la aplicación asignada a los usuarios presento mas sensibilidad a la
potencia transmitida sobre el ancho de banda del canal asignado, es por esta razón que es posible
modular y generar mayor trafico el cual no supera el permitido por el ancho de banda. Las perdidas
de paquetes debido modulaciones y falta de un protocolo harq son debidas a las perdidas por
propagación. De igual manera dada la tabla 15 es posible afirmar que la en la simulación de
usuarios indoor en edificaciones con distancias superiores a 500 mts de la estación base no
presentaban servicio y es por ello que los parámetros de desempeño para este escenario fue inferior
al escenario base y escenario con femtoceldas.
Tabla 15. Desempeño del sistema de los escenarios simulados, resultados
Parámetro de
desempeño
Jitter
(ms)
Perdida de
paquetes (%)
Trafico
ofrecido
(Mbps)
Retardo
promedio
(ms)
Eficiencia
espectral
(b/Hz)
Escenario 1 15 1.8% 11 200 1.2
Escenario 2 15 8% 10 300 1.1
Escenario 3 10 1.5% 15 150 1.4
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3
33
6. Conclusiones
Para áreas indoor la incorporación al modelo de una femto celda al sistema de la red LTE
simulada mostro ser una solución eficaz ante la deficiencia de servico de los nodos lejanos
y se comporobo la mejora de desempeño del sistema del trafico requerido por la
aplicación.
El analis de resultados de las simulaciones muestra el correcto funcionamiento del cálculo
de perdidas por desvanecimiento mediante la clase hibirda del modelo de propagación dado
el detallado modelamiento que incorpora la herramienta de simulación NS3.
El estudio del modulo LTE de NS3 permitiio la simulación de un escenario de
complejidad intermedia de una red a la cual fue posible extraer las matricas de
desempeño para la evaluación del servicio dada diferentes configuraciones de usuarios en el
entorno.
El protocolo UDP permitio la instalación a todos los usuarios de una aplicación on/off de
voz sobre IP para una taza de bit garantizada, lo que permitio simular un servicio
aproximado a una red real con su respectivo trafico requerido.
Dado que el simulador NS3 esta basdo en LTE release 8 permite multiples
implementaciónes tecnolgogicas propias del estandar tal como se presento en el
documento.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Referencias
1
7. REFERENCIAS [1] S. Sesia, “ Introduction and Bakcground” , in LTE The UMTS Long Term Evolution, From
Theory to Practice. S.Sesia. Wiley: United Kingdom, 2011. ( 1-23 pp.)
[2]S. Sesia, “ Network Architecture” , in LTE The UMTS Long Term Evolution, From Theory to
Practice. S.Sesia. Wiley: United Kingdom, 2011. ( 23-57 pp.)
[3]S. Sesia, “ Physical Layer for downlink” , in LTE The UMTS Long Term Evolution, From
Theory to Practice. S.Sesia. Wiley: United Kingdom, 2011. ( 121-150 pp.)
[4] LENA, User Manual. First Edition. NS-3. 2011. vailable in: http://lena.cttc.es/manual/lte-
design.html#
[5] LENA, Manual and documentation. First Edition. NS-3. 2011. vailable in:
http://lena.cttc.es/manual/lte-design.html#
[6] 3GPP. Technical Specification group radio accces network ; Evolved Universal terrestrial radio
acces (E-UTRA); Base estation radio transmission and reception. V80.0.8 (2007-2012). LTE
Release 8 http://www.qtc.jp/3GPP/Specs/36104-800.pdf.
[7] LTE Quick Reference, CQI. Recovered from WEB on November 24th, 2014. Available at:
http://www.sharetechnote.com/html/Handbook_LTE_CQI.html
[8] A Downlink SNR to CQI Mapping for Different Multiple Antenna Techniques in LTE.
International Journal of Information and Electronics Engineering, Vol. 2, No. 5, September 2012.
Recovered from WEB on November 24th, 2014. Available at: http://www.ijiee.org/papers/201-
X2020.pdf
[9] A Novel CQI Calculation Scheme in LTE\LTE-A Systems. Wireless Communications and
Signal Processing (WCSP), 2011 International Conference on 9-11 Nov. 2011. Recovered from
WEB on November 24th, 2014. Available at:
http://ieeexplore.ieee.org.ezproxy.uniandes.edu.co:8080/xpl/articleDetails.jsp?tp=&arnumber=6096
767&queryText%3DCQI+Calculation
[10] What is QAM - Quadrature Amplitude Modulation. Recovered from WEB on November 24th,
2014. Available at: http://www.radio-electronics.com/info/rf-technology-design/quadrature-
amplitude-modulation-qam/what-is-qam-tutorial.php
[11] Phase-shift keying (PSK). Recovered from WEB on November 24th, 2014. Available at:
http://searchnetworking.techtarget.com/definition/phase-shift-keying.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Referencias
2
[12] ITU, International Telecommunications Union, www.itu.int/itu-r.
[13] NGMN, ‘Next Generation Mobile Networks Beyond HSPA & EVDO – A white paper’,
www.ngmn.org, December 2006.
[14] J. H. Winters, ‘Optimum Combining in Digital Mobile Radio with Cochannel Interference’.
IEEE. Journal on Selected Areas in Communications, Vol. 2, July 1984.
[15] R. Price and P. E. Green, ‘A Communication Technique for Multipath Channels’ in
Proceedings of the IRE, Vol. 46, March 1958.
[16] Orange, China Mobile, KPN, NTT DoCoMo, Sprint, T-Mobile, Vodafone, and Telecom Italia,
‘R1-070674: LTE Physical Layer Framework for Performance Verification’, www.3gpp.org, 3GPP
TSG RAN WG1, meeting 48, St Louis, USA, February 2007.
[17] 3GPP Technical Report 25.814, ‘Physical Layer Aspects for Evolved UTRA’, www.3gpp.org.
[18] NGMN, ‘Next Generation Mobile Networks Radio Access Performance Evaluation
Methodology’,www.ngmn.org, June 2007.
[19] Ericsson, ‘R1-072578: Summary of Downlink Performance Evaluation’, www.3gpp.org, 3GPP
TSG RAN WG1, meeting 49, Kobe, Japan, May 2007.
[20] Nokia, ‘R1-072261: LTE Performance Evaluation – Uplink Summary’, www.3gpp.org, 3GPP
TSG RAN WG1, meeting 49, Kobe, Japan, May 2007.
[21] 3GPP Technical Report 25.913, ‘Requirements for Evolved UTRA (E-UTRA) and Evolved
UTRAN (E-UTRAN)’, www.3gpp.org.
[22] 3GPP Technical Specification 36.307, ‘Evolved Universal Terrestrial Radio Access (E-
UTRA); Requirements on User Equipments (UEs) supporting a release-independent frequency
band’, www.3gpp.org.
[23] 3GPP Technical Specification 36.306, ‘Evolved Universal Terrestrial Radio Access (E-
UTRA); User Equipment (UE) radio access capabilities’, www.3gpp.org.
[24] 3GPP Technical Specification 36.331, ‘Evolved Universal Terrestrial Radio Access (E-
UTRA); Radio Resource Control (RRC); Protocol specification’, www.3gpp.org.
[25] 3GPP Technical Spercification 36.321, ‘Evolved Universal Terrestrial Radio Access (E-
UTRA); Medium Access Control MAC protocol specification’, www.3gpp.org.
[26] ITU-R Report M.2134, ‘Requirements related to technical performance for IMT-Advanced
radio interface(s)’, www.itu.int/itu-r.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
1
8. ANEXOS
Código del escenario base PRIMER ESCENARIO // Jorge Leonardo Gómez Mora // Escenario base de simulación #include <ns3/lte-helper.h> #include <ns3/epc-helper.h> #include <ns3/ipv4-global-routing-helper.h> #include <ns3/core-module.h> #include <ns3/network-module.h> #include <ns3/mobility-module.h> #include <ns3/internet-module.h> #include <ns3/lte-module.h> #include <ns3/config-store-module.h> #include <ns3/buildings-module.h> #include <ns3/point-to-point-helper.h> #include <ns3/applications-module.h> #include <ns3/log.h> #include <iomanip> #include <ios> #include <string> #include <vector> // The topology of this simulation program is inspired from // 3GPP R4-092042, Section 4.2.1 Dual Stripe Model // note that the term "apartments" used in that document matches with // the term "room" used in the BuildingsMobilityModel #include "ns3/rng-seed-manager.h" using namespace ns3; NS_LOG_COMPONENT_DEFINE ("Zer0Scenario"); bool AreOverlapping (Box a, Box b) { return !((a.xMin > b.xMax) || (b.xMin > a.xMax) || (a.yMin > b.yMax) || (b.yMin > a.yMax)); } class FemtocellBlockAllocator { public: FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors); void Create (uint32_t n); void Create ();
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
2
private: bool OverlapsWithAnyPrevious (Box); Box m_area; uint32_t m_nApartmentsX; uint32_t m_nFloors; std::list<Box> m_previousBlocks; double m_xSize; double m_ySize; Ptr<UniformRandomVariable> m_xMinVar; Ptr<UniformRandomVariable> m_yMinVar; }; FemtocellBlockAllocator::FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors) : m_area (area), m_nApartmentsX (nApartmentsX), m_nFloors (nFloors), m_xSize (nApartmentsX*50), m_ySize (50) { m_xMinVar = CreateObject<UniformRandomVariable> (); m_xMinVar->SetAttribute ("Min", DoubleValue (area.xMin - 500 )); m_xMinVar->SetAttribute ("Max", DoubleValue (area.xMax - m_xSize)); m_yMinVar = CreateObject<UniformRandomVariable> (); m_yMinVar->SetAttribute ("Min", DoubleValue (area.yMin - 400)); m_yMinVar->SetAttribute ("Max", DoubleValue (area.yMax - m_ySize)); } void FemtocellBlockAllocator::Create (uint32_t n) { for (uint32_t i = 0; i < n; ++i) { Create (); } } void FemtocellBlockAllocator::Create () { Box box; uint32_t attempt = 0; do { NS_ASSERT_MSG (attempt < 100, "Too many failed attemtps to position apartment block. Too many blocks? Too small area?"); box.xMin = m_xMinVar->GetValue (); box.xMax = box.xMin + m_xSize; box.yMin = m_yMinVar->GetValue (); box.yMax = box.yMin + m_ySize; ++attempt;
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
3
} while (OverlapsWithAnyPrevious (box)); NS_LOG_LOGIC ("allocated non overlapping block " << box); m_previousBlocks.push_back (box); Ptr<GridBuildingAllocator> gridBuildingAllocator; gridBuildingAllocator = CreateObject<GridBuildingAllocator> (); gridBuildingAllocator->SetAttribute ("GridWidth", UintegerValue (1)); gridBuildingAllocator->SetAttribute ("LengthX", DoubleValue (50*m_nApartmentsX)); gridBuildingAllocator->SetAttribute ("LengthY", DoubleValue (50*2)); gridBuildingAllocator->SetAttribute ("DeltaX", DoubleValue (50)); gridBuildingAllocator->SetAttribute ("DeltaY", DoubleValue (50)); gridBuildingAllocator->SetAttribute ("Height", DoubleValue (3*m_nFloors)); gridBuildingAllocator->SetBuildingAttribute ("NRoomsX", UintegerValue (m_nApartmentsX)); gridBuildingAllocator->SetBuildingAttribute ("NRoomsY", UintegerValue (2)); gridBuildingAllocator->SetBuildingAttribute ("NFloors", UintegerValue (m_nFloors)); gridBuildingAllocator->SetAttribute ("MinX", DoubleValue (box.xMin + 50)); gridBuildingAllocator->SetAttribute ("MinY", DoubleValue (box.yMin + 50)); gridBuildingAllocator->Create (1); } bool FemtocellBlockAllocator::OverlapsWithAnyPrevious (Box box) { for (std::list<Box>::iterator it = m_previousBlocks.begin (); it != m_previousBlocks.end (); ++it) { if (AreOverlapping (*it, box)) { return true; } } return false; } void PrintGnuplottableBuildingListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } uint32_t index = 0; for (BuildingList::Iterator it = BuildingList::Begin (); it != BuildingList::End (); ++it) { ++index; Box box = (*it)->GetBoundaries (); outFile << "set object " << index << " rect from " << box.xMin << "," << box.yMin
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
4
<< " to " << box.xMax << "," << box.yMax << " front fs empty " << std::endl; } } void PrintGnuplottableUeListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } for (NodeList::Iterator it = NodeList::Begin (); it != NodeList::End (); ++it) { Ptr<Node> node = *it; int nDevs = node->GetNDevices (); for (int j = 0; j < nDevs; j++) { Ptr<LteUeNetDevice> uedev = node->GetDevice (j)->GetObject <LteUeNetDevice> (); if (uedev) { Vector pos = node->GetObject<MobilityModel> ()->GetPosition (); outFile << "set label \"" << uedev->GetImsi () << "\" at "<< pos.x << "," << pos.y << " left font \"Helvetica,4\" textcolor rgb \"grey\" front point pt 1 ps 0.3 lc rgb \"grey\" offset 0,0" << std::endl; } } } } void PrintGnuplottableEnbListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } for (NodeList::Iterator it = NodeList::Begin (); it != NodeList::End (); ++it) { Ptr<Node> node = *it; int nDevs = node->GetNDevices (); for (int j = 0; j < nDevs; j++) {
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
5
Ptr<LteEnbNetDevice> enbdev = node->GetDevice (j)->GetObject <LteEnbNetDevice> (); if (enbdev) { Vector pos = node->GetObject<MobilityModel> ()->GetPosition (); outFile << "set label \"" << enbdev->GetCellId () << "\" at "<< pos.x << "," << pos.y << " left font \"Helvetica,4\" textcolor rgb \"white\" front point pt 2 ps 0.3 lc rgb \"white\" offset 0,0" << std::endl; } } } } int main (int argc, char *argv[]) { // change some default attributes so that they are reasonable for // this scenario, but do this before processing command line // arguments, so that the user is allowed to override these settings Config::SetDefault ("ns3::UdpClient::Interval", TimeValue (MilliSeconds (1))); Config::SetDefault ("ns3::UdpClient::MaxPackets", UintegerValue (1000000)); Config::SetDefault ("ns3::LteRlcUm::MaxTxBufferSize", UintegerValue (10 * 1024)); CommandLine cmd; cmd.Parse (argc, argv); ConfigStore inputConfig; inputConfig.ConfigureDefaults (); // parse again so you can override input file default values via command line cmd.Parse (argc, argv); // the scenario parameters get their values from the global attributes defined above // Number of femtocell blocks uint32_t nBlocks = 0; // Number of femtocell blocks uint32_t nApartmentsX = 0; // Number of femtocell block along Xaxis bock uint32_t nFloors = 0; // Number of floors double HeighteNB = 35.0; // Height of eNB node in mts. double areaMarginFactor = 80;// Total users outdoor double homeUesHomeEnbRatio = 0.0; // Total UEs indoor per block double macroEnbTxPowerDbm = 46; // Power in dBm in eNB MACRO //double homeEnbTxPowerDbm = 10; // Power in dBm in HeNB femtocell uint16_t macroEnbDlEarfcn = 100;// Channel of download 38 // uint16_t homeEnbDlEarfcn = 100; // Channel of download 5 uint16_t macroEnbBandwidth = 100; // 20 MHz BW for MACRO // uint16_t homeEnbBandwidth = 15; // 3 MHZ BW for femto double simTime = 5.1; // Simultation time uint16_t srsPeriodicity = 160; // 160 to install up to 160 UEs uint16_t outdoorUeMinSpeed = 0; // COnstant position for the simulation uint16_t outdoorUeMaxSpeed = 0; uint16_t rngRun = 1; // Number of simulations for seed. For multiple independent events.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
6
Config::SetDefault ("ns3::LteEnbRrc::SrsPeriodicity", UintegerValue (srsPeriodicity)); // Re run the simulation as a sequencce of independent trials RngSeedManager::SetSeed (1); // Changes seed number. Experiment RngSeedManager::SetRun (rngRun); // Changes run number. Re run the seed this number. // Box for all the scenario Box macroUeBox; double ueZ = 1.5; macroUeBox = Box (-1000, 1000, -1000, 1000, ueZ, HeighteNB); // Block allocator for 3 buildings FemtocellBlockAllocator blockAllocator (macroUeBox, nApartmentsX, nFloors); blockAllocator.Create (nBlocks); // Number of UE for the scenario uint32_t nHomeEnbs = nBlocks; NS_LOG_LOGIC ("nHomeEnbs = " << nHomeEnbs); // User indoor uint32_t nHomeUes = homeUesHomeEnbRatio*nHomeEnbs; NS_LOG_LOGIC ("nHomeUes = " << nHomeUes); // User in the macro area outdoor uint32_t nMacroUes = areaMarginFactor; // Creation of the nodes //NodeContainer homeEnbs; //homeEnbs.Create (nHomeEnbs); NodeContainer macroEnb; macroEnb.Create (1); NodeContainer homeUes; homeUes.Create (nHomeUes); NodeContainer macroUes; macroUes.Create (nMacroUes); // Propagation loss model MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); Ptr <LteHelper> lteHelper = CreateObject<LteHelper> (); lteHelper->SetAttribute ("PathlossModel", StringValue ("ns3::HybridBuildingsPropagationLossModel")); // Values for Concrete and Window lteHelper->SetPathlossModelAttribute ("ShadowSigmaExtWalls", DoubleValue (0)); lteHelper->SetPathlossModelAttribute ("ShadowSigmaOutdoor", DoubleValue (1)); lteHelper->SetPathlossModelAttribute ("ShadowSigmaIndoor", DoubleValue (1.5)); // use always LOS model lteHelper->SetPathlossModelAttribute ("Los2NlosThr", DoubleValue (1e6)); lteHelper->SetSpectrumChannelType ("ns3::MultiModelSpectrumChannel"); //lteHelper->EnableLogComponents (); Config::SetDefault ("ns3::PfFfMacScheduler::HarqEnabled", BooleanValue (false));// False for disable HARQ protocol // Enable EPC helper Ptr<PointToPointEpcHelper> epcHelper;
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
7
NS_LOG_LOGIC ("enabling EPC"); epcHelper = CreateObject<PointToPointEpcHelper> (); lteHelper->SetEpcHelper (epcHelper); // Macro eNBs // Just one MacroCell Ptr<ListPositionAllocator> positionAlloc1 = CreateObject<ListPositionAllocator> (); positionAlloc1->Add (Vector (0.0,0.0, HeighteNB + ueZ)); mobility.SetPositionAllocator(positionAlloc1); mobility.Install (macroEnb); BuildingsHelper::Install (macroEnb); Config::SetDefault ("ns3::LteEnbPhy::TxPower", DoubleValue (macroEnbTxPowerDbm)); lteHelper->SetEnbAntennaModelType ("ns3::IsotropicAntennaModel"); lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (macroEnbDlEarfcn)); lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (macroEnbDlEarfcn + 18000)); lteHelper->SetEnbDeviceAttribute ("DlBandwidth", UintegerValue (macroEnbBandwidth)); lteHelper->SetEnbDeviceAttribute ("UlBandwidth", UintegerValue (macroEnbBandwidth)); NetDeviceContainer macroEnbDevs = lteHelper->InstallEnbDevice (macroEnb); // home UEs located in the same apartment in which there are the Home eNBs Ptr<PositionAllocator> positionAlloc = CreateObject<RandomRoomPositionAllocator> (); mobility.SetPositionAllocator (positionAlloc); mobility.Install (homeUes); BuildingsHelper::Install (homeUes); // set the home UE as a CSG member of the home eNodeBs lteHelper->SetUeDeviceAttribute ("CsgId", UintegerValue (1)); NetDeviceContainer homeUeDevs = lteHelper->InstallUeDevice (homeUes); // macro Ues NS_LOG_LOGIC ("randomly allocating macro UEs in " << macroUeBox << " speedMin " << outdoorUeMinSpeed << " speedMax " << outdoorUeMaxSpeed); positionAlloc = CreateObject<RandomBoxPositionAllocator> (); Ptr<UniformRandomVariable> xVal = CreateObject<UniformRandomVariable> (); xVal->SetAttribute ("Min", DoubleValue (macroUeBox.xMin)); xVal->SetAttribute ("Max", DoubleValue (macroUeBox.xMax)); positionAlloc->SetAttribute ("X", PointerValue (xVal)); Ptr<UniformRandomVariable> yVal = CreateObject<UniformRandomVariable> (); yVal->SetAttribute ("Min", DoubleValue (macroUeBox.yMin)); yVal->SetAttribute ("Max", DoubleValue (macroUeBox.yMax)); positionAlloc->SetAttribute ("Y", PointerValue (yVal)); Ptr<UniformRandomVariable> zVal = CreateObject<UniformRandomVariable> (); zVal->SetAttribute ("Min", DoubleValue (macroUeBox.zMin)); zVal->SetAttribute ("Max", DoubleValue (macroUeBox.zMax)); positionAlloc->SetAttribute ("Z", PointerValue (zVal)); mobility.SetPositionAllocator (positionAlloc); mobility.Install (macroUes); // Install the MUEs in the model BuildingsHelper::Install (macroUes); // Install the lte nodes NetDeviceContainer macroUeDevs = lteHelper->InstallUeDevice (macroUes);
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
8
// IP for all the nodes Ipv4Address remoteHostAddr; NodeContainer ues; Ipv4StaticRoutingHelper ipv4RoutingHelper; Ipv4InterfaceContainer ueIpIfaces; Ptr<Node> remoteHost; NetDeviceContainer ueDevs; // EPC is enable NS_LOG_LOGIC ("setting up internet and remote host"); // Create a single RemoteHost NodeContainer remoteHostContainer; remoteHostContainer.Create (1); remoteHost = remoteHostContainer.Get (0); InternetStackHelper internet; internet.Install (remoteHostContainer); // Create the Internet PointToPointHelper p2ph; p2ph.SetDeviceAttribute ("DataRate", DataRateValue (DataRate ("100Gb/s"))); p2ph.SetDeviceAttribute ("Mtu", UintegerValue (1500)); p2ph.SetChannelAttribute ("Delay", TimeValue (Seconds (0.010))); Ptr<Node> pgw = epcHelper->GetPgwNode (); NetDeviceContainer internetDevices = p2ph.Install (pgw, remoteHost); Ipv4AddressHelper ipv4h; ipv4h.SetBase ("1.0.0.0", "255.0.0.0"); Ipv4InterfaceContainer internetIpIfaces = ipv4h.Assign (internetDevices); // in this container, interface 0 is the pgw, 1 is the remoteHost remoteHostAddr = internetIpIfaces.GetAddress (1); Ptr<Ipv4StaticRouting> remoteHostStaticRouting = ipv4RoutingHelper.GetStaticRouting (remoteHost->GetObject<Ipv4> ()); remoteHostStaticRouting->AddNetworkRouteTo (Ipv4Address ("7.0.0.0"), Ipv4Mask ("255.0.0.0"), 1); // for internetworking purposes, consider together home UEs and macro UEs ues.Add (homeUes); ues.Add (macroUes); ueDevs.Add (homeUeDevs); ueDevs.Add (macroUeDevs); // Install the IP stack on the UEs internet.Install (ues); ueIpIfaces = epcHelper->AssignUeIpv4Address (NetDeviceContainer (ueDevs)); for (uint32_t u = 0; u < ues.GetN (); ++u) { //Ptr<Node> ueNode = ueNodes.Get (u); // Set IP Adress for all the users.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
9
// Set the default gateway for the UE Ptr<Ipv4StaticRouting> ueStaticRouting = ipv4RoutingHelper.GetStaticRouting (ues.Get (u)->GetObject<Ipv4> ()); ueStaticRouting->SetDefaultRoute (epcHelper->GetUeDefaultGatewayAddress (), 1); } // attachment (needs to be done after IP stack configuration) // using initial cell selection, to the enb with the strongest signal lteHelper->Attach (macroUeDevs); lteHelper->Attach (homeUeDevs); // EPC is enable , Setting Applications NS_LOG_LOGIC ("setting up applications"); // Install and start applications on UEs and remote host uint16_t dlPort = 10000; uint16_t ulPort = 20000; // randomize a bit start times to avoid simulation artifacts // (e.g., buffer overflows due to packet transmissions happening // exactly at the same time) Ptr<UniformRandomVariable> startTimeSeconds = CreateObject<UniformRandomVariable> (); startTimeSeconds->SetAttribute ("Min", DoubleValue (0)); startTimeSeconds->SetAttribute ("Max", DoubleValue (0.010)); // User protocol datagram ApplicationContainer clientApps; ApplicationContainer serverApps; Config::SetDefault ("ns3::UdpClient::Interval", TimeValue (MilliSeconds (10))); Config::SetDefault ("ns3::UdpClient::MaxPackets", UintegerValue (1000000)); for (uint32_t b = 0; b < ues.GetN (); ++b) { Ptr<Node> ue = ues.Get (b); Ptr<Ipv4StaticRouting> ueStaticRouting = ipv4RoutingHelper.GetStaticRouting (ue->GetObject<Ipv4> ()); ueStaticRouting->SetDefaultRoute (epcHelper->GetUeDefaultGatewayAddress (), 1); ++dlPort; ++ulPort; // ----------------------UDP app ------------------------- // Installing UDP DL app for UE //UdpClientHelper dlClientHelper (ueIpIfaces.GetAddress (b), dlPort); //clientApps.Add (dlClientHelper.Install (remoteHost)); PacketSinkHelper dlPacketSinkHelper ("ns3::UdpSocketFactory",InetSocketAddress (Ipv4Address::GetAny (), dlPort)); serverApps.Add (dlPacketSinkHelper.Install (ue)); // Installing UPS UL app for UE //UdpClientHelper ulClientHelper (remoteHostAddr, ulPort);
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
10
//clientApps.Add (ulClientHelper.Install (ue)); PacketSinkHelper ulPacketSinkHelper ("ns3::UdpSocketFactory",InetSocketAddress (Ipv4Address::GetAny (), ulPort)); serverApps.Add (ulPacketSinkHelper.Install (remoteHost)); // -------------------------- ON OFF app -------------- //On/Off Application Uplink OnOffHelper Donoffhelper ("ns3::UdpSocketFactory", InetSocketAddress (ueIpIfaces.GetAddress(b), dlPort)); //On/Off Application Downlink OnOffHelper Uonoffhelper("ns3::UdpSocketFactory" ,InetSocketAddress (Ipv4Address::GetAny (), ulPort)); //On/Off Config DOWNLINK Donoffhelper.SetAttribute ("PacketSize", UintegerValue(172)); //The size of packets sent in on state Donoffhelper.SetAttribute ("DataRate", DataRateValue(68800)); //The data rte in on state Donoffhelper.SetAttribute ("OnTime", StringValue ("ns3::ConstantRandomVariable[Constant=0.5]")); //duration of the 'On' state Donoffhelper.SetAttribute ("OffTime",StringValue ("ns3::ConstantRandomVariable[Constant=1.0]")); // duration of the 'Off' state //On/Off Config UPLINK Uonoffhelper.SetAttribute ("PacketSize", UintegerValue(172)); //The size of packets sent in on state Uonoffhelper.SetAttribute ("DataRate", DataRateValue(68800)); //The data rte in on state Uonoffhelper.SetAttribute ("OnTime", StringValue ("ns3::ConstantRandomVariable[Constant=0.5]")); //duration of the 'On' state Uonoffhelper.SetAttribute ("OffTime",StringValue ("ns3::ConstantRandomVariable[Constant=1.0]")); // duration of the 'Off' state // Install de dlPacket sink and the onoff application //serverApps.Add (Donoffhelper.Install (ue)); serverApps.Add (Uonoffhelper.Install (ue)); //clientApps.Add (Uonoffhelper.Install (ue)); clientApps.Add (Donoffhelper.Install (remoteHost)); //One bearer per user. // Bearer asignation //Ptr<EpcTft> tft = Create<EpcTft> (); // Traffic flow template //EpcTft::PacketFilter dlpf; // Filters packets associated //dlpf.localPortStart = dlPort; // with an EPS bearer //dlpf.localPortEnd = dlPort; //tft->Add (dlpf); //EpcTft::PacketFilter ulpf; //ulpf.remotePortStart = ulPort; //ulpf.remotePortEnd = ulPort; //tft->Add (ulpf); //EpsBearer bearer (EpsBearer::GBR_CONV_VOICE); //lteHelper->ActivateDedicatedEpsBearer (ueDevs.Get (b), bearer, tft); // Star time Time startTime = Seconds (startTimeSeconds->GetValue ()); serverApps.Start (startTime); clientApps.Start (startTime); } // End of FOR installation fo IP for every UE.
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
11
//-----To insert the buildings and ue consistent shadow model. BuildingsHelper::MakeMobilityModelConsistent (); // ----- GENERATE REM PrintGnuplottableBuildingListToFile ("0buildings.txt"); PrintGnuplottableEnbListToFile ("0enbs.txt"); PrintGnuplottableUeListToFile ("0ues.txt"); Ptr<RadioEnvironmentMapHelper> remHelper; remHelper = CreateObject<RadioEnvironmentMapHelper> (); remHelper->SetAttribute ("ChannelPath", StringValue ("/ChannelList/0")); remHelper->SetAttribute ("OutputFile", StringValue ("0Srem.out")); remHelper->SetAttribute ("XMin", DoubleValue (macroUeBox.xMin)); remHelper->SetAttribute ("XMax", DoubleValue (macroUeBox.xMax)); remHelper->SetAttribute ("YMin", DoubleValue (macroUeBox.yMin)); remHelper->SetAttribute ("YMax", DoubleValue (macroUeBox.yMax)); remHelper->SetAttribute ("Z", DoubleValue (ueZ)); remHelper->Install (); Simulator::Stop (Seconds (simTime)); //lteHelper->EnablePhyTraces (); lteHelper->EnableMacTraces (); lteHelper->EnableRlcTraces (); lteHelper->EnablePdcpTraces (); //Ptr<RadioBearerStatsCalculator> rlcStats = lteHelper->GetRlcStats (); //rlcStats->SetAttribute ("EpochDuration", TimeValue (Seconds (1.0))); //Ptr<RadioBearerStatsCalculator> pdcpStats = lteHelper->GetPdcpStats (); //pdcpStats->SetAttribute ("EpochDuration", TimeValue (Seconds (1.0))); Simulator::Run (); //GtkConfigStore config; //config.ConfigureAttributes (); lteHelper = 0; Simulator::Destroy (); NS_LOG_UNCOND ("Termino"); return 0; }
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
12
Código del escenario con edificaciones
SEGUNDO ESCENARIO #include <ns3/lte-helper.h> #include <ns3/epc-helper.h> #include <ns3/ipv4-global-routing-helper.h> #include <ns3/core-module.h> #include <ns3/network-module.h> #include <ns3/mobility-module.h> #include <ns3/internet-module.h> #include <ns3/lte-module.h> #include <ns3/config-store-module.h> #include <ns3/buildings-module.h> #include <ns3/point-to-point-helper.h> #include <ns3/applications-module.h> #include <ns3/log.h> #include <iomanip> #include <ios> #include <string> #include <vector> // The topology of this simulation program is inspired from // 3GPP R4-092042, Section 4.2.1 Dual Stripe Model // note that the term "apartments" used in that document matches with // the term "room" used in the BuildingsMobilityModel using namespace ns3; NS_LOG_COMPONENT_DEFINE ("ThirdScenario"); bool AreOverlapping (Box a, Box b) { return !((a.xMin > b.xMax) || (b.xMin > a.xMax) || (a.yMin > b.yMax) || (b.yMin > a.yMax)); } class FemtocellBlockAllocator { public: FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors); void Create (uint32_t n); void Create (); private: bool OverlapsWithAnyPrevious (Box); Box m_area; uint32_t m_nApartmentsX; uint32_t m_nFloors; std::list<Box> m_previousBlocks; double m_xSize; double m_ySize;
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
13
Ptr<UniformRandomVariable> m_xMinVar; Ptr<UniformRandomVariable> m_yMinVar; }; FemtocellBlockAllocator::FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors) : m_area (area), m_nApartmentsX (nApartmentsX), m_nFloors (nFloors), m_xSize (nApartmentsX*10 + 20), m_ySize (70) { m_xMinVar = CreateObject<UniformRandomVariable> (); m_xMinVar->SetAttribute ("Min", DoubleValue (area.xMin)); m_xMinVar->SetAttribute ("Max", DoubleValue (area.xMax - m_xSize)); m_yMinVar = CreateObject<UniformRandomVariable> (); m_yMinVar->SetAttribute ("Min", DoubleValue (area.yMin)); m_yMinVar->SetAttribute ("Max", DoubleValue (area.yMax - m_ySize)); } void FemtocellBlockAllocator::Create (uint32_t n) { for (uint32_t i = 0; i < n; ++i) { Create (); } } void FemtocellBlockAllocator::Create () { Box box; uint32_t attempt = 0; do { NS_ASSERT_MSG (attempt < 100, "Too many failed attemtps to position apartment block. Too many blocks? Too small area?"); box.xMin = m_xMinVar->GetValue (); box.xMax = box.xMin + m_xSize; box.yMin = m_yMinVar->GetValue (); box.yMax = box.yMin + m_ySize; ++attempt; } while (OverlapsWithAnyPrevious (box)); NS_LOG_LOGIC ("allocated non overlapping block " << box); m_previousBlocks.push_back (box); Ptr<GridBuildingAllocator> gridBuildingAllocator; gridBuildingAllocator = CreateObject<GridBuildingAllocator> (); gridBuildingAllocator->SetAttribute ("GridWidth", UintegerValue (1));
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
14
gridBuildingAllocator->SetAttribute ("LengthX", DoubleValue (100*m_nApartmentsX)); gridBuildingAllocator->SetAttribute ("LengthY", DoubleValue (100)); gridBuildingAllocator->SetAttribute ("DeltaX", DoubleValue (10)); gridBuildingAllocator->SetAttribute ("DeltaY", DoubleValue (10)); gridBuildingAllocator->SetAttribute ("Height", DoubleValue (15*m_nFloors)); gridBuildingAllocator->SetBuildingAttribute ("NRoomsX", UintegerValue (m_nApartmentsX)); gridBuildingAllocator->SetBuildingAttribute ("NRoomsY", UintegerValue (2)); gridBuildingAllocator->SetBuildingAttribute ("NFloors", UintegerValue (m_nFloors)); gridBuildingAllocator->SetAttribute ("MinX", DoubleValue (box.xMin + 10)); gridBuildingAllocator->SetAttribute ("MinY", DoubleValue (box.yMin + 10)); gridBuildingAllocator->Create (2); } bool FemtocellBlockAllocator::OverlapsWithAnyPrevious (Box box) { for (std::list<Box>::iterator it = m_previousBlocks.begin (); it != m_previousBlocks.end (); ++it) { if (AreOverlapping (*it, box)) { return true; } } return false; } void PrintGnuplottableBuildingListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } uint32_t index = 0; for (BuildingList::Iterator it = BuildingList::Begin (); it != BuildingList::End (); ++it) { ++index; Box box = (*it)->GetBoundaries (); outFile << "set object " << index << " rect from " << box.xMin << "," << box.yMin << " to " << box.xMax << "," << box.yMax << " front fs empty " << std::endl; } } void PrintGnuplottableUeListToFile (std::string filename)
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
15
{ std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } for (NodeList::Iterator it = NodeList::Begin (); it != NodeList::End (); ++it) { Ptr<Node> node = *it; int nDevs = node->GetNDevices (); for (int j = 0; j < nDevs; j++) { Ptr<LteUeNetDevice> uedev = node->GetDevice (j)->GetObject <LteUeNetDevice> (); if (uedev) { Vector pos = node->GetObject<MobilityModel> ()->GetPosition (); outFile << "set label \"" << uedev->GetImsi () << "\" at "<< pos.x << "," << pos.y << " left font \"Helvetica,4\" textcolor rgb \"grey\" front point pt 1 ps 0.3 lc rgb \"grey\" offset 0,0" << std::endl; } } } } void PrintGnuplottableEnbListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } for (NodeList::Iterator it = NodeList::Begin (); it != NodeList::End (); ++it) { Ptr<Node> node = *it; int nDevs = node->GetNDevices (); for (int j = 0; j < nDevs; j++) { Ptr<LteEnbNetDevice> enbdev = node->GetDevice (j)->GetObject <LteEnbNetDevice> (); if (enbdev) { Vector pos = node->GetObject<MobilityModel> ()->GetPosition (); outFile << "set label \"" << enbdev->GetCellId () << "\" at "<< pos.x << "," << pos.y << " left font \"Helvetica,4\" textcolor rgb \"white\" front point pt 2 ps 0.3 lc rgb \"white\" offset 0,0" << std::endl;
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
16
} } } } int main (int argc, char *argv[]) { // change some default attributes so that they are reasonable for // this scenario, but do this before processing command line // arguments, so that the user is allowed to override these settings Config::SetDefault ("ns3::UdpClient::Interval", TimeValue (MilliSeconds (1))); Config::SetDefault ("ns3::UdpClient::MaxPackets", UintegerValue (1000000)); Config::SetDefault ("ns3::LteRlcUm::MaxTxBufferSize", UintegerValue (10 * 1024)); CommandLine cmd; cmd.Parse (argc, argv); ConfigStore inputConfig; inputConfig.ConfigureDefaults (); // parse again so you can override input file default values via command line cmd.Parse (argc, argv); // the scenario parameters get their values from the global attributes defined above // Number of femtocell blocks uint32_t nBlocks = 3; // Number of femtocell blocks uint32_t nApartmentsX = 1; // Number of femtocell block along Xaxis bock uint32_t nFloors = 1; // Number of floors double HeighteNB = 35.0; // Height of eNB node in mts -1.5. double areaMarginFactor = 50;// Total users outdoor double homeUesHomeEnbRatio = 10.0; // Total UEs indoor per block double macroEnbTxPowerDbm = 46; // Power in dBm in eNB MACRO //double homeEnbTxPowerDbm = 10; // Power in dBm in HeNB femtocell uint16_t macroEnbDlEarfcn = 100;// Channel of download 38 // uint16_t homeEnbDlEarfcn = 100; // Channel of download 5 uint16_t macroEnbBandwidth = 100; // 10 MHz BW for MACRO // uint16_t homeEnbBandwidth = 15; // 3 MHZ BW for femto double simTime = 1.1; // Simultation time uint16_t srsPeriodicity = 160; // 160 to install up to 160 UEs uint16_t outdoorUeMinSpeed = 0; // COnstant position for the simulation uint16_t outdoorUeMaxSpeed = 0; Config::SetDefault ("ns3::LteEnbRrc::SrsPeriodicity", UintegerValue (srsPeriodicity)); // Box for all the scenario Box macroUeBox; double ueZ = 1.5; macroUeBox = Box (-1000, 1000, -1000, 1000, ueZ, HeighteNB); // Block allocator for 3 buildings FemtocellBlockAllocator blockAllocator (macroUeBox, nApartmentsX, nFloors);
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
17
blockAllocator.Create (nBlocks); // Number of UE for the scenario uint32_t nHomeEnbs = nBlocks; NS_LOG_LOGIC ("nHomeEnbs = " << nHomeEnbs); // User indoor uint32_t nHomeUes = homeUesHomeEnbRatio*nHomeEnbs; NS_LOG_LOGIC ("nHomeUes = " << nHomeUes); // User in the macro area outdoor uint32_t nMacroUes = areaMarginFactor; // Creation of the nodes //NodeContainer homeEnbs; //homeEnbs.Create (nHomeEnbs); NodeContainer macroEnb; macroEnb.Create (1); NodeContainer homeUes; homeUes.Create (nHomeUes); NodeContainer macroUes; macroUes.Create (nMacroUes); // Propagation loss model MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); Ptr <LteHelper> lteHelper = CreateObject<LteHelper> (); lteHelper->SetAttribute ("PathlossModel", StringValue ("ns3::HybridBuildingsPropagationLossModel")); // Values for Concrete and Window lteHelper->SetPathlossModelAttribute ("ShadowSigmaExtWalls", DoubleValue (0)); lteHelper->SetPathlossModelAttribute ("ShadowSigmaOutdoor", DoubleValue (1)); lteHelper->SetPathlossModelAttribute ("ShadowSigmaIndoor", DoubleValue (1.5)); // use always LOS model lteHelper->SetPathlossModelAttribute ("Los2NlosThr", DoubleValue (1e6)); lteHelper->SetSpectrumChannelType ("ns3::MultiModelSpectrumChannel"); //lteHelper->EnableLogComponents (); Config::SetDefault ("ns3::PfFfMacScheduler::HarqEnabled", BooleanValue (false));// False for disable HARQ protocol // Enable EPC helper Ptr<PointToPointEpcHelper> epcHelper; NS_LOG_LOGIC ("enabling EPC"); epcHelper = CreateObject<PointToPointEpcHelper> (); lteHelper->SetEpcHelper (epcHelper); // Macro eNBs // Just one MacroCell Ptr<ListPositionAllocator> positionAlloc1 = CreateObject<ListPositionAllocator> (); positionAlloc1->Add (Vector (0.0,0.0,HeighteNB)); mobility.SetPositionAllocator(positionAlloc1); mobility.Install (macroEnb); BuildingsHelper::Install (macroEnb); Config::SetDefault ("ns3::LteEnbPhy::TxPower", DoubleValue (macroEnbTxPowerDbm));
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
18
lteHelper->SetEnbAntennaModelType ("ns3::IsotropicAntennaModel"); lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (macroEnbDlEarfcn)); lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (macroEnbDlEarfcn + 18000)); lteHelper->SetEnbDeviceAttribute ("DlBandwidth", UintegerValue (macroEnbBandwidth)); lteHelper->SetEnbDeviceAttribute ("UlBandwidth", UintegerValue (macroEnbBandwidth)); NetDeviceContainer macroEnbDevs = lteHelper->InstallEnbDevice (macroEnb); // HomeEnbs randomly indoor // Ptr<PositionAllocator> positionAlloc = CreateObject<RandomRoomPositionAllocator> (); // mobility.SetPositionAllocator (positionAlloc); // mobility.Install (homeEnbs); // BuildingsHelper::Install (homeEnbs); // Config::SetDefault ("ns3::LteEnbPhy::TxPower", DoubleValue (homeEnbTxPowerDbm)); //lteHelper->SetEnbAntennaModelType ("ns3::IsotropicAntennaModel"); // lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (homeEnbDlEarfcn)); // lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (homeEnbDlEarfcn + 18000)); // lteHelper->SetEnbDeviceAttribute ("DlBandwidth", UintegerValue (homeEnbBandwidth)); // lteHelper->SetEnbDeviceAttribute ("UlBandwidth", UintegerValue (homeEnbBandwidth)); //lteHelper->SetEnbDeviceAttribute ("CsgId", UintegerValue (1)); //lteHelper->SetEnbDeviceAttribute ("CsgIndication", BooleanValue (true)); // NetDeviceContainer homeEnbDevs = lteHelper->InstallEnbDevice (homeEnbs); // home UEs located in the same apartment in which there are the Home eNBs Ptr<PositionAllocator> positionAlloc = CreateObject<RandomRoomPositionAllocator> (); mobility.SetPositionAllocator (positionAlloc); mobility.Install (homeUes); BuildingsHelper::Install (homeUes); // set the home UE as a CSG member of the home eNodeBs lteHelper->SetUeDeviceAttribute ("CsgId", UintegerValue (1)); NetDeviceContainer homeUeDevs = lteHelper->InstallUeDevice (homeUes); // macro Ues NS_LOG_LOGIC ("randomly allocating macro UEs in " << macroUeBox << " speedMin " << outdoorUeMinSpeed << " speedMax " << outdoorUeMaxSpeed); positionAlloc = CreateObject<RandomBoxPositionAllocator> (); Ptr<UniformRandomVariable> xVal = CreateObject<UniformRandomVariable> (); xVal->SetAttribute ("Min", DoubleValue (macroUeBox.xMin)); xVal->SetAttribute ("Max", DoubleValue (macroUeBox.xMax)); positionAlloc->SetAttribute ("X", PointerValue (xVal)); Ptr<UniformRandomVariable> yVal = CreateObject<UniformRandomVariable> (); yVal->SetAttribute ("Min", DoubleValue (macroUeBox.yMin)); yVal->SetAttribute ("Max", DoubleValue (macroUeBox.yMax)); positionAlloc->SetAttribute ("Y", PointerValue (yVal)); Ptr<UniformRandomVariable> zVal = CreateObject<UniformRandomVariable> (); zVal->SetAttribute ("Min", DoubleValue (macroUeBox.zMin)); zVal->SetAttribute ("Max", DoubleValue (macroUeBox.zMax)); positionAlloc->SetAttribute ("Z", PointerValue (zVal)); mobility.SetPositionAllocator (positionAlloc); mobility.Install (macroUes); // Install the MUEs in the model BuildingsHelper::Install (macroUes);
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
19
// Install the lte nodes NetDeviceContainer macroUeDevs = lteHelper->InstallUeDevice (macroUes); // IP for all the nodes Ipv4Address remoteHostAddr; NodeContainer ues; Ipv4StaticRoutingHelper ipv4RoutingHelper; Ipv4InterfaceContainer ueIpIfaces; Ptr<Node> remoteHost; NetDeviceContainer ueDevs; // EPC is enable NS_LOG_LOGIC ("setting up internet and remote host"); // Create a single RemoteHost NodeContainer remoteHostContainer; remoteHostContainer.Create (1); remoteHost = remoteHostContainer.Get (0); InternetStackHelper internet; internet.Install (remoteHostContainer); // Create the Internet PointToPointHelper p2ph; p2ph.SetDeviceAttribute ("DataRate", DataRateValue (DataRate ("100Gb/s"))); p2ph.SetDeviceAttribute ("Mtu", UintegerValue (1500)); p2ph.SetChannelAttribute ("Delay", TimeValue (Seconds (0.010))); Ptr<Node> pgw = epcHelper->GetPgwNode (); NetDeviceContainer internetDevices = p2ph.Install (pgw, remoteHost); Ipv4AddressHelper ipv4h; ipv4h.SetBase ("1.0.0.0", "255.0.0.0"); Ipv4InterfaceContainer internetIpIfaces = ipv4h.Assign (internetDevices); // in this container, interface 0 is the pgw, 1 is the remoteHost remoteHostAddr = internetIpIfaces.GetAddress (1); Ptr<Ipv4StaticRouting> remoteHostStaticRouting = ipv4RoutingHelper.GetStaticRouting (remoteHost->GetObject<Ipv4> ()); remoteHostStaticRouting->AddNetworkRouteTo (Ipv4Address ("7.0.0.0"), Ipv4Mask ("255.0.0.0"), 1); // for internetworking purposes, consider together home UEs and macro UEs ues.Add (homeUes); ues.Add (macroUes); ueDevs.Add (homeUeDevs); ueDevs.Add (macroUeDevs); // Install the IP stack on the UEs internet.Install (ues); ueIpIfaces = epcHelper->AssignUeIpv4Address (NetDeviceContainer (ueDevs)); // attachment (needs to be done after IP stack configuration)
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
20
// using initial cell selection lteHelper->Attach (macroUeDevs); lteHelper->Attach (homeUeDevs); // EPC is enable , Setting Applications NS_LOG_LOGIC ("setting up applications"); // Install and start applications on UEs and remote host uint16_t dlPort = 10000; uint16_t ulPort = 20000; // randomize a bit start times to avoid simulation artifacts // (e.g., buffer overflows due to packet transmissions happening // exactly at the same time) Ptr<UniformRandomVariable> startTimeSeconds = CreateObject<UniformRandomVariable> (); // User protocol datagram startTimeSeconds->SetAttribute ("Min", DoubleValue (0)); startTimeSeconds->SetAttribute ("Max", DoubleValue (0.010)); // Set IP Adress for all the users. ApplicationContainer clientApps; ApplicationContainer serverApps; for (uint32_t b = 0; b < ues.GetN (); ++b) { ++dlPort; ++ulPort; Ptr<Node> ue = ues.Get (b); // Set the default gateway for the UE Ptr<Ipv4StaticRouting> ueStaticRouting = ipv4RoutingHelper.GetStaticRouting (ue->GetObject<Ipv4> ()); ueStaticRouting->SetDefaultRoute (epcHelper->GetUeDefaultGatewayAddress (), 1); // Use UDP and ECP for Downlink NS_LOG_LOGIC ("installing UDP DL app for UE " << b); UdpClientHelper dlClientHelper (ueIpIfaces.GetAddress (b), dlPort); clientApps.Add (dlClientHelper.Install (remoteHost)); PacketSinkHelper dlPacketSinkHelper ("ns3::UdpSocketFactory", InetSocketAddress (Ipv4Address::GetAny (), dlPort)); serverApps.Add (dlPacketSinkHelper.Install (ue)); // USE EPC for Uplink NS_LOG_LOGIC ("installing UDP UL app for UE " << b); UdpClientHelper ulClientHelper (remoteHostAddr, ulPort); clientApps.Add (ulClientHelper.Install (ue)); PacketSinkHelper ulPacketSinkHelper("ns3::UdpSocketFactory", InetSocketAddress (Ipv4Address::GetAny (), ulPort));
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
21
serverApps.Add (ulPacketSinkHelper.Install (remoteHost)); // --- Bearer----------------------------------- Ptr<EpcTft> tft = Create<EpcTft> (); EpsBearer bearer (EpsBearer::NGBR_VIDEO_TCP_DEFAULT); lteHelper->ActivateDedicatedEpsBearer (ueDevs.Get (b), bearer, tft); Time startTime = Seconds (startTimeSeconds->GetValue ()); serverApps.Start (startTime); clientApps.Start (startTime); } // End of FOR installation fo IP for every UE. //-----To insert the buildings and ue consistent shadow model. BuildingsHelper::MakeMobilityModelConsistent (); // ----- GENERATE REM PrintGnuplottableBuildingListToFile ("0buildings.txt"); PrintGnuplottableEnbListToFile ("0enbs.txt"); PrintGnuplottableUeListToFile ("0ues.txt"); Ptr<RadioEnvironmentMapHelper> remHelper; remHelper = CreateObject<RadioEnvironmentMapHelper> (); remHelper->SetAttribute ("ChannelPath", StringValue ("/ChannelList/0")); remHelper->SetAttribute ("OutputFile", StringValue ("0Srem.out")); remHelper->SetAttribute ("XMin", DoubleValue (macroUeBox.xMin)); remHelper->SetAttribute ("XMax", DoubleValue (macroUeBox.xMax)); remHelper->SetAttribute ("YMin", DoubleValue (macroUeBox.yMin)); remHelper->SetAttribute ("YMax", DoubleValue (macroUeBox.yMax)); remHelper->SetAttribute ("Z", DoubleValue (ueZ)); remHelper->Install (); Simulator::Stop (Seconds (simTime)); lteHelper->EnablePhyTraces (); lteHelper->EnableMacTraces (); lteHelper->EnableRlcTraces (); lteHelper->EnablePdcpTraces (); Simulator::Run (); GtkConfigStore config; config.ConfigureAttributes (); lteHelper = 0; Simulator::Destroy (); NS_LOG_UNCOND ("Termino"); return 0; }
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
22
Codigo de escenario con femto celdas TERCER ESCENARIO #include <ns3/lte-helper.h> #include <ns3/epc-helper.h> #include <ns3/ipv4-global-routing-helper.h> #include <ns3/core-module.h> #include <ns3/network-module.h> #include <ns3/mobility-module.h> #include <ns3/internet-module.h> #include <ns3/lte-module.h> #include <ns3/config-store-module.h> #include <ns3/buildings-module.h> #include <ns3/point-to-point-helper.h> #include <ns3/applications-module.h> #include <ns3/log.h> #include <iomanip> #include <ios> #include <string> #include <vector> // The topology of this simulation program is inspired from // 3GPP R4-092042, Section 4.2.1 Dual Stripe Model // note that the term "apartments" used in that document matches with // the term "room" used in the BuildingsMobilityModel using namespace ns3; NS_LOG_COMPONENT_DEFINE ("ThirdScenario"); bool AreOverlapping (Box a, Box b) { return !((a.xMin > b.xMax) || (b.xMin > a.xMax) || (a.yMin > b.yMax) || (b.yMin > a.yMax)); } class FemtocellBlockAllocator { public: FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors); void Create (uint32_t n); void Create (); private: bool OverlapsWithAnyPrevious (Box); Box m_area; uint32_t m_nApartmentsX; uint32_t m_nFloors; std::list<Box> m_previousBlocks; double m_xSize;
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
23
double m_ySize; Ptr<UniformRandomVariable> m_xMinVar; Ptr<UniformRandomVariable> m_yMinVar; }; FemtocellBlockAllocator::FemtocellBlockAllocator (Box area, uint32_t nApartmentsX, uint32_t nFloors) : m_area (area), m_nApartmentsX (nApartmentsX), m_nFloors (nFloors), m_xSize (nApartmentsX*10 + 20), m_ySize (70) { m_xMinVar = CreateObject<UniformRandomVariable> (); m_xMinVar->SetAttribute ("Min", DoubleValue (area.xMin)); m_xMinVar->SetAttribute ("Max", DoubleValue (area.xMax - m_xSize)); m_yMinVar = CreateObject<UniformRandomVariable> (); m_yMinVar->SetAttribute ("Min", DoubleValue (area.yMin)); m_yMinVar->SetAttribute ("Max", DoubleValue (area.yMax - m_ySize)); } void FemtocellBlockAllocator::Create (uint32_t n) { for (uint32_t i = 0; i < n; ++i) { Create (); } } void FemtocellBlockAllocator::Create () { Box box; uint32_t attempt = 0; do { NS_ASSERT_MSG (attempt < 100, "Too many failed attemtps to position apartment block. Too many blocks? Too small area?"); box.xMin = m_xMinVar->GetValue (); box.xMax = box.xMin + m_xSize; box.yMin = m_yMinVar->GetValue (); box.yMax = box.yMin + m_ySize; ++attempt; } while (OverlapsWithAnyPrevious (box)); NS_LOG_LOGIC ("allocated non overlapping block " << box); m_previousBlocks.push_back (box); Ptr<GridBuildingAllocator> gridBuildingAllocator; gridBuildingAllocator = CreateObject<GridBuildingAllocator> ();
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
24
gridBuildingAllocator->SetAttribute ("GridWidth", UintegerValue (1)); gridBuildingAllocator->SetAttribute ("LengthX", DoubleValue (100*m_nApartmentsX)); gridBuildingAllocator->SetAttribute ("LengthY", DoubleValue (100)); gridBuildingAllocator->SetAttribute ("DeltaX", DoubleValue (10)); gridBuildingAllocator->SetAttribute ("DeltaY", DoubleValue (10)); gridBuildingAllocator->SetAttribute ("Height", DoubleValue (15*m_nFloors)); gridBuildingAllocator->SetBuildingAttribute ("NRoomsX", UintegerValue (m_nApartmentsX)); gridBuildingAllocator->SetBuildingAttribute ("NRoomsY", UintegerValue (2)); gridBuildingAllocator->SetBuildingAttribute ("NFloors", UintegerValue (m_nFloors)); gridBuildingAllocator->SetAttribute ("MinX", DoubleValue (box.xMin + 10)); gridBuildingAllocator->SetAttribute ("MinY", DoubleValue (box.yMin + 10)); gridBuildingAllocator->Create (2); } bool FemtocellBlockAllocator::OverlapsWithAnyPrevious (Box box) { for (std::list<Box>::iterator it = m_previousBlocks.begin (); it != m_previousBlocks.end (); ++it) { if (AreOverlapping (*it, box)) { return true; } } return false; } void PrintGnuplottableBuildingListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } uint32_t index = 0; for (BuildingList::Iterator it = BuildingList::Begin (); it != BuildingList::End (); ++it) { ++index; Box box = (*it)->GetBoundaries (); outFile << "set object " << index << " rect from " << box.xMin << "," << box.yMin << " to " << box.xMax << "," << box.yMax << " front fs empty " << std::endl; } } void
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
25
PrintGnuplottableUeListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } for (NodeList::Iterator it = NodeList::Begin (); it != NodeList::End (); ++it) { Ptr<Node> node = *it; int nDevs = node->GetNDevices (); for (int j = 0; j < nDevs; j++) { Ptr<LteUeNetDevice> uedev = node->GetDevice (j)->GetObject <LteUeNetDevice> (); if (uedev) { Vector pos = node->GetObject<MobilityModel> ()->GetPosition (); outFile << "set label \"" << uedev->GetImsi () << "\" at "<< pos.x << "," << pos.y << " left font \"Helvetica,4\" textcolor rgb \"grey\" front point pt 1 ps 0.3 lc rgb \"grey\" offset 0,0" << std::endl; } } } } void PrintGnuplottableEnbListToFile (std::string filename) { std::ofstream outFile; outFile.open (filename.c_str (), std::ios_base::out | std::ios_base::trunc); if (!outFile.is_open ()) { NS_LOG_ERROR ("Can't open file " << filename); return; } for (NodeList::Iterator it = NodeList::Begin (); it != NodeList::End (); ++it) { Ptr<Node> node = *it; int nDevs = node->GetNDevices (); for (int j = 0; j < nDevs; j++) { Ptr<LteEnbNetDevice> enbdev = node->GetDevice (j)->GetObject <LteEnbNetDevice> (); if (enbdev) { Vector pos = node->GetObject<MobilityModel> ()->GetPosition (); outFile << "set label \"" << enbdev->GetCellId () << "\" at "<< pos.x << "," << pos.y << " left font \"Helvetica,4\" textcolor rgb \"white\" front point pt 2 ps 0.3 lc rgb \"white\" offset 0,0"
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
26
<< std::endl; } } } } int main (int argc, char *argv[]) { // change some default attributes so that they are reasonable for // this scenario, but do this before processing command line // arguments, so that the user is allowed to override these settings Config::SetDefault ("ns3::UdpClient::Interval", TimeValue (MilliSeconds (1))); Config::SetDefault ("ns3::UdpClient::MaxPackets", UintegerValue (1000000)); Config::SetDefault ("ns3::LteRlcUm::MaxTxBufferSize", UintegerValue (10 * 1024)); CommandLine cmd; cmd.Parse (argc, argv); ConfigStore inputConfig; inputConfig.ConfigureDefaults (); // parse again so you can override input file default values via command line cmd.Parse (argc, argv); // the scenario parameters get their values from the global attributes defined above // Number of femtocell blocks uint32_t nBlocks = 3; // Number of femtocell blocks uint32_t nApartmentsX = 1; // Number of femtocell block along Xaxis bock uint32_t nFloors = 1; // Number of floors double HeighteNB = 35.0; // Height of eNB node in mts -1.5. double areaMarginFactor = 50;// Total users outdoor double homeUesHomeEnbRatio = 10.0; // Total UEs indoor per block double macroEnbTxPowerDbm = 46; // Power in dBm in eNB MACRO double homeEnbTxPowerDbm = 10; // Power in dBm in HeNB femtocell uint16_t macroEnbDlEarfcn = 100;// Channel of download 38 uint16_t homeEnbDlEarfcn = 100; // Channel of download 5 uint16_t macroEnbBandwidth = 50; // 10 MHz BW for MACRO uint16_t homeEnbBandwidth = 15; // 3 MHZ BW for femto double simTime = 120.1; // Simultation time uint16_t srsPeriodicity = 160; // 160 to install up to 160 UEs uint16_t outdoorUeMinSpeed = 0; // COnstant position for the simulation uint16_t outdoorUeMaxSpeed = 0; Config::SetDefault ("ns3::LteEnbRrc::SrsPeriodicity", UintegerValue (srsPeriodicity)); // Box for all the scenario Box macroUeBox; double ueZ = 1.5; macroUeBox = Box (-1000, 1000, -1000, 1000, ueZ, HeighteNB); // Block allocator for 3 buildings
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
27
FemtocellBlockAllocator blockAllocator (macroUeBox, nApartmentsX, nFloors); blockAllocator.Create (nBlocks); // Number of UE for the scenario uint32_t nHomeEnbs = nBlocks; NS_LOG_LOGIC ("nHomeEnbs = " << nHomeEnbs); // User indoor uint32_t nHomeUes = homeUesHomeEnbRatio*nHomeEnbs; NS_LOG_LOGIC ("nHomeUes = " << nHomeUes); // User in the macro area outdoor uint32_t nMacroUes = areaMarginFactor; // Creation of the nodes NodeContainer homeEnbs; homeEnbs.Create (nHomeEnbs); NodeContainer macroEnb; macroEnb.Create (1); NodeContainer homeUes; homeUes.Create (nHomeUes); NodeContainer macroUes; macroUes.Create (nMacroUes); // Propagation loss model MobilityHelper mobility; mobility.SetMobilityModel ("ns3::ConstantPositionMobilityModel"); Ptr <LteHelper> lteHelper = CreateObject<LteHelper> (); lteHelper->SetAttribute ("PathlossModel", StringValue ("ns3::HybridBuildingsPropagationLossModel")); // Values for Concrete and Window lteHelper->SetPathlossModelAttribute ("ShadowSigmaExtWalls", DoubleValue (0)); lteHelper->SetPathlossModelAttribute ("ShadowSigmaOutdoor", DoubleValue (1)); lteHelper->SetPathlossModelAttribute ("ShadowSigmaIndoor", DoubleValue (1.5)); // use always LOS model lteHelper->SetPathlossModelAttribute ("Los2NlosThr", DoubleValue (1e6)); lteHelper->SetSpectrumChannelType ("ns3::MultiModelSpectrumChannel"); //lteHelper->EnableLogComponents (); Config::SetDefault ("ns3::PfFfMacScheduler::HarqEnabled", BooleanValue (false));// False for disable HARQ protocol // Enable EPC helper Ptr<PointToPointEpcHelper> epcHelper; NS_LOG_LOGIC ("enabling EPC"); epcHelper = CreateObject<PointToPointEpcHelper> (); lteHelper->SetEpcHelper (epcHelper); // Macro eNBs // Just one MacroCell Ptr<ListPositionAllocator> positionAlloc1 = CreateObject<ListPositionAllocator> (); positionAlloc1->Add (Vector (0.0,0.0,HeighteNB)); mobility.SetPositionAllocator(positionAlloc1); mobility.Install (macroEnb); BuildingsHelper::Install (macroEnb);
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
28
Config::SetDefault ("ns3::LteEnbPhy::TxPower", DoubleValue (macroEnbTxPowerDbm)); lteHelper->SetEnbAntennaModelType ("ns3::IsotropicAntennaModel"); lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (macroEnbDlEarfcn)); lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (macroEnbDlEarfcn + 18000)); lteHelper->SetEnbDeviceAttribute ("DlBandwidth", UintegerValue (macroEnbBandwidth)); lteHelper->SetEnbDeviceAttribute ("UlBandwidth", UintegerValue (macroEnbBandwidth)); NetDeviceContainer macroEnbDevs = lteHelper->InstallEnbDevice (macroEnb); // HomeEnbs randomly indoor Ptr<PositionAllocator> positionAlloc = CreateObject<RandomRoomPositionAllocator> (); mobility.SetPositionAllocator (positionAlloc); mobility.Install (homeEnbs); BuildingsHelper::Install (homeEnbs); Config::SetDefault ("ns3::LteEnbPhy::TxPower", DoubleValue (homeEnbTxPowerDbm)); lteHelper->SetEnbAntennaModelType ("ns3::IsotropicAntennaModel"); lteHelper->SetEnbDeviceAttribute ("DlEarfcn", UintegerValue (homeEnbDlEarfcn)); lteHelper->SetEnbDeviceAttribute ("UlEarfcn", UintegerValue (homeEnbDlEarfcn + 18000)); lteHelper->SetEnbDeviceAttribute ("DlBandwidth", UintegerValue (homeEnbBandwidth)); lteHelper->SetEnbDeviceAttribute ("UlBandwidth", UintegerValue (homeEnbBandwidth)); lteHelper->SetEnbDeviceAttribute ("CsgId", UintegerValue (1)); lteHelper->SetEnbDeviceAttribute ("CsgIndication", BooleanValue (true)); NetDeviceContainer homeEnbDevs = lteHelper->InstallEnbDevice (homeEnbs); // home UEs located in the same apartment in which there are the Home eNBs positionAlloc = CreateObject<SameRoomPositionAllocator> (homeEnbs); mobility.SetPositionAllocator (positionAlloc); mobility.Install (homeUes); BuildingsHelper::Install (homeUes); // set the home UE as a CSG member of the home eNodeBs lteHelper->SetUeDeviceAttribute ("CsgId", UintegerValue (1)); NetDeviceContainer homeUeDevs = lteHelper->InstallUeDevice (homeUes); // macro Ues NS_LOG_LOGIC ("randomly allocating macro UEs in " << macroUeBox << " speedMin " << outdoorUeMinSpeed << " speedMax " << outdoorUeMaxSpeed); positionAlloc = CreateObject<RandomBoxPositionAllocator> (); Ptr<UniformRandomVariable> xVal = CreateObject<UniformRandomVariable> (); xVal->SetAttribute ("Min", DoubleValue (macroUeBox.xMin)); xVal->SetAttribute ("Max", DoubleValue (macroUeBox.xMax)); positionAlloc->SetAttribute ("X", PointerValue (xVal)); Ptr<UniformRandomVariable> yVal = CreateObject<UniformRandomVariable> (); yVal->SetAttribute ("Min", DoubleValue (macroUeBox.yMin)); yVal->SetAttribute ("Max", DoubleValue (macroUeBox.yMax)); positionAlloc->SetAttribute ("Y", PointerValue (yVal)); Ptr<UniformRandomVariable> zVal = CreateObject<UniformRandomVariable> (); zVal->SetAttribute ("Min", DoubleValue (macroUeBox.zMin)); zVal->SetAttribute ("Max", DoubleValue (macroUeBox.zMax)); positionAlloc->SetAttribute ("Z", PointerValue (zVal)); mobility.SetPositionAllocator (positionAlloc); mobility.Install (macroUes); // Install the MUEs in the model
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
29
BuildingsHelper::Install (macroUes); // Install the lte nodes NetDeviceContainer macroUeDevs = lteHelper->InstallUeDevice (macroUes); // IP for all the nodes Ipv4Address remoteHostAddr; NodeContainer ues; Ipv4StaticRoutingHelper ipv4RoutingHelper; Ipv4InterfaceContainer ueIpIfaces; Ptr<Node> remoteHost; NetDeviceContainer ueDevs; // EPC is enable NS_LOG_LOGIC ("setting up internet and remote host"); // Create a single RemoteHost NodeContainer remoteHostContainer; remoteHostContainer.Create (1); remoteHost = remoteHostContainer.Get (0); InternetStackHelper internet; internet.Install (remoteHostContainer); // Create the Internet PointToPointHelper p2ph; p2ph.SetDeviceAttribute ("DataRate", DataRateValue (DataRate ("100Gb/s"))); p2ph.SetDeviceAttribute ("Mtu", UintegerValue (1500)); p2ph.SetChannelAttribute ("Delay", TimeValue (Seconds (0.010))); Ptr<Node> pgw = epcHelper->GetPgwNode (); NetDeviceContainer internetDevices = p2ph.Install (pgw, remoteHost); Ipv4AddressHelper ipv4h; ipv4h.SetBase ("1.0.0.0", "255.0.0.0"); Ipv4InterfaceContainer internetIpIfaces = ipv4h.Assign (internetDevices); // in this container, interface 0 is the pgw, 1 is the remoteHost remoteHostAddr = internetIpIfaces.GetAddress (1); Ptr<Ipv4StaticRouting> remoteHostStaticRouting = ipv4RoutingHelper.GetStaticRouting (remoteHost->GetObject<Ipv4> ()); remoteHostStaticRouting->AddNetworkRouteTo (Ipv4Address ("7.0.0.0"), Ipv4Mask ("255.0.0.0"), 1); // for internetworking purposes, consider together home UEs and macro UEs ues.Add (homeUes); ues.Add (macroUes); ueDevs.Add (homeUeDevs); ueDevs.Add (macroUeDevs); // Install the IP stack on the UEs internet.Install (ues); ueIpIfaces = epcHelper->AssignUeIpv4Address (NetDeviceContainer (ueDevs)); // attachment (needs to be done after IP stack configuration)
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
30
// using initial cell selection lteHelper->Attach (macroUeDevs); lteHelper->Attach (homeUeDevs); // EPC is enable , Setting Applications NS_LOG_LOGIC ("setting up applications"); // Install and start applications on UEs and remote host uint16_t dlPort = 1234; uint16_t ulPort = 2000; // randomize a bit start times to avoid simulation artifacts // (e.g., buffer overflows due to packet transmissions happening // exactly at the same time) Ptr<UniformRandomVariable> startTimeSeconds = CreateObject<UniformRandomVariable> (); // User protocol datagram startTimeSeconds->SetAttribute ("Min", DoubleValue (0)); startTimeSeconds->SetAttribute ("Max", DoubleValue (0.010)); // Set IP Adress for all the users. ApplicationContainer clientApps; ApplicationContainer serverApps; for (uint32_t b = 0; b < ues.GetN (); ++b) { ++dlPort; ++ulPort; Ptr<Node> ue = ues.Get (b); // SinkHelper PacketSinkHelper dlPacketSinkHelper ("ns3::UdpSocketFactory", InetSocketAddress (Ipv4Address::GetAny (), dlPort)); PacketSinkHelper ulPacketSinkHelper ("ns3::UdpSocketFactory", InetSocketAddress (Ipv4Address::GetAny (), ulPort)); // On/Off Application Uplink OnOffHelper Donoffhelper ("ns3::UdpSocketFactory", InetSocketAddress (Ipv4Address::GetAny (), dlPort)); // On/Off Application Downlink OnOffHelper Uonoffhelper ("ns3::UdpSocketFactory",InetSocketAddress (Ipv4Address::GetAny (), ulPort)); //On/Off Config DOWNLINK Donoffhelper.SetAttribute ("PacketSize", UintegerValue(172)); //The size of packets sent in on state Donoffhelper.SetAttribute ("DataRate", DataRateValue(68800)); //The data rte in on state Donoffhelper.SetAttribute ("OnTime", StringValue ("ns3::ConstantRandomVariable[Constant=1.0]")); //duration of the 'On' state Donoffhelper.SetAttribute ("OffTime",StringValue ("ns3::ConstantRandomVariable[Constant=1.0]")); // duration of the 'Off' state //On/Off Config UPLINK
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
31
Uonoffhelper.SetAttribute ("PacketSize", UintegerValue(172)); //The size of packets sent in on state Uonoffhelper.SetAttribute ("DataRate", DataRateValue(68800)); //The data rte in on state Uonoffhelper.SetAttribute ("OnTime", StringValue ("ns3::ConstantRandomVariable[Constant=1.0]")); //duration of the 'On' state Uonoffhelper.SetAttribute ("OffTime",StringValue ("ns3::ConstantRandomVariable[Constant=1.0]")); // duration of the 'Off' state // Install de dlPacket sink and the onoff application serverApps.Add (dlPacketSinkHelper.Install (ue)); serverApps.Add (ulPacketSinkHelper.Install (remoteHost)); serverApps.Add (Donoffhelper.Install (ue)); serverApps.Add (Uonoffhelper.Install (remoteHost)); clientApps.Add (Uonoffhelper.Install (ue)); clientApps.Add (Donoffhelper.Install (remoteHost)); // --- Bearer----------------------------------- Ptr<EpcTft> tft = Create<EpcTft> (); EpsBearer bearer (EpsBearer::NGBR_VIDEO_TCP_DEFAULT); lteHelper->ActivateDedicatedEpsBearer (ueDevs.Get (b), bearer, tft); // Start time for the application serverApps.Start (Seconds (0.01)); clientApps.Start (Seconds (0.01)); } // End of FOR installation fo IP for every UE. //-----To insert the buildings and ue consistent shadow model. BuildingsHelper::MakeMobilityModelConsistent (); // ----- GENERATE REM PrintGnuplottableBuildingListToFile ("0buildings.txt"); PrintGnuplottableEnbListToFile ("0enbs.txt"); PrintGnuplottableUeListToFile ("0ues.txt"); Ptr<RadioEnvironmentMapHelper> remHelper; remHelper = CreateObject<RadioEnvironmentMapHelper> (); remHelper->SetAttribute ("ChannelPath", StringValue ("/ChannelList/0")); remHelper->SetAttribute ("OutputFile", StringValue ("0Srem.out")); remHelper->SetAttribute ("XMin", DoubleValue (macroUeBox.xMin)); remHelper->SetAttribute ("XMax", DoubleValue (macroUeBox.xMax)); remHelper->SetAttribute ("YMin", DoubleValue (macroUeBox.yMin)); remHelper->SetAttribute ("YMax", DoubleValue (macroUeBox.yMax)); remHelper->SetAttribute ("Z", DoubleValue (ueZ)); remHelper->Install (); Simulator::Stop (Seconds (simTime)); lteHelper->EnablePhyTraces (); lteHelper->EnableMacTraces (); lteHelper->EnableRlcTraces (); lteHelper->EnablePdcpTraces (); Simulator::Run ();
Estudio de trafico de tecnología LTE (4G) mediante análisis de sensibilidad de los
parámetros de un sistema con simulador NS3 Anexos
32
GtkConfigStore config; config.ConfigureAttributes (); lteHelper = 0; Simulator::Destroy (); NS_LOG_UNCOND ("Termino"); return 0; }