Red de conocimiento informático - Conocimiento del nombre de dominio - Urgente Urgente Urgente Buscando un artículo sobre "Investigación sobre simulación de redes de comunicación"

Urgente Urgente Urgente Buscando un artículo sobre "Investigación sobre simulación de redes de comunicación"

He descargado dos artículos para ti, ¡espero que te sean útiles! ¡Que tenga un lindo día!

1

Título: Investigación basada en plataforma de simulación de redes de sensores inalámbricos

1 Introducción

Las redes de sensores (WSN) están cambiando con el tiempo. Cada día que pasa, las soluciones y protocolos de red se vuelven cada vez más complejos y la escala de la red es cada vez mayor. Para los investigadores de redes, la importancia de dominar la simulación de redes es evidente. La simulación de WSN puede estudiar aplicaciones de WSN, incluidos los sistemas operativos y las pilas de protocolos de red, en un entorno controlado. Puede simular una gran cantidad de nodos, observar las interacciones esquivas entre nodos causadas por interferencias y ruidos impredecibles y obtener detalles detallados entre nodos. mejorar la tasa de éxito de la red después de la colocación del nodo y reducir el trabajo de mantenimiento de la red después de la colocación. Actualmente, las herramientas de simulación utilizadas en redes de sensores inalámbricos incluyen principalmente NS2, TinyOS, OPNET, OMNET++, etc. Entre ellos, TinyOS se investiga y desarrolla especialmente en función de las características de las redes de sensores inalámbricos.

2. Introducción a la simulación de redes de sensores inalámbricos

En una red de sensores, un único nodo de sensores tiene dos características sobresalientes. Una característica es que su concurrencia es muy intensiva; otra característica es que los nodos de sensores son altamente modulares. Estas características hacen que la simulación de redes de sensores inalámbricos deba abordar la escalabilidad y la eficiencia de la simulación, la distribución y las características asincrónicas, la dinámica y las plataformas de simulación integrales. la pregunta.

3. Herramientas de simulación de uso común para redes de sensores inalámbricos

Las herramientas de simulación de uso común para redes de sensores inalámbricos incluyen NS2, OPNET, OMNET ++ y TinyOS. A continuación presentamos brevemente sus respectivos rendimientos y. características.

3.1 NS2

NS es una herramienta de simulación basada en tiempo extensible, configurable y programable. Se desarrolla a partir del simulador REAL en el diseño de NS, utilizando dos lenguajes de programación, C++. y OTCL es un lenguaje que se ejecuta relativamente rápido pero se convierte lentamente, por lo que el lenguaje C ++ se utiliza para implementar protocolos de red y escribir el motor de simulación subyacente de OTCL. Sin embargo, el lenguaje de secuencias de comandos que se puede convertir rápidamente es complementario a C ++; Por lo tanto, el lenguaje OTCL se utiliza para configurar varios parámetros en la simulación y establecer la estructura general de la simulación. El script OTCL define la topología de la red llamando a varios atributos y métodos en el motor y configura el nodo de origen y el nodo de destino para establecer. enlaces, generar un cronograma de todos los eventos, ejecutar y rastrear los resultados de la simulación y realizar el procesamiento estadístico correspondiente o gráficos de los resultados. NS puede proporcionar la capa de enlace y su capa superior en redes cableadas y redes inalámbricas Simulación de un rango con precisión de paquetes. de comportamientos. Muchos protocolos en NS están muy cerca de códigos reales y su autenticidad y confiabilidad son muy altas.

3.2 OPNET

OPNET es un producto de software de simulación de red desarrollado por MIL3 basado en los resultados de la investigación del MIT. Las características principales de OPNET incluyen los siguientes aspectos: (1) Al utilizar tecnología orientada a objetos, las propiedades de los objetos se pueden configurar arbitrariamente, cada objeto pertenece a una clase con comportamientos y funciones correspondientes, y se pueden definir nuevas clases para cumplir con diferentes sistemas. requisitos (2) OPNET proporciona componentes y módulos de procesamiento para diversas redes de comunicación y sistemas de información (3) OPNET utiliza el modelado de interfaz gráfica para proporcionar a los usuarios un mecanismo de modelado de tres capas (capa de red, capa de nodo, capa de proceso) para describir el sistema real; (4) OPNET utiliza máquinas de estados finitos en el nivel de proceso para modelar otros protocolos y procesos. El modelo de usuario y el modelo integrado de OPNET generarán automáticamente el lenguaje C para implementar una simulación de eventos ejecutable, eficiente y altamente discreta. 5) OPNET tiene muchos analizadores de rendimiento integrados, que recopilarán automáticamente los datos de resultados del proceso de simulación; (6) OPNET casi ha predefinido todos los modelos comerciales de uso común, como distribución uniforme, distribución de Poisson, distribución de Eulander, etc.

3.3 OMNET++

OMNET++ es una herramienta de simulación de eventos discretos orientada a objetos, que proporciona soporte para simulación basada en procesos y basada en eventos.

OMNET++ adopta un método de modelado híbrido, utilizando el lenguaje ned (descripción de red) exclusivo de OMNET++ y C++ para el modelado. OMNET++ consta principalmente de seis partes: biblioteca del núcleo de simulación, compilador del lenguaje de descripción de red, compilador gráfico de red, interfaz gráfica de usuario del programa de simulación, interfaz de usuario de línea de comandos del programa de simulación y herramienta de salida gráfica de vectores. El lenguaje de descripción de topología del modelo principal de OMNET++, NED, se puede utilizar para completar la descripción de un modelo de red. La descripción de la red incluye los siguientes componentes: declaración de entrada, definición de canal, definición de módulo del sistema, definición de módulo simple y definición de módulo compuesto. Utilice NED para describir la red y generar un archivo .NED. Este archivo no puede ser utilizado directamente por el compilador de C++. Primero debe utilizar la herramienta de compilación NEDC proporcionada por OMNET++ para compilar el archivo .NED en un archivo .cpp. Finalmente, se utiliza un compilador de C++ para conectar estos archivos con programas modulares simples diseñados por los usuarios y por ellos mismos en programas ejecutables.

3.4 TinyOS

TinyOS es un sistema operativo desarrollado específicamente para sensores. El lenguaje utilizado para programar en TinyOS es el lenguaje nesC (lenguaje C para sistemas integrados en red).

El lenguaje nesC es una extensión del lenguaje C y está destinado a combinar ideas de componenteización/modularización con el modelo de ejecución basado en eventos de TinyOS. Hay dos tipos de componentes nesC: Módulo (módulo) y Configuración (archivo de configuración de conexión). En el módulo, el código se compila principalmente y en el archivo de configuración de conexión, los distintos componentes y módulos se conectan principalmente en un todo.

El programa TinyOS adopta un diseño modular, por lo que su núcleo de programa suele ser muy pequeño, lo que puede superar la limitación de los bajos recursos de almacenamiento del sensor. Esto permite que TinyOS se ejecute de manera efectiva en redes de sensores inalámbricos y se lleve a cabo. trabajos de gestión correspondientes, etc. Las características de TinyOS se reflejan principalmente en los siguientes aspectos:

(1) Arquitectura basada en componentes. Los componentes de TinyOS generalmente se pueden dividir en las siguientes tres categorías: componentes abstractos de hardware, componentes sintéticos y componentes de software de alto nivel; los componentes abstractos de hardware asignan hardware físico a modelos de componentes de TinyOS que simulan el comportamiento del hardware de alto nivel. Se completan los módulos de software de nivel completo Control, enrutamiento y transmisión de datos, etc. }

(2) Arquitectura basada en eventos. Los controladores de eventos se dividen en controladores de hardware y controladores de eventos de software. El controlador de eventos de hardware significa que un hardware emite una interrupción y luego ingresa a la función de procesamiento de interrupciones. El controlador de software emite un evento a través de la palabra clave singal.

(3) Modelo de Concurrencia de Tareas y Eventos. Las tareas se utilizan en aplicaciones que no tienen requisitos de tiempo muy altos. Las tareas son iguales, es decir, vienen en secuencia durante la ejecución y no pueden adelantarse entre sí en una cola FIFO simple. Los eventos se utilizan en aplicaciones que tienen requisitos de tiempo estrictos y se pueden ejecutar antes que las tareas y otros eventos.

(4) Operaciones en Fase Dividida. En TinyOS, dado que las tareas no pueden adelantarse a la ejecución de otras, TinyOS no proporciona ninguna operación de bloqueo. Para completar una operación de larga duración lo antes posible, en términos generales, la demanda de esta operación y la finalización de esta operación están separadas. implementación con el fin de obtener una mayor eficiencia de ejecución.

(5) Hilo ligero.

Los subprocesos livianos (tareas, es decir, tareas en TinyOS) se programan de manera FIFO, y los subprocesos livianos no pueden adelantarse, mientras que los subprocesos de procesamiento de hardware (en TinyOS, llamados procesadores de hardware), es decir, los subprocesos de procesamiento de interrupción, pueden Interrumpir; Los subprocesos livianos del usuario y los subprocesos de procesamiento de interrupciones de baja prioridad pueden procesar y responder rápidamente a las interrupciones de hardware.

(6) Mensaje de comunicación activa. Cada mensaje mantiene una capa de aplicación y un controlador. Cuando el nodo de destino reciba este mensaje, utilizará los datos del mensaje como parámetro y los pasará al procesador de la capa de aplicación para su procesamiento. El procesador de la capa de aplicación generalmente completa la operación de descomprimir los datos del mensaje, el procesamiento de cálculos o el envío de mensajes de respuesta.

Las plataformas de simulación comúnmente utilizadas en el sistema operativo TinyOS son principalmente TOSSIM y Avrora.

(1) TOSSIM (simulación de TinyOS) es un simulador que admite aplicaciones basadas en TinyOS para ejecutarse en PC TOSSIM ejecuta el mismo código que el hardware del sensor y el compilador de simulación puede compilar y generar programas de simulación directamente desde la tabla de componentes de la aplicación TinyOS.

(2) Avrora es una herramienta que proporciona específicamente análisis de simulación para programas escritos en lenguaje de microcontrolador AVR en nodos Atmel y Mica2. Sus características principales son las siguientes: 1) Proporciona una simulación de ciclo preciso para el microcontrolador AVR, de modo que los programas estáticos puedan ejecutarse con precisión. Puede simular controladores de dispositivos en chip (chip-on) y proporcionar interfaces regulares para programas fuera del chip (fuera del chip). 2) Se puede agregar código de monitoreo para informar el rendimiento del programa de simulación, o puede recopilar datos estadísticos; y generar informes; 3) Proporciona un conjunto básico de monitores para analizar el programa, lo que ayuda a analizar el modo de ejecución y el uso de recursos del programa, etc. 4) Avrora puede usar gdb para depurar el programa; diagrama de flujo del programa, a través del cual se puede representar claramente la estructura y organización del programa de código de máquina 6) Avrora proporciona herramientas para analizar el consumo de energía y puede establecer el tamaño de carga del dispositivo; 7) se puede usar Avrora; el espacio de pila máximo del programa Proporcionará información sobre la estructura de pila más grande en el programa actual y cierta información sobre el consumo de espacio y tiempo.

3.5 Comparación de rendimiento

TinyOS utiliza modelos de comportamiento para simular protocolos entre capas; el programa de simulación se trasplanta al nodo sin codificación secundaria.

A través del análisis y comparación de los distintos software de simulación anteriores, podemos ver claramente las características y el alcance de aplicación de cada software de simulación. Podemos elegir el software de simulación adecuado según las necesidades de la investigación, para que nuestro. El estudio y la investigación pueden obtener el doble de resultado con la mitad de esfuerzo.

Conclusión

La tecnología de simulación de redes proporciona un método científico y eficiente para la planificación y optimización de redes de comunicaciones. La simulación de redes solo se ha desarrollado en China en los últimos años, pero la tecnología de simulación de redes en el extranjero ha sido bastante madura. Debemos aprender con valentía de las tecnologías avanzadas extranjeras y promover el rápido desarrollo de la tecnología de simulación de redes nacionales.

Referencias

1 Yu Haibin, Zeng Peng, et al. Red de sensores inalámbricos inteligentes, 2006, p283~p303,

2 Shi Huaiwei, Li Mingsheng, Wang Shaohua, Tecnología de simulación de redes y práctica de aplicaciones OPNET, Aplicación de sistemas informáticos 2006. Número 3

3 Li Yue, Wu Chenwen, Simulación del protocolo TCP/IP basada en OMNeT++, Revista de la Universidad Lanzhou Jiaotong ( Natural Science Edition), agosto de 2005

4 Yuan Honglin, Xu Chen, Zhang Guoan, TOSSIM: Entorno de simulación de redes de sensores inalámbricos, sensores e instrumentos, volumen 22, número 7-1, 2006

2

Investigación sobre modelado de simulación de servidores virtuales de clúster

Fuente: Aplicación de tecnología electrónica Autor: Yang Jianhua Jindi Li Ye Ningyu

Resumen: Expone el clúster Se analizan el principio de funcionamiento de los servidores virtuales y tres métodos de equilibrio de carga. Los métodos de simulación y modelado de los servidores virtuales se analizan a través de ejemplos. Los modelos de entrada y del sistema para probar y simular el rendimiento del sistema se crean y verifican basándose en el diagrama Q-Q y la función de distribución acumulativa. . su distribución de probabilidad.

Palabras clave: clúster servidor virtual equilibrio de carga simulación modelado distribución de probabilidad

Con el rápido crecimiento del acceso a Internet y el tráfico de datos, están surgiendo nuevas aplicaciones una tras otra. Aunque la potencia de procesamiento y la intensidad informática de los servidores Intelel han aumentado en consecuencia, el volumen de negocios ha crecido más allá de las estimaciones anteriores, e incluso los sistemas de servidores construidos según la configuración óptima en el pasado no pueden permitírselo. En este caso, si abandona el equipo existente y simplemente actualiza el hardware, se desperdiciarán los recursos existentes. Por lo tanto, los servicios de red actuales y futuros no sólo deben proporcionar contenido más rico, mejor interactividad y mayor seguridad, sino también ser capaces de soportar un mayor número de visitas, lo que requiere que los servicios de red tengan mayor rendimiento y mayor disponibilidad, buena escalabilidad y excelente relación precio/rendimiento. Como resultado, surgieron la tecnología de servidores virtuales en clúster y los mecanismos de equilibrio de carga.

Los servidores virtuales en clúster pueden reunir algunos servidores reales para formar una unidad escalable, de alta disponibilidad y alta confiabilidad. El equilibrio de carga se basa en la estructura de red existente, lo que proporciona un método económico, eficaz y transparente para establecer un sistema de clúster de servidores, ampliar el ancho de banda de los equipos y servidores de la red, aumentar el rendimiento y mejorar las capacidades de procesamiento de datos de la red. Mejorar la flexibilidad y disponibilidad de la red. Utilice un mecanismo de equilibrio de carga. Se puede asignar una gran cantidad de acceso simultáneo o tráfico de datos a múltiples dispositivos de nodo para su procesamiento respectivamente. La capacidad de procesamiento del sistema se ha mejorado enormemente, lo que reduce en gran medida el tiempo que los usuarios esperan para obtener respuestas.

En las aplicaciones reales, cuantos más servidores reales contenga un servidor virtual, mayores serán los indicadores generales de rendimiento del servidor (como el retraso de respuesta, la tasa de rendimiento, etc.), pero mayor será el precio. Los canales u otras partes del clúster también pueden entrar en un estado de saturación. Por lo tanto, es necesario diseñar el modelo de simulación del servidor virtual basado en la aplicación real, determinar el tipo de distribución de probabilidad y los parámetros de las variables aleatorias basándose en los datos de medición del sistema real, y utilizar el gráfico cuantil-cuartil, que Es decir, el gráfico Q-Q (gráfico cuantil-cuantil) y los métodos acumulativos, como las funciones de distribución acumulativa, se utilizan para verificar la distribución de probabilidad de indicadores de rendimiento, como la respuesta o el retraso de propagación. El estado operativo y las características de rendimiento del servidor se analizan de antemano. a través de software y herramientas de simulación (como Automod) para estabilizar el rendimiento general del sistema de clúster y mejorar La objetividad y confiabilidad del diseño del servidor virtual reducen los riesgos de inversión en la construcción del servidor.

1 Arquitectura del servidor virtual del clúster

En términos generales, primero debe establecer el mecanismo de enmascaramiento de protocolo de Internet, es decir, el enmascaramiento de IP, en el servidor virtual del clúster. Mecanismo de reenvío de puerto IP y luego proporciona la configuración relevante en el servidor real. La Figura 1 muestra la arquitectura general de un servidor virtual en clúster. Los servidores virtuales de clúster suelen incluir: servidores reales (RealServers) y equilibradores de carga (Load Balmlcer).

Dado que el método de traducción de direcciones de red del servidor virtual se basa en el camuflaje de IP, no existen requisitos especiales para el sistema operativo del servidor real en segundo plano. Puede ser un sistema operativo Windows, Lmux o. otros sistemas operativos.

El equilibrador de carga es el único punto de entrada al sistema del clúster de servidores. Cuando llega una solicitud de un cliente, el equilibrador seleccionará un servidor de los servidores reales en función de la carga del servidor real y el algoritmo de programación establecido, luego reenviará la solicitud al servidor seleccionado y registrará la programación. Cuando lleguen otros paquetes para esta solicitud, el paquete también se reenviará al servidor seleccionado previamente. Debido a que todas las operaciones se completan en el espacio central del sistema operativo, la sobrecarga de programación es muy pequeña, por lo que el equilibrador de carga tiene una alta tasa de rendimiento. La estructura de todo el clúster de servidores es transparente para los clientes y lo que ven los clientes es un único servidor virtual.

Existen muchas soluciones de implementación para clústeres de equilibrio de carga, una de las cuales es la solución Linux Virtual Server LVS (Linux Virtual Server). LVS utiliza tres tecnologías para lograr el equilibrio de carga: traducción de direcciones de red, enrutamiento directo y túnel IP.

La traducción de direcciones de red sigue los estándares IETF y permite que toda una organización aparezca en Inlemet con una dirección IP pública. A través de la traducción de la dirección de red, el equilibrador de carga reescribe la dirección de destino del mensaje de solicitud y envía la solicitud al servidor real en el backend de acuerdo con el algoritmo de programación preestablecido cuando el mensaje de respuesta del servidor real pasa por el equilibrador, la dirección de origen; del mensaje es Reescribir, traducir la dirección de la red privada interna a una dirección IP de red legal y luego devolverla al cliente para completar todo el proceso de programación de carga.

La programación y gestión de las conexiones de respuesta para el enrutamiento directo son las mismas que para la traducción de direcciones de red, pero sus mensajes se reenvían directamente al servidor real. En las respuestas de enrutamiento directo, el ecualizador no modifica ni encapsula paquetes IP. En su lugar, cambie la dirección MAC (Control de acceso medio) de control de acceso a medios de la trama de datos a la dirección MAC del servidor seleccionado y luego envíe la trama de datos modificada a través de la LAN. Debido a que la dirección MAC de la trama de datos es el servidor seleccionado, el servidor definitivamente puede recibir la trama de datos y obtener el mensaje IP de ella. Cuando el servidor descubre que la dirección de destino del mensaje está en el dispositivo de red local, el servidor procesa el mensaje, luego responde al mensaje de acuerdo con la tabla de enrutamiento y lo devuelve directamente al cliente.

El túnel IP es una tecnología que encapsula un paquete IP en otro paquete IP. Esta tecnología permite encapsular paquetes de datos destinados a una determinada dirección de puerto y reenviarlos a otra dirección IP. Los usuarios utilizan la tecnología de túnel IP para encapsular y reenviar paquetes de solicitud al servidor back-end, y los paquetes de respuesta se pueden devolver directamente al cliente desde el servidor back-end. De esta manera, el equilibrador de carga solo es responsable de programar las solicitudes y la respuesta se devuelve directamente al cliente sin procesar el paquete de respuesta. Esto mejorará en gran medida el rendimiento de todo el sistema del clúster y reducirá efectivamente la carga del equilibrador de carga. La tecnología de túnel IP requiere que todos los servidores admitan el protocolo IP Yunnehng o IP Encapsulation (Encapsulación).

2 Determinación del retraso de los mensajes del servidor virtual del clúster

A través de un sistema real equipado con 5 servidores reales y utilizando tecnología de traducción de direcciones de red para implementar servidores virtuales Linux, las solicitudes relevantes y la marca de tiempo El archivo n (marca de tiempo) del mensaje de respuesta se basa en estos archivos. Capaz de calcular los datos necesarios para la simulación y modelado de servidores virtuales agrupados.

Para determinar el tipo y los parámetros de distribución de variables aleatorias, se deben contar los siguientes retrasos: (1) Retraso de propagación del cliente al balanceador de carga (Retraso de transporte (2) Retraso de respuesta del balanceador de carga (); Retraso de respuesta) (3) Retraso de propagación desde el equilibrador de carga al servidor real; (4) Retraso de respuesta del servidor real (5) Retraso de propagación desde el servidor real al equilibrador de carga; al servidor real; (7) Retraso de propagación desde el equilibrador de carga al cliente.

En el archivo de marca de tiempo generado por el sistema real, se describen los tiempos de retraso anteriores.

El contenido del archivo es el siguiente:

Cuando una solicitud de servicio llega al sistema de servidor virtual del clúster, se genera un paquete de solicitud sincronizada (paquete de solicitud sincronizada) con un número de secuencia único y el paquete se reenvía a un cierto El servidor real establece una conexión entre el servidor y el cliente al mismo tiempo. Cada conexión tiene un número de puerto único; el servidor procesa el mensaje de solicitud de reconocimiento (Paquete de solicitud de reconocimiento) a través de la conexión hasta que el servidor recibe la solicitud final. mensaje (Paquete de solicitud finalizada). Para cada tipo de mensaje de solicitud, el sistema proporciona un mensaje de respuesta correspondiente. Por lo tanto, en diferentes archivos de marcas de tiempo de mensajes, si dos registros tienen el mismo número de puerto, tipo de mensaje y número de secuencia, son el mismo mensaje de solicitud o respuesta, y las marcas de tiempo relevantes se pueden restar para obtener los datos de latencia necesarios para la simulación y el modelado de Sistemas de servidores virtuales en cluster. Estos retrasos se pueden calcular escribiendo un programa en C++.

3 Modelo de simulación del sistema

El modelo de simulación del sistema real del servidor virtual de clúster mencionado anteriormente se muestra en la Figura 2. Se pasa o procesa en el equilibrador de carga, cada uno canal, y 5 servidores reales son mensajes de solicitud o respuesta.

4 Determinación del modelo de variable aleatoria

Para simular un servidor virtual de clúster con variables aleatorias, se debe determinar la distribución de probabilidad de sus variables aleatorias para poder muestrear estas distribuciones en el modelo de simulación. , obtenga las variables aleatorias requeridas.

4.1 Descripción general de los datos de latencia de los servidores virtuales reales

En el equilibrador de carga, cada canal y 5 servidores reales del servidor virtual real, hay ciertos retrasos en los mensajes de solicitud y respuesta. Demora. Algunas estadísticas de retraso de paquetes se muestran en la Tabla 1.

Se puede ver en los datos de la Tabla l que los valores medianos y medios de los retrasos de paquetes son bastante diferentes, por lo que la distribución de probabilidad es asimétrica, el coeficiente de variación no es igual a l; en la distribución de probabilidad no es una distribución exponencial, sino que podría ser la distribución gamma u otras distribuciones.

4.2 Distribución de probabilidad de variables aleatorias

La Figura 3 es un histograma del retraso de propagación del mensaje del canal entre el primer servidor real y el balanceador de carga, donde t es el tiempo de retraso del mensaje, h (t) es el número de intervalos de retardo de mensajes. Como puede verse en la Figura 3, los datos del retardo de propagación de mensajes dentro del canal obedecen aproximadamente a la distribución γ o distribución lognormal.

Se necesitan dos parámetros para describir la distribución γ: el parámetro de forma (Shape) α y el parámetro de escala (Scahj) La relación entre estos dos parámetros y la media M y la varianza V no es lineal:

Describir la distribución lognormal también requiere el parámetro de forma σ y el parámetro de proporción μ. La relación entre estos dos parámetros y la media M y la varianza V tampoco es lineal:

Fórmula (1) ~. (4) todos pueden obtenerse mediante el método de estimación de máxima verosimilitud MLE (Estimador de máxima verosimilitud) o el método de descenso más pronunciado. La Tabla 2 muestra los parámetros de distribución de probabilidad de retraso de paquetes en el canal desde el primer servidor real hasta el equilibrador de carga calculados mediante estos dos métodos.

La función de distribución acumulativa y el gráfico Q-Q se pueden utilizar para verificar y determinar aún más la distribución de probabilidad de los retrasos en la propagación de mensajes en los canales anteriores. Utilizando los parámetros de la Tabla 2, se puede obtener la función de distribución acumulativa de la distribución γ, como se muestra en la Figura 4, donde t es el tiempo de retraso del mensaje y F (t) es la función de distribución acumulativa del retraso del mensaje. A modo de comparación, la distribución experimental también se representa en la figura. Los gráficos Q-Q de la distribución γ y la distribución lognormal se muestran en la Figura 5.

Se puede ver en las Figuras 4 y 5 que la distribución γ se ajusta bien a la distribución de datos del retardo de propagación de paquetes en el canal. Los histogramas de retardo de paquetes de otros canales también tienen formas similares. Después del cálculo y análisis, la distribución de probabilidad de los retrasos en la propagación de mensajes de estos canales también obedece aproximadamente a la distribución γ.

Con base en los datos de la Tabla 1 y los histogramas relacionados, es difícil determinar la distribución teórica de los retrasos de paquetes en el equilibrador de carga y los servidores reales. Por lo tanto, se adopta la distribución experimental como modelo.

Simulación del modelo 5

Después de establecer el modelo de simulación del sistema del servidor virtual del clúster que se muestra en la Figura 1 y determinar las características de distribución de sus variables aleatorias, se desarrolló el modelo de simulación del sistema desarrollado por Brooks Automation. Se puede utilizar una empresa de los Estados Unidos. El software de simulación Automod desarrollado por Brooks Automation ingresa el modelo y realiza la simulación y el análisis del servidor virtual del clúster a través de la programación en el entorno Automod.

Durante el proceso de simulación de Automod, los recursos (recursos) proporcionados por el software se pueden utilizar directamente como unidad para procesar varios datos de mensajes y las actividades de cola de mensajes de cada parte del sistema se pueden implementar directamente; a través de colas (Queue); Cree un generador de carga, equivalente a un cliente que utiliza un servidor virtual en Inlemtet.

Al utilizar la variable de atributo de Automod (Variable de atributo), se puede resolver el problema de la función de procesamiento de paquetes bidireccional del balanceador de carga. El equilibrador de carga utiliza el algoritmo de programación Round Robin, que supone que el rendimiento de procesamiento de todos los servidores reales es el mismo y programa solicitudes a diferentes servidores por turno.

El modelo de simulación de verificación se puede comparar en el sistema de servidor virtual real y el modelo de simulación de Automod desde los dos aspectos siguientes: (1) Las respuestas o informes de propagación en cola en el equilibrador de carga, cada servidor y canal real. Número de documentos; (2) utilización de CPU de servidores reales y equilibradores de carga. Por ejemplo, cuando se utilizan datos de retraso de mensajes de respuesta o propagación reales, en el modelo de simulación de Automod, si establece una cantidad de recursos más baja, encontrará que la mayor parte de la carga se bloquea en el servidor real durante el proceso de simulación, es decir, la cola. , la capacidad del servidor real para procesar paquetes es demasiado baja y no se puede comparar con la situación real del sistema. Si se establece una mayor cantidad de recursos, significa que la capacidad de procesamiento paralelo del servidor aumenta y la tasa de utilización del servidor real aumenta. y la carga Habrá pocas o ninguna cola en el servidor real. Por lo tanto, en Automod, el tamaño de los recursos del modelo de simulación se puede ajustar según la situación real.

Si aumenta la tasa de generación de carga del generador de carga en Automod, equivale a un aumento en las visitas de los usuarios. Al observar la tasa de retención de carga en la cola, puede descubrir la capacidad máxima de procesamiento de paquetes del sistema. y Pueden producirse cuellos de botella en los mensajes de respuesta de varias partes del sistema. Por ejemplo, si se duplica la tasa de generación de carga, aunque el sistema aún puede procesar todos los paquetes, la utilización promedio de cada servidor real alcanzará aproximadamente el 80%. Obviamente, el "cuello de botella" de los mensajes de respuesta del sistema en este momento es el servidor real, y es necesario agregar un nuevo servidor real al sistema.

A través de un sistema de servidores virtuales reales que incluye 5 servidores reales. Se recopilaron y calcularon datos de muestra para simulación y modelado. Con base en la mediana, la media, el coeficiente de variación y el histograma del retraso del mensaje del sistema, se determina la distribución de probabilidad de las variables aleatorias del sistema, se utilizan el método de estimación de máxima verosimilitud y el método de descenso más pronunciado para obtener los parámetros específicos de la probabilidad del canal; distribución según Q-Q El gráfico y la función de distribución acumulativa se verifican más a fondo y finalmente se determina la forma de distribución de probabilidad del canal. Se utilizó el software Automod para el modelado y la programación de la simulación. Con la ayuda de los resultados de la simulación, se puede descubrir la capacidad máxima de procesamiento y los posibles "cuellos de botella" del servidor virtual. Al localizar los "cuellos de botella" del sistema de manera oportuna, podemos estudiar más a fondo y mejorar el sistema de manera específica, mejorando efectivamente el rendimiento del sistema. Los métodos de simulación adoptados también se pueden utilizar en el modelado o análisis de simulación en otros campos.

En el modelo de simulación, es necesario agregar métodos de equilibrio de carga y algoritmos de programación para facilitar la comparación de diferentes sistemas de servidores virtuales. Los datos de muestra también deben ampliarse aún más para evitar la autocorrelación en los retrasos de los paquetes.