El control de flujo es una función que previene la congestión de red asegurándose de que los dispositivos que transmiten no abrumen la recepción de los dispositivos con datos. Existen incontables causas posibles para la congestión de una red. Una computadora de alta velocidad, por ejemplo, puede generar tráfico más rápidamente de lo que la red puede transferirlo, o más rápidamente que el dispositivo destinatario puede recibirlo y procesarlo. Los tres métodos comúnmente usados para manejar la congestión de red son el buffering, los mensajes para el aplacamiento del origen, y el windowing.
El buffering es utilizado por los dispositivos de la red para salvar temporalmente el exceso de datos en memoria hasta que pueden ser procesados. Los excesos ocasionales de los datos son manejadas fácilmente por el buffering. El exceso de datos pueden agotar la memoria, sin embargo, forzando el dispositivo para desechar cualquier datagrama adicional que llegue.
El aplaque de los mensajes del origen es utilizado por los dispositivos de recepción para ayudar a evitar que desborden sus buffers. El dispositivo de recepción envía mensaje de aplacamiento de origen para solicitar que el origen reduzca su tasa actual de transmisión de datos. Primero, el dispositivo de recepción comienza a desechar los datos recibidos debido a que los buffers desbordan. En segundo lugar, el dispositivo de recepción comienza a enviar mensajes de aplacamiento del origen al dispositivo que transmite a razón de un mensaje por cada paquete caído. El dispositivo origen recibe el mensaje de aplacamiento y baja la tasa de transmisión de datos hasta que para de recibir los mensajes. Finalmente, el dispositivo origen entonces aumenta gradualmente la tasa de transmisión de datos mientras no se reciba ningun otro mensaje de aplacamiento.
El windowing es un esquema de control de flujo en el cual el dispositivo de origen requiere un acuse de recibo del destino después de que se hayan transmitido cierto número de paquetes. Con un tamaño de ventana de tres, el origen requiere un acuse de recibo después de enviar tres paquetes, de esta manera: Primero, el dispositivo de la fuente envía tres paquetes al dispositivo destinatario. Entonces, después de recibir los tres paquetes, el dispositivo destinatario envía un acuse de recibo al orginen. El origen recibe el acuse de recibo y envía tres paquetes más. Si el destino no recibe uno o más de los paquetes por alguna razón, tal como desborde del buffer, no recibe paquetes suficientes para enviar un acuse de recibo. El origen entonces retransmite los paquetes en una tasa de transmisión reducida.
Los esquemas de verificación de errores determinan si los datos transmitidos han llegado corruptos o dañados de alguna manera mientras viajaban desde origen al destino. La verificación de errores se implementa en varias capas OSI.
Un esquema comun de verificación de errores es el control por redundancia cíclico (CRC), que detecta y desecha datos corrompidos. Las funciones de corrección de errores (tales como retransmisión de los datos) se dejan a los protocolos de capas superiores. Un valor de CRC es generado por un cálculo que se realiza en el dispositivo origen. El dispositivo destinatario compara este valor a su propio cálculo para determinarse si ocurrieron errores durante la transmisión. Primero, el dispositivo de origen realiza un conjunto predeterminado de cálculos sobre el contenido del paquete que se enviará. Entonces, la fuente pone el valor calculado en el paquete y envía el paquete el destinatario. El destinatario realiza el mismo conjunto predeterminado de cálculos sobre el contenido del paquete y después compara su valor computado con ése contenido en el paquete. Si los valores son iguales, el paquete se considera válido. Si los valores son desiguales, el paquete contiene errores y se desecha.
La multiplexación es un proceso en el cual canales múltiples de datos son combinados en un solo canal de datos o físico en el origen. La multiplexación se puede implementar en cualquiera de las capas OSI. Inversamente, la demultiplexación es el proceso de separar los canales multiplexados de los datos en el destino. Un ejemplo de multiplexación es cuando los datos de aplicaciones múltiples se multiplexan en un solo paquete de datos de la capa inferior. El cuadro 1-18 ilustra este ejemplo.
Otro ejemplo de la multiplexación es cuando los datos de los dispositivos múltiples se combinan en un solo canal físico (que usa un dispositivo llamado un multiplexor). El cuadro 1-19 ilustra este ejemplo.
Cuadro 1-19: Los dispositivos múltiples se pueden multiplexar en un solo
canal físico.
Un multiplexor es un dispositivo de capa física que combina múltiples secuencias de datos en una o más salidas en el origen. Los multiplexores demultiplexan el canal en varias secuencias de datos en el extremo remoto y así maximizan el uso del ancho de banda del media físico permitiéndole ser compartido por múltiples fuentes del tráfico.
Algunos métodos usados para multiplexar datos son multiplexación de división de tiempo (TDM), multiplexación de división de tiempo asincrónica (ATDM), multiplexación por división de frecuencia (FDM), y multiplexación estadística.
En TDM, a la información de cada canal de los datos le es destinado ancho de banda por periodos de tiempo preasignados. En ATDM, a la información de los canales de los datos le es destinado ancho de banda según lo que necesite, usando periodos de tiempo dinámicamente asignados. En FDM, a la información de cada canal de los datos le es destinado ancho de banda basado en la frecuencia de la señal del tráfico. En la multiplexación estadística, el ancho de banda se asigna dinámicamente a cualquier canal de datos que tenga información a transmitir.
Una amplia variedad de organizaciones contribuye a los estándares del internetworking proveyendo foros de discusión, volviendo a la discusión informal en especificaciones formales, y promocionando las especificaciones después de que se estandardicen.
La mayoría de las organizaciones de estándares crean estándares formales usando procesos específicos: organización de ideas, bosquejo de estándares que se convierten, votando sobre todos o ciertos aspectos de los estándares, y entonces formalmente se lanza la versión del estándar terminado al público.
Algunas de las organizaciones de estándares más conocidas que contribuyen a los estándares del internetworking incluyen:
· El International Organization for Standardization (ISO) -- ISO es una organización de estándares internacional responsable de una amplia gama de estándares, incluyendo muchos que son relevantes al establecimiento de una red. Su mejor contribución conocida es el desarrollo del OSI REFERENCE MODEL y del conjunto de protocolos OSI.