Este artículo tiene varios problemas. Ayúdenos a mejorarlo o a discutir estos problemas en la página de discusión . ( Aprenda cómo y cuándo eliminar estos mensajes )
|
El rendimiento de red (o simplemente throughput , cuando está en contexto) se refiere a la tasa de entrega de mensajes a través de un canal de comunicación en una red de comunicación , como Ethernet o radio por paquetes . Los datos que contienen estos mensajes pueden entregarse a través de enlaces físicos o lógicos, o a través de nodos de red . El rendimiento generalmente se mide en bits por segundo (bit/s, a veces abreviado bps), y a veces en paquetes por segundo (p/s o pps) o paquetes de datos por intervalo de tiempo .
El rendimiento del sistema o rendimiento agregado es la suma de las velocidades de datos que se entregan a través de todos los canales de una red. [1] El rendimiento representa el consumo de ancho de banda digital (informática).
El rendimiento de un sistema de comunicación puede verse afectado por diversos factores, incluidas las limitaciones del medio físico subyacente, la potencia de procesamiento disponible de los componentes del sistema, el comportamiento del usuario final , etc. Si se tienen en cuenta los distintos costos generales del protocolo , la tasa útil de transferencia de datos puede ser significativamente inferior al rendimiento máximo alcanzable; la parte útil suele denominarse rendimiento útil .
Los usuarios de dispositivos de telecomunicaciones, los diseñadores de sistemas y los investigadores de la teoría de la comunicación suelen estar interesados en conocer el rendimiento esperado de un sistema. Desde la perspectiva del usuario, esto suele expresarse como "¿qué dispositivo llevará mis datos allí de manera más efectiva para mis necesidades?" o "¿qué dispositivo entregará la mayor cantidad de datos por unidad de costo?". Los diseñadores de sistemas suelen seleccionar la arquitectura o las restricciones de diseño más efectivas para un sistema, que determinan su rendimiento final. En la mayoría de los casos, el parámetro de referencia de lo que es capaz un sistema, o su "rendimiento máximo", es lo que interesa al usuario o al diseñador. El término rendimiento máximo se utiliza con frecuencia cuando se habla de pruebas de rendimiento máximo del usuario final.
El rendimiento máximo es esencialmente sinónimo de capacidad de ancho de banda digital .
En el contexto del "rendimiento máximo", que se utiliza para comparar el rendimiento conceptual de "límite superior" de varios sistemas, se aplican cuatro valores diferentes: "rendimiento máximo teórico", "rendimiento máximo alcanzable", "rendimiento máximo medido" y "rendimiento máximo sostenido". Estos valores representan cantidades diferentes y se debe tener cuidado de que se utilicen las mismas definiciones al comparar diferentes valores de "rendimiento máximo". Cada bit debe llevar la misma cantidad de información si se van a comparar valores de rendimiento. La compresión de datos puede alterar significativamente los cálculos de rendimiento, incluida la generación de valores superiores al 100 % en algunos casos. Si la comunicación está mediada por varios enlaces en serie con diferentes velocidades de bits, el rendimiento máximo del enlace general es inferior o igual a la velocidad de bits más baja. El enlace de valor más bajo de la serie se denomina cuello de botella .
Este número está estrechamente relacionado con la capacidad del canal del sistema [2] y es la cantidad máxima posible de datos que se pueden transmitir en circunstancias ideales. En algunos casos, este número se informa como igual a la capacidad del canal, aunque esto puede ser engañoso, ya que solo las tecnologías de sistemas no empaquetados (asincrónicos) pueden lograr esto sin compresión de datos. El rendimiento teórico máximo se informa con mayor precisión teniendo en cuenta el formato y la sobrecarga de especificación con suposiciones del mejor caso. Este número, al igual que el término estrechamente relacionado "rendimiento máximo alcanzable" que aparece a continuación, se utiliza principalmente como un valor calculado aproximado, como para determinar los límites del rendimiento posible al principio de una fase de diseño del sistema.
El rendimiento asintótico (menos formalmente, ancho de banda asintótico ) para una red de comunicación en modo paquete es el valor de la función de rendimiento máximo , cuando la carga de red entrante se acerca al infinito , ya sea debido al tamaño del mensaje [3] o al número de fuentes de datos. Al igual que otras velocidades de bits y anchos de banda de datos , el rendimiento asintótico se mide en bits por segundo (bit/s) o (raramente) bytes por segundo (B/s), donde 1 B/s es 8 bit/s. Se utilizan prefijos decimales , lo que significa que 1 Mbit/s es 1000000 bit/s.
El rendimiento asintótico se estima generalmente enviando o simulando un mensaje muy grande (secuencia de paquetes de datos) a través de la red, utilizando una fuente voraz y ningún mecanismo de control de flujo (es decir, UDP en lugar de TCP ), y midiendo el rendimiento de la ruta de red en el nodo de destino. La carga de tráfico entre otras fuentes puede reducir este rendimiento máximo de la ruta de red. Alternativamente, se puede modelar una gran cantidad de fuentes y receptores, con o sin control de flujo, y medir el rendimiento máximo agregado de la red (la suma del tráfico que llega a sus destinos). En un modelo de simulación de red con colas de paquetes infinitas, el rendimiento asintótico ocurre cuando la latencia (el tiempo de espera de los paquetes) tiende al infinito, mientras que si las colas de paquetes son limitadas, o la red es una red multidrop con muchas fuentes, y pueden ocurrir colisiones, la tasa de pérdida de paquetes se acerca al 100%.
Una aplicación bien conocida del rendimiento asintótico es el modelado de la comunicación punto a punto , donde (siguiendo a Hockney) la latencia del mensaje T(N) se modela como una función de la longitud del mensaje N como T(N) = (M + N)/A, donde A es el ancho de banda asintótico y M es la longitud de medio pico. [4]
Además de su uso en el modelado de redes generales, el rendimiento asintótico se utiliza para modelar el rendimiento en sistemas informáticos masivamente paralelos , donde el funcionamiento del sistema depende en gran medida de la sobrecarga de comunicación, así como del rendimiento del procesador. [5] En estas aplicaciones, el rendimiento asintótico se utiliza en el modelo de Xu y Hwang (más general que el enfoque de Hockney) que incluye el número de procesadores, de modo que tanto la latencia como el rendimiento asintótico son funciones del número de procesadores. [6]
Los valores anteriores son teóricos o calculados. El rendimiento máximo medido es el rendimiento medido por un sistema real implementado o un sistema simulado. El valor es el rendimiento medido durante un corto período de tiempo; matemáticamente, este es el límite tomado con respecto al rendimiento a medida que el tiempo se acerca a cero. Este término es sinónimo de rendimiento instantáneo . Este número es útil para sistemas que dependen de la transmisión de datos en ráfagas; sin embargo, para sistemas con un ciclo de trabajo alto , es menos probable que sea una medida útil del rendimiento del sistema.
Este valor es el rendimiento promedio o integrado durante un período prolongado (a veces considerado infinito). Para redes con un ciclo de trabajo elevado, es probable que sea el indicador más preciso del rendimiento del sistema. El rendimiento máximo se define como el rendimiento asintótico cuando la carga (la cantidad de datos entrantes) es grande. En sistemas conmutados por paquetes donde la carga y el rendimiento siempre son iguales (donde no se produce pérdida de paquetes ), el rendimiento máximo puede definirse como la carga mínima en bits/s que hace que el tiempo de entrega (la latencia ) se vuelva inestable y aumente hacia el infinito. Este valor también se puede utilizar de forma engañosa en relación con el rendimiento pico medido para ocultar la conformación de paquetes .
El rendimiento a veces se normaliza y se mide en porcentaje, pero la normalización puede generar confusión con respecto a qué se relaciona el porcentaje. La utilización del canal , la eficiencia del canal y la tasa de pérdida de paquetes en porcentaje son términos menos ambiguos.
La eficiencia del canal, también conocida como eficiencia de utilización del ancho de banda , es el porcentaje de la tasa de bits neta (en bits/s) de un canal de comunicación digital que corresponde al rendimiento realmente alcanzado. Por ejemplo, si el rendimiento es de 70 Mbit/s en una conexión Ethernet de 100 Mbit/s, la eficiencia del canal es del 70 %. En este ejemplo, se transmiten efectivamente 70 Mbit de datos cada segundo.
La utilización del canal es, en cambio, un término relacionado con el uso del canal, sin tener en cuenta el rendimiento. No sólo cuenta con los bits de datos, sino también con la sobrecarga que hace uso del canal. La sobrecarga de transmisión consta de secuencias de preámbulo, encabezados de trama y paquetes de reconocimiento. Las definiciones suponen un canal sin ruido. De lo contrario, el rendimiento no sólo estaría asociado con la naturaleza (eficiencia) del protocolo, sino también con las retransmisiones resultantes de la calidad del canal. En un enfoque simplista, la eficiencia del canal puede ser igual a la utilización del canal suponiendo que los paquetes de reconocimiento son de longitud cero y que el proveedor de comunicaciones no verá ningún ancho de banda relativo a las retransmisiones o encabezados. Por lo tanto, ciertos textos marcan una diferencia entre la utilización del canal y la eficiencia del protocolo.
En un enlace de comunicación punto a punto o punto a multipunto , donde sólo un terminal transmite, el rendimiento máximo es a menudo equivalente o muy cercano a la velocidad física de datos (la capacidad del canal ), ya que la utilización del canal puede ser casi del 100% en una red de este tipo, excepto por una pequeña brecha entre tramas.
Por ejemplo, el tamaño máximo de trama en Ethernet es de 1526 bytes: hasta 1500 bytes para la carga útil, ocho bytes para el preámbulo, 14 bytes para el encabezado y 4 bytes para el final. Después de cada trama se inserta un espacio mínimo adicional entre tramas correspondiente a 12 bytes. Esto corresponde a una utilización máxima del canal de 1526 / (1526 + 12) × 100% = 99,22%, o un uso máximo del canal de 99,22 Mbit/s incluyendo la sobrecarga del protocolo de la capa de enlace de datos Ethernet en una conexión Ethernet de 100 Mbit/s. El rendimiento máximo o la eficiencia del canal es entonces 1500 / (1526 + 12) = 97,5%, sin incluir la sobrecarga del protocolo Ethernet.
El rendimiento de un sistema de comunicación estará limitado por una gran cantidad de factores. Algunos de ellos se describen a continuación:
El rendimiento máximo alcanzable (la capacidad del canal) se ve afectado por el ancho de banda en hercios y la relación señal/ruido del medio físico analógico.
A pesar de la simplicidad conceptual de la información digital, todas las señales eléctricas que viajan a través de cables son analógicas. Las limitaciones analógicas de los cables o sistemas inalámbricos inevitablemente proporcionan un límite superior a la cantidad de información que se puede enviar. La ecuación dominante aquí es el teorema de Shannon-Hartley , y las limitaciones analógicas de este tipo pueden entenderse como factores que afectan el ancho de banda analógico de una señal o como factores que afectan la relación señal/ruido. El ancho de banda de los sistemas cableados puede ser de hecho sorprendentemente estrecho, con el ancho de banda del cable Ethernet limitado a aproximadamente 1 GHz, y las pistas de PCB limitadas por una cantidad similar.
Los sistemas digitales se refieren a la 'frecuencia de rodilla', [7] la cantidad de tiempo para que el voltaje digital aumente del 10% de un '0' digital nominal a un '1' digital nominal o viceversa. La frecuencia de rodilla está relacionada con el ancho de banda requerido de un canal y se puede relacionar con el ancho de banda de 3 db de un sistema mediante la ecuación: [8] Donde Tr es el tiempo de aumento del 10% al 90% y K es una constante de proporcionalidad relacionada con la forma del pulso, igual a 0,35 para un aumento exponencial y 0,338 para un aumento gaussiano.
Los sistemas computacionales tienen una capacidad de procesamiento finita y pueden manejar una corriente finita. Una capacidad de manejo de corriente limitada puede limitar la relación señal/ruido efectiva para enlaces de alta capacitancia .
Las grandes cargas de datos que requieren procesamiento imponen requisitos de procesamiento de datos en el hardware (como los enrutadores). Por ejemplo, un enrutador de puerta de enlace que admita una subred de clase B poblada, que maneje canales Ethernet de 10 × 100 Mbit/s, debe examinar 16 bits de dirección para determinar el puerto de destino de cada paquete. Esto se traduce en 81913 paquetes por segundo (suponiendo una carga útil de datos máxima por paquete) con una tabla de 2^16 direcciones, esto requiere que el enrutador pueda realizar 5.368 mil millones de operaciones de búsqueda por segundo. En el peor de los casos, donde las cargas útiles de cada paquete Ethernet se reducen a 100 bytes, esta cantidad de operaciones por segundo aumenta a 520 mil millones. Este enrutador requeriría un núcleo de procesamiento de varios teraflops para poder manejar tal carga.
Para garantizar que varios usuarios puedan compartir armoniosamente un único enlace de comunicaciones es necesario algún tipo de distribución equitativa del enlace. Si un enlace de comunicación de cuello de botella que ofrece una velocidad de datos R es compartido por "N" usuarios activos (con al menos un paquete de datos en cola), cada usuario normalmente logra un rendimiento de aproximadamente R/N , si se supone que la comunicación es de mejor esfuerzo y con colas equitativas .
El rendimiento máximo es a menudo una medida poco fiable del ancho de banda percibido, por ejemplo, la velocidad de transmisión de datos de archivos en bits por segundo. Como se ha señalado anteriormente, el rendimiento alcanzado suele ser inferior al rendimiento máximo. Además, la sobrecarga del protocolo afecta al ancho de banda percibido. El rendimiento no es una métrica bien definida en lo que respecta a cómo tratar la sobrecarga del protocolo. Normalmente se mide en un punto de referencia por debajo de la capa de red y por encima de la capa física. La definición más sencilla es la cantidad de bits por segundo que se entregan físicamente. Un ejemplo típico en el que se pone en práctica esta definición es una red Ethernet. En este caso, el rendimiento máximo es la tasa de bits bruta o tasa de bits sin procesar.
Sin embargo, en los esquemas que incluyen códigos de corrección de errores de avance (codificación de canal), el código de error redundante normalmente se excluye del rendimiento. Un ejemplo es la comunicación por módem , donde el rendimiento normalmente se mide en la interfaz entre el protocolo punto a punto (PPP) y la conexión por módem conmutada por circuitos. En este caso, el rendimiento máximo suele denominarse tasa de bits neta o tasa de bits útil.
Para determinar la velocidad de datos real de una red o conexión, se puede utilizar la definición de medición de " goodput ". Por ejemplo, en la transmisión de archivos, el "goodput" corresponde al tamaño del archivo (en bits) dividido por el tiempo de transmisión del archivo. El " goodput " es la cantidad de información útil que se entrega por segundo al protocolo de la capa de aplicación . Se excluyen los paquetes descartados o las retransmisiones de paquetes, así como la sobrecarga del protocolo. Por eso, el "goodput" es menor que el rendimiento. Los factores técnicos que afectan la diferencia se presentan en el artículo " goodput ".
A menudo, un bloque en un diagrama de flujo de datos tiene una sola entrada y una sola salida, y opera sobre paquetes discretos de información. Ejemplos de tales bloques son los módulos de transformada rápida de Fourier o los multiplicadores binarios . Debido a que las unidades de rendimiento son el recíproco de la unidad de retardo de propagación , que es "segundos por mensaje" o "segundos por salida", el rendimiento se puede utilizar para relacionar un dispositivo computacional que realiza una función dedicada, como un ASIC o un procesador integrado , con un canal de comunicaciones, simplificando el análisis del sistema.
En redes inalámbricas o sistemas celulares , la eficiencia espectral del sistema en bit/s/Hz/unidad de área, bit/s/Hz/sitio o bit/s/Hz/celda, es el rendimiento máximo del sistema (rendimiento agregado) dividido por el ancho de banda analógico y alguna medida del área de cobertura del sistema.
El rendimiento en los canales analógicos se define en su totalidad por el esquema de modulación, la relación señal/ruido y el ancho de banda disponible. Dado que el rendimiento se define normalmente en términos de datos digitales cuantificados, no se suele utilizar el término "rendimiento"; en su lugar, se utiliza con más frecuencia el término "ancho de banda".