ES2371186T3 - Plantificación de acuse de recibo de corrientes múltiples. - Google Patents
Plantificación de acuse de recibo de corrientes múltiples. Download PDFInfo
- Publication number
- ES2371186T3 ES2371186T3 ES06773260T ES06773260T ES2371186T3 ES 2371186 T3 ES2371186 T3 ES 2371186T3 ES 06773260 T ES06773260 T ES 06773260T ES 06773260 T ES06773260 T ES 06773260T ES 2371186 T3 ES2371186 T3 ES 2371186T3
- Authority
- ES
- Spain
- Prior art keywords
- packet
- transmission
- rate
- communication flow
- packets
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/56—Queue scheduling implementing delay-aware scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2466—Traffic characterised by specific attributes, e.g. priority or QoS using signalling traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/624—Altering the ordering of packets in an individual queue
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Un procedimiento (400) para controlar un tráfico de red entre un primer nodo y un segundo nodo, comprendiendo el procedimiento: el mantenimiento de una fila de espera de transmisión para un flujo de comunicaciones, estando el flujo de comunicaciones asociado con una tasa de transmisión, conteniendo la fila de espera de la transmisión un primer paquete asociado con una primera corriente del flujo de comunicaciones y un segundo paquete asociado con una segunda corriente del flujo de comunicaciones, estando el primer paquete ordenado delante del segundo paquete en la fila de espera de transmisión; la predicción (404) de una duración de la transmisión del primer paquete cuando este es transmitido a una tasa más lenta que la tasa de transmisión del flujo de comunicaciones; la predicción (408) de una duración de la transmisión tanto del primero como del segundo paquetes cuando son transmitidos a la tasa de transmisión del flujo de comunicaciones; y la reordenación (412) del primer paquete y del segundo paquete en la fila de espera de la transmisión, si el primer paquete y el segundo paquete satisfacen una condición de reordenación, siendo la condición de reordenación satisfecha si la duración de transmisión prevista del primero y del segundo paquetes a la tasa de transmisión del flujo de comunicaciones es inferior a la duración de transmisión prevista del primer paquete a una tasa más lenta.
Description
Planificación de acuse de recibo de corrientes múltiples
Campo técnico
La invención se refiere, en general, al campo de las comunicaciones de red y, más concretamente, a la planificación de acuse de recibo de corrientes múltiples en comunicaciones de red.
Muchos usuarios de Internet tienen enlaces asimétricos con Internet (por ejemplo, la Línea de Abonado Digital Asimétrica o ADSL). Por ejemplo en la ADSL, un ancho de banda de descarga del usuario es típicamente mayor que el ancho de banda de carga del usuario. La descarga está principalmente asociada con los paquetes de datos de recepción desde Internet; la carga está principalmente asociada con el envío de paquetes de datos hacia Internet, aunque pueden existir enlaces asimétricos en otras configuraciones.
En muchos protocolos de transferencia de datos, un nodo de recepción debe enviar una forma de paquete de acuse de recibo para indicar que un paquete de datos ha sido recibido de forma satisfactoria. Cuando el nodo de transmisión recibe el paquete de acuse de recibo desde el nodo de recepción, puede enviar otro paquete de datos en la secuencia de transferencia. Por el contrario, si el nodo de transmisión no recibe un paquete de acuse de recibo desde el nodo de recepción, puede temporalmente suspender su actividad de transmisión y / o volver a enviar un paquete previamente transmitido después de un periodo de tiempo de espera, suponiendo que la transmisión previa no fue satisfactoria. Por consiguiente, la temporización y la recepción satisfactoria de los paquetes de recibo pueden afectar de manera considerable a la tasa a la cual los datos son transferidos desde un nodo de transmisión hasta un nodo de recepción.
Así mismo, si un nodo de una conexión determinado está transmitiendo tanto paquetes de datos como paquetes de acuse de recibo (esto es, el nodo está procesando múltiples corrientes de transmisión), el funcionamiento de los datos de transmisión, particularmente de paquetes de datos de gran tamaño, desde el primer nodo puede retardar de manera considerable la transmisión de los paquetes de acuse de recibo desde ese nodo. De acuerdo con ello, dado que tanto la transmisión de paquetes de datos como la transmisión de acuses de recibo están compitiendo por una única fila de espera de transmisión, una fila de espera de transmisión de máxima ocupación que transmite un paquete de datos de gran tamaño puede reducir la tasa a la cual el nodo puede devolver los acuses de recibo a otro nodo de transmisión, reduciendo de esta forma la tasa a la cual el otro nodo de transmisión enviará más paquetes de datos. Por consiguiente, la actividad de transmisión de un nodo puede repercutir de manera considerable en la tasa a la cual el nodo recibirá los paquetes de datos.
El efecto de un cuello de botella de los paquetes de acuse de recibo en un nodo determinado, el cual puede disminuir la tasa de transmisión de tráfico hacia ese nodo, puede ser simplificado mediante una conexión asimétrica (por ejemplo una descarga = 1024kbps respecto de una carga = 64kbps). Por ejemplo, cuando un nodo de destino de descarga está tanto recibiendo como transmitiendo paquetes de datos a través de una conexión de ADSL típica, la tasa de transferencia de recepción experimentada por el nodo puede estar limitada por la incapacidad del nodo para devolver a tiempo los acuses de recibo al nodo de la fuente de descarga -los acuses de recibo procedentes del nodo de destino de descarga están compitiendo con los paquetes de datos de carga procedentes del mismo nodo para el ancho de banda más pequeño del enlace de carga (en comparación con el enlace de descarga). Por consiguiente, la tasa de transferencia a través de la conexión de descarga mayor puede ser degradada por este cuello de botella en la conexión de carga.
Kalampoukas L. et al. : “Mejora de la tasa de transferencia del TCP sobre enlaces asimétricos de doble vía: análisis y soluciones” [“Improving TCP throughput over two-way asymetric links: analysis and solutions”] En ACM SIGMETRICS Performance Evaluation Review, Vol. 26, No. 1, Junio 1998, páginas 78 -89, estudian diversos esquemas para mejorar el rendimiento del tráfico del TCP de doble vía sobre enlaces asimétricos donde los anchos de banda de las dos direcciones pueden diferir sustancialmente, posiblemente por muchos órdenes de magnitud. El compartimiento de una memoria intermedia común por los segmentos de datos y de acuses de recibo en un entorno del tipo indicado produce el efecto de la compresión de los acuses de recibo (ack) provocando a menudo reducciones drásticas en la tasa de transferencia. Los autores, en primer término, demuestran la importancia del problema por medio de las mediciones sobre una red experimental y, a continuación, proceden a estudiar determinadas propuestas para mejorar la tasa de transferencia de las conexiones. Estas propuestas reducen el efecto de la compresión de los acuses de recibo mediante el cuidadoso control del flujo de los paquetes de datos y de los acuses de recibo. Los autores en primer término, examinan un esquema en el que los acuses de recibo son transmitidos con una prioridad más alta que los datos. Mediante análisis y simulación, se muestra que los acuses de recibo prioritarios pueden conducir a la inanición de la conexión del ancho de banda. La segunda propuesta utiliza un mecanismo de contrapresión del nivel de conexión para limitar la cantidad máxima de datos almacenados en la memoria intermedia en la fila de espera saliente del IP de la fuente de la conexión del ancho de banda bajo. Esta propuesta, al tiempo que reduce al mínimo el retardo en la fila de espera para los acuses de recibo, se muestra que se ha traducido en una asignación del ancho de banda injusto sobre el enlace lento. Así mismo, las tasas de transferencia de la conexión son altamente sensibles a parámetros tales como los tamaños de los paquetes y de los acuses de recibo en una u otra dirección. Finalmente, la solución preferente utiliza un mecanismo de asignación del ancho de banda de nivel de la conexión. Se muestra que este esquema supera las limitaciones de las propuestas anteriores, proporciona aislamiento y permite el control preciso de las tasas de transferencia de la conexión. Balakrishnan H. et al.: “Implicaciones del rendimiento del TCP de la Asimetría de la Trayectoria de Red, rfc3449.txt” [“TCP Performance Implications of Network Path Asymmetry: rfc3449.txt”] IETF, STANDARD, INTERNET ENGINEERING TASK FORCE, IETF, CH. 1 de diciembre de 2002, describe los problemas de rendimiento del TCP que surgen debido a los efectos asimétricos. Estos problemas surgen en diversas redes de acceso, incluyendo redes asimétricas de ancho de banda y subredes de radio de paquetes, por distintas razones subyacentes. Sin embargo, el resultado final sobre el rendimiento del TCP es el mismo en el mismo caso: el rendimiento a menudo se degrada de manera considerable debido a la imperfección y a la viabilidad en la retroalimentación de los ACK desde el receptor hasta el emisor. La técnica anterior descrita en el documento detalla diversas mitigaciones a estos efectos, las cuales han sido, o bien propuestas o evaluadas en la literatura, o bien son actualmente desplegadas en redes. Estas soluciones utilizan una combinación de técnicas de capa de enlace local, subred, y mecanismos de extremo con extremo, consistentes en: (i) técnicas para gestionar el canal utilizado para el enlace del cuello de botella corriente arriba que acarrea los ACKs , utilizando típicamente una compresión de la cabecera o la reducción de la frecuencia de los ACKs del TCP, (ii) técnicas para manejar esta frecuencia reducida de los ACKs para retener la autosincronización del acuses de recibo desencadenados del emisor del TCP y (iii) técnicas para planificar los datos y los paquetes de ACKs en la dirección inversa para mejorar el rendimiento en presencia del tráfico de doble vía.
Balakrishnan H. et al.: “los Efectos del Rendimiento del TCP de Asimetría” [“The Effects of Asymmetry TCP Performance”], En MOBILE NETWORKS AND APPLICATIONS, ACM, NEW YORK, NY., US, Vol. 4, No. 3, 1 de octubre de 1999, páginas 219 -240, los autores estudian los efectos de la asimetría de red sobre un rendimiento del TCP de extremo con extremo y sugieren técnicas para mejorarla. Las redes investigadas incluyen una red de módem de cable inalámbrico y una red radio de paquetes las cuales pueden formar una parte importante de una red móvil ad hoc. Utilizando una combinación de experimentos en redes reales y de simulación, los autores analizan el rendimiento del TCP en dichas redes en las que la tasa de transferencia conseguida no es solamente una función de las características de los enlaces del tráfico en la dirección de la transferencia de datos (dirección directa), sino que depende de modo considerable de la dirección inversa también. Los autores centran su atención en las simetrías del ancho de banda y de la latencia y se proponen evaluar distintas técnicas para mejorar el rendimiento de extremo con extremo. Estas técnicas incluyen la reducción de la tasa de acuses de recibo sobre el canal inverso restringido (control de la congestión de los acuses de recibo y filtrado de los acuses de recibo) técnicas para reducir el incremento repentino de la señal de la fuente cuando los acuses de recibo son infrecuentes (adaptación del emisor al TCP), y algoritmos en el encaminador de los cuellos de botella inversos para planificar datos acuses de recibo de modo diferente de la cola FIFO (planificación de los acuses de recibo de primer término).
Constituye el objetivo de la invención proporcionar una reordenación de paquetes fácil y flexible a partir de diferentes corrientes. Este objetivo se resuelve mediante la materia objeto de las reivindicaciones independientes. Formas de realización preferentes se definen en las reivindicaciones dependientes.
Las implementaciones descritas y reivindicadas en la presente memoria dan respuesta a los problemas referidos mediante la planificación del orden y la temporización a las cuales tanto los paquetes de recibo como los paquetes de datos de múltiples corrientes pueden ser enviados por un nodo de transmisión con el fin de obtener una utilización global satisfactoria tanto del enlace de carga como del enlace de descarga. En una implementación, las duraciones de los diversos paquetes en una fila en espera de transmisión son evaluadas para determinar si el paquete más retrasado en la fila de espera de transmisión puede ser transmitido delante de un paquete más adelantado de la fila en espera de transmisión sin que se produzca un impacto excesivo sobre la tasa de transmisión. Un parámetro de prioridad de acuses de recibo relativo de un nodo ajusta de manera eficaz la cantidad de ancho de banda de transmisión disponible que va a ser utilizada para implementar las tasas de transmisión de los acuses de recibo y, por consiguiente, la tasa de recepción del nodo desde otro nodo.
En unas implementaciones, se proporcionan artículos de fabricación como productos de programas informáticos. Una implementación de un producto de programa informático, proporciona un medio de almacenamiento de programa de computadora legible por un sistema informático y la codificación de un programa informático. Otra implementación de programa informático puede ser proporcionado en una señal d datos de computadora incorporada en una onda portadora mediante un sistema informático y la codificación del programa informático.
Así mismo, otras implementaciones se describen y exponen en la presente memoria.
Breve descripción de los dibujos
La FIG. 1 ilustra unos enlaces de red asimétricos con una planificación de acuses de recibo de corrientes múltiples ejemplar.
La FIG. 2 ilustra un sistema ejemplar que presenta una planificación de acuses de recibo de corrientes múltiples, antes de una operación de reordenación.
La FIG. 3 ilustra el sistema ejemplar de la FIG. 2 que presenta la planificación de acuses de recibo de corrientes múltiples, después de una operación de reordenación.
La FIG. 4 ilustra unas operaciones para la planificación de acuses de recibo multihebra ejemplar.
La FIG. 5 ilustra un sistema que puede ser de utilidad en la implementación de la técnica descrita.
Descripciones detalladas
La FIG. 1 ilustra unos enlaces de red asimétricos 100 con una planificación de acuses de recibo de corrientes múltiples ejemplar. Un sistema informático 102 (por ejemplo una fuente de carga) está configurado con acceso a Internet a través de los enlaces de red asimétricos 100 con un proveedor de servicios de Internet (ISP) 104 (por ejemplo una fuente de descarga), una configuración común para un usuario doméstico que incorpora un servicio de ADSL. En la implementación ilustrada, el enlace de red asimétrico 100 incluye un enlace de carga 106 que presenta un ancho de banda de 64kbps, y un enlace de descarga 108 que presenta un ancho de banda 1024kbps, aunque también se contemplan otras tasas de transmisión. Debe entenderse que la planificación de acuses de recibo de corrientes múltiples puede así mismo, ser empleada en una configuración de enlace de red simétrico.
Cada enlace puede incluir uno o más flujos con una porción del ancho de banda del enlace asignada a cada flujo. Por ejemplo, un enlace puede incluir un flujo relacionado con la conexión con un 80% del ancho de banda total del enlace y un flujo no relacionado con la conexión con un 20% del ancho de banda total del enlace. Aplicando estas asignaciones ejemplares al supuesto de los enlaces de red asimétricos 100, la tasa de transmisión del flujo relacionado con la conexión en el enlace de carga 106 podría, por consiguiente, ser de aproximadamente 52kbps y la tasa de recepción del flujo relacionado con la conexión en el enlace de descarga 108 podría ser de aproximadamente 820kbps.
Puede haber, así mismo, múltiples corrientes operativas dentro de un flujo determinado. Por ejemplo, dentro de un flujo determinado relacionado con la conexión, puede haber una conexión o corriente de descarga de una corriente de video digital desde un contenido que proporcione un sitio web y una segunda conexión de descarga de imágenes digitales hacia un sitio web de albúnes de fotos personales. Como corrientes relacionadas con la conexión, cada una de estas corrientes comparte el ancho de banda asignado a los flujos relacionados con la conexión dentro del enlace de carga 106 y el enlace de descarga 108.
El sistema informático 102 incluye un software que proporciona una planificación de acuses de recibo de corrientes múltiples para sus comunicaciones de red. Cuando el sistema informático 102 (por ejemplo un nodo de recepción) recibe paquetes de datos descargados del ISP 104 (por ejemplo, un nodo de transmisión), la pila de red del sistema informático genera unos paquetes de acuse de recibo para ser enviados de nuevo al ISP 104. Un paquete de acuse de recibo informa al nodo de transmisión del ISP 104 que el nodo de recepción recibió un paquete de datos previamente transmitidos y está disponible para recibir otro paquete de datos. En respuesta a la recepción del paquete de acuses de recibo, el nodo de transmisión puede enviar un paquete posterior de la corriente, si es que existe alguno. En cuanto tal, los paquetes de acuse de recibo actúan como un acelerador sobre los paquetes de datos descargados -si el nodo de transmisión no recibe los paquetes de acuse de recibo de una forma suficiente rápida, la tasa de transmisión a la cual el nodo de transmisión envía los paquetes de datos puede reducirse.
Debe entenderse que algunos paquetes pueden contener tanto datos como uno o más acuses de recibo. Dichos paquetes son, así mismo, designados como “paquetes de acuse de recibo” porque acusan recibo de uno o más paquetes que contienen datos y señalan al transmisor que transmita nuevos paquetes. Los paquetes de acuse de recibo indican una cantidad de datos cuyo recibo se acusa y, por consiguiente, una cantidad de datos que pueden ser transmitidos hasta el nodo de recepción mediante el nodo de transmisión.
El impacto de la tasa de transmisión de acuses de recibo sobre la tasa de transmisión puede ser amplificado mediante un servicio de red asimétrico cuando múltiples corrientes están siendo comunicadas a través de un flujo determinado. En el ejemplo de la descarga concurrente (por ejemplo, un vídeo digital) y de corrientes de carga (imágenes digitales) las dos corrientes están compitiendo por una “canalización” más pequeña sobre el lado de carga -la corriente de carga está transmitiendo datos y la corriente de descarga está transmitido acuses de recibo. En cuanto tales, los datos de descarga, a pesar del gran ancho de banda disponible en el enlace de descarga 108, pueden ser ralentizados por un cuello de botella en el enlace de carga 106, el cual puede resultar saturado con una combinación de paquetes de datos y paquetes de acuse de recibo de múltiples corrientes.
Para aliviar el cuello de botella, un módulo planificador de acuses de recibo de múltiples corrientes implementado en un excitador de programador de paquetes asociado con la pila de redes puede reordenar los paquetes de acuse de recibo en una corriente con respecto a los paquetes de datos existentes en una corriente alternativa. Por ejemplo, una fila de espera de transmisión de la fuente de carga 102 puede incorporar un paquete de acuses de recibo de la corriente de descarga situada en fila de espera detrás de un gran paquete de datos de una corriente de carga. En cuanto tal, el paquete de acuses de recibo de la corriente de descarga puede retrasarse mientras que los datos son transmitidos a través del enlace de carga más lento 106. Mientras tanto, la corriente de descarga no está transmitiendo datos adicionales porque espera el acuse de recibo, a pesar del hecho de que el sistema informático 102 está listo para datos de descarga adicionales. Por contra, la reordenación de paquetes de acuse de recibo delante del gran paquete de datos hace posible que la corriente de descarga reciba el acuse de recibo que está esperando y, por consiguiente, la corriente de descarga puede iniciar un paquete transmitido subsecuente.
La FIG. 2 ilustra un sistema ejemplar 200 que incorpora una planificación de acuse de recibo de múltiples corrientes, antes de una operación de reordenación. Una fuente de carga 202 está acoplada sobre una red (por ejemplo Internet) a una fuente de descarga 204. La fuente de carga 202 está ejecutando una aplicación 206 que está cargando paquetes de datos en una aplicación 208 existente en la fuente de descarga 204 (por ejemplo, representando dos lados de la operación de descarga de la imagen digital) en una corriente de carga A. Un enlace de carga saturado 203 se muestra con paquetes de datos desde corrientes arbitrarias. Así mismo, la fuente de descarga 204 está ejecutando una aplicación 210 que está descargando paquetes de datos en una aplicación 204 existente en la fuente de carga 202 (por ejemplo, representando dos lados de la operación de descarga de vídeo digital) en una corriente de descarga B. Se muestra un enlace de descarga menos que saturado 205, con paquetes de acuse de recibo y datos procedentes de corrientes arbitrarias.
Cuando cada paquete de datos es recibido por una determinada fuente, el paquete de datos es marcado con un reloj fechador (o número de secuencia), el cual puede indicar el orden en el cual el paquete de datos fue recibido con respecto a otros paquetes. Un módulo de acuse de recibo 216 existente en la pila de red de la fuente de descarga 204 y un módulo de acuse de recibo 218 existente en la pila de red de la fuente de descarga 202 detectan (mostrado mediante las flechas con líneas de puntos 217 y 219) la recepción de paquetes de datos en una o más corrientes. El paquete de datos recibido es clasificado para identificar su corriente (por ejemplo una conexión con el TCP), de existir alguna. Si el paquete de datos es parte de una corriente relacionada con la conexión, un paquete de acuse de recibo para el paquete de datos recibido es enviado a una fila de espera de transmisión relacionada con la transmisión de la fuente de recepción para ser devuelto a la fuente original. Si el paquete de datos no es parte de una corriente específica de la conexión, el paquete de acuse de recibo para el paquete de datos recibido es enviado a una fila de espera de conexión relacionada con la conexión de la fuente de recepción para ser devuelto a la fuente original. En un flujo no relacionado con la conexión, la aplicación es generalmente responsable de la manipulación de cualquier acuse de recibo, caso de que exista. En la fuente de carga 202, se muestra una fila de espera de transmisión 215 relacionada con la conexión y, en la fuente de descarga 204, se muestra una fila de espera de transmisión 221 relacionada con la conexión.
La fila de espera de transmisión 215 incluye, en orden desde la parte frontal a la trasera, un paquete de datos de una corriente A, un paquete de acuses de recibo de una corriente B y un paquete de acuses de recibo de una corriente C. Los demás paquetes de datos existentes en el enlace de carga 203 proceden de otras corrientes. Cuando la fuente de carga 202 transmite el paquete de datos sobre el enlace de carga 203, los paquetes de acuse de recibo se verán retardados hasta que se complete la transmisión del paquete de datos. Mientras tanto, la fuente de descarga 204 no está transmitiendo un paquete de datos subsecuente en la corriente B hasta que reciba el correspondiente paquete de acuses de recibo para la corriente B, el cual está atascado en la fila de espera de transmisión 215 de la fuente de carga 202.
La FIG. 3 ilustra un sistema ejemplar 200 que presenta una planificación de acuses de recibo de múltiples corrientes (después de una operación de reordenación). Tal y como se muestra, el paquete de datos y uno de los paquetes de acuse de recibo han sido reordenados en la fila de espera de transmisión 215. La reordenación fue ejecutada en respuesta a la satisfacción de un conjunto de condiciones de reordenación para mantener un equilibrio deseado entre la tasa de carga y la tasa de descarga. Por ejemplo, la fuente de carga 202 puede estar configurada para favorecer a la tasa de descarga hasta cierto punto, o viceversa.
La condición de reordenación se basa en un parámetro relativo de prioridad de acuses de recibo (RAP), el cual refleja hasta qué punto una tasa de transmisión de la fuente puede ser sacrificada al retorno de los acuses de recibo de otra corriente con el fin de mejorar la tasa de transmisión de la fuente. Por ejemplo, un parámetro de prioridad de acuses de recibo relativos que sea igual a “1” representa que los paquetes de acuse de recibo siempre obtienen una prioridad más alta respecto de los paquetes de datos. Por ejemplo, puede decirse que a los acuses de recibo se les asigna una fracción de la tasa de transmisión RT (por ejemplo un RAP* RT) y a los datos se les asigna la fracción restante de la tasa de transmisión RT (por ejemplo, 1 -RAP) * RT. Este parámetro de prioridad de acuses de recibo relativo puede ajustarse para proporcionar un compromiso deseado entre las tasas de recepción y transmisión de comunicaciones con múltiples corrientes. En una implementación, un parámetro de prioridad de acuses de recibo relativo de 1/8 se considera que proporciona resultados aceptables aunque, así mismo, se contemplan otros valores de parámetro. En este caso, el parámetro indica que 1/8 de la tasa de transmisión puede ser asignado a los paquetes de acuse de recibo reordenados.
Un parámetro RAP alternativo puede basarse en la relación de acuses de recibo con respecto a los datos sobre el enlace. En esta propuesta, a los acuses de recibo se les asigna una porción de la tasa de transmisión RT (por ejemplo, RT* RAP / 1 + RAP)) y a los datos se les asigna la porción restante de la tasa de transmisión RT (por ejemplo RT * (1 / (1 + RAP)).
La FIG. 4 ilustra unas operaciones 400 para una planificación ejemplar de acuses de recibo multihebra en un primer nodo, en la que el primer nodo está recibiendo paquetes de datos en un segundo nodo y está transmitiendo paquetes de datos al segundo nodo o a algún otro nodo. Una primera operación de examen 402 examina un primer paquete existente en una fila de espera de transmisión, en la que el primer paquete no necesita ser el paquete
5 situado en primer término de la fila de espera de transmisión sino que está simplemente más alejado en la posición delantera de la fila de espera de transmisión de los otros paquetes examinados en las operaciones 400. La operación de examen 402 registra la conexión con el TCP del primer paquete, el tamaño del paquete (T1) y la tasa de transmisión (RT) del flujo de comunicaciones asociado con la fila de espera de transmisión.
Sobre la base de esta información, una operación de predicción 404 computa la duración de transmisión del primer
10 paquete (esto es, el tiempo que se tardaría en transmitir el primer paquete completo) en una tasa de transmisión “descontada”, RD, la cual se determina sobre la base del parámetro de prioridad de acuses de recibo relativa, RAP. En términos generales, la tasa de transición descontada representa la tasa de transmisión parcial experimentada por el paquete de datos si una porción de la tasa de transmisión fuera sacrificada para actualizar la prioridad de ciertos paquetes de acuse de recibo. Por consiguiente, la tasa de transmisión descontada es más lenta que la tasa de
15 transmisión del flujo de comunicaciones. En una implementación, la tasa de transmisión descontada es computada como sigue, aunque se contemplan otros algoritmos:
RD= (1 -RAP) RT
Por consiguiente, la duración de transmisión prevista, D1, del primer paquete a la tasa de transmisión descontada puede ser computada utilizado:
P1
RD
Otra operación de examen 406 examina un segundo paquete de la fila de espera de transmisión, estando este
25 segundo paquete situado en fila de espera para transmitir en un momento posterior respecto del primer paquete. El segundo paquete puede ser ordenado directamente detrás del primer paquete o en alguna posición más retrasada de la fila de espera de transmisión. La operación de examen 406 registra la conexión con el TCP del segundo paquete, el tamaño del paquete (P2), y la tasa de transmisión (RT) del flujo de comunicaciones asociado con la fila de espera de transmisión. Si el segundo paquete está en la misma corriente que el primer paquete, se selecciona otro
30 paquete y se examina hasta que un paquete de una corriente diferente es localizado.
Sobre la base de esta información, una operación de predicción 408 computa la duración de la transmisión del primer paquete y del segundo paquete (esto es, el tiempo que se tardaría para transmitir tanto el primero como el segundo paquetes) a la tasa de transmisión estándar, RT. Por consiguiente, la duración de transmisión prevista D2 del primer y segundo paquetes a la tasa de transmisión estándar puede ser computada utilizando:
(P1+ P2)
RT
35 Como se comprobó mediante la operación de decisión 410, si D2 : 01 (una condición de reordenación), entonces el segundo paquete puede ser replanificado para ser transmitido desde la fila de espera de transmisión delante del primer paquete en la operación de replanificación 412. Si el segundo paquete es un paquete de acuse de recibo, la reordenación reduce la latencia del acuse de recibo desde el primer nodo e incrementa la tasa a la cual el primer nodo recibe datos desde el segundo nodo. Por consiguiente, una operación de continuación 414 reinicia el
40 procesamiento con un paquete subsecuente de una fila de espera de transmisión.
En otra implementación, la primera operación de examen 402 examina un primer paquete y un segundo paquete de la fila de espera de transmisión, en la que el primer paquete no necesita ser el paquete situado en la posición delantera de la fila de transmisión, sino que puede estar simplemente más alejado en posiciones delanteras en la fila de espera de transmisión de otros paquetes examinados en las operaciones 400. La operación de examen 402
45 registra la conexión con el TCP de los primero y segundo paquetes, los tamaños de los paquetes (P1y P2) y la tasa de transmisión (RT) del flujo de comunicaciones asociado con la fila de espera de transmisión. Por consiguiente, la duración de transisión prevista D1, de los primero y segundo paquetes a la tasa de transmisión descontada puede ser computada utilizando:
(P1 + P2)
RD
5 En esta implementación, la operación de examen 406 examina un tercer paquete de la fila de espera de transmisión. La operación de examen 406 registra las conexiones con el TCP del tercer paquete, el tamaño del paquete (P3), y la tasa de transmisión (RT) del flujo de comunicaciones asociado con la fila de espera de transmisión. Si el tercer paquete está en la misma corriente que o bien el primero o el segundo paquetes, se elige otro paquete y se examina hasta que un paquete de una corriente diferente se localiza.
10 Sobre la base de esta información, la información de predicción 408 computa la duración de transmisión del primer paquete, del segundo paquete y del tercer paquete a la tasa de transmisión estándar, RT. Por consiguiente, la duración de transmisión prevista, D2, de los primero, segundo y tercer paquetes a la tasa de transmisión estándar puede ser computada utilizando:
(P1+ P2 + P3)
RT
Tal y como se comprobó mediante la operación de decisión 410, si D2 : D1 (una condición de reordenación),
15 entonces el tercer paquete puede ser replanificado para ser transmitido desde la fila de espera de transmisión delante del primer paquete en la operación de replanificación 412. Si el segundo paquete es un paquete de acuse de recibo, la reordenación reduce la latencia del acuse de recibo desde el primer nodo e incrementa la tasa a la cual el primer nodo recibe los datos procedentes del segundo nodo. A continuación, la operación de continuación 414 reinicia el procesamiento con un paquete subsecuente de la fila de espera de transmisión.
20 En una forma de realización alternativa, la condición de reordenación específica descrita con anterioridad respecto de dos paquetes puede no ser satisfecha, sino que la reordenación puede todavía llevarse a cabo si un tercer paquete contribuye a satisfacer una acción de reordenación alternativa. Si D2 : D1, entonces los paquetes P1 y P2 no son reordenados, pero la diferencia entre D1 y el tiempo real de transmisión P1 (que es P1/ RT) puede ser designado como un “acarreo”, el cual puede ser combinado con comparaciones de un par de paquetes subsecuentes (o
25 conjunto de paquetes) para satisfacer la condición de reordenación alternativa. El acarreo puede ser computado utilizando:
P1P1 P1
�= D1-= -
Por ejemplo, considérense paquetes de los tamaños P1, P2y P3 desplazándose en orden a través de una fila de espera de transmisión (esto es, P1 es planificado para transmitir en primer término, a continuación P2, y a continuación P3), ninguno de los cuales satisface la condición de reordenación D2 : D1. No obstante, la diferencia
30 (�1) entre D1 para el paquete P1 y la P1/ RT para P1 y la diferencia entre D1 para el paquete P2y D2 para el P2y P3 puede todavía justificar una reordenación -si (D2-�1) no es mayor que D1 para P2, entonces P3 puede ser reordenado delante de P1o P2. Debe entenderse, sin embargo, que P1 puede ya ser transmitido en este punto de forma que solamente es factible una reordenación de P3 con P2.
En otra implementación adicional, la tasa de recepción elegida como objetivo para el nodo de recepción puede
35 afectar a la reordenación. Por ejemplo, puede ser posible reordenar los paquetes de acuse de recibo existentes en el nodo de recepción de tal manera que no excedan la tasa de recepción del flujo. Creando de esta manera un cuello de botella en la fila de espera de transmisión del nodo de transmisión, designado como latencia de la fila de espera. Este resultado no es generalmente deseable. Por consiguiente, puede ser ventajoso incorporar determinadas consideraciones de la tasa de recepción en la condición de reordenación.
40 En una implementación, un paquete de acuse de recibo indica una cantidad A de datos de los que el nodo de recepción está acusando recibo. La cantidad de datos (“cantidad de acuses de recibo”) informa al nodo de transmisión que queda libre para transmitir al menos A datos más para la corriente relacionada. En cuanto tal, las cantidades de acuse de recibo de múltiples corrientes pueden ser supervisadas para predecir de modo aproximado la cantidad de datos por segundo que deben ser transmitidos por el nodo de transmisión en respuesta a la recepción de los paquetes de acuse de recibo. Esta tasa de transmisión prevista del nodo de transmisión es efectivamente la tasa de recepción del flujo específico de la conexión en el enlace de recepción, y los acuses de recibo procedentes del nodo de recepción pueden ser gestionados para impedir que la tasa de transmisión prevista del nodo de
5 transmisión exceda de la tasa de transmisión del flujo específico de la conexión del enlace de recepción.
La tasa de recepción limitativa puede ser combinada con implementaciones de planificación de acuses de recibo descritos en la presente memoria para mejorar en mayor medida el rendimiento de la comunicación global. Por ejemplo, la duración de la tasa prevista de un paquete de acuses de recibo donde el tamaño del paquete es P1 se representa mediante
P1
D1 Tx =
RD
10 y una duración de recepción eficaz D1Rx atribuida a un primer paquete de acuses de recibo iguala la cantidad A1 de acuses de recibo dividida por la tasa de recepción de descarga, RR desde el nodo de transmisión hasta el nodo de recepción o
A1
D1 Rx =
RR
El componente D2 de la tasa completa de los paquetes de acuse de recibo se representa mediante
P1 P1
, D1Rx
+ max
, D2Rx RT RD
o en una implementación alternativa mediante
RT
Una condición de reordenación de D2 : max(D1Tx, D2Rx) puede entonces ser aplicada.
15 El hardware y el entorno operativo ejemplares de la FIG. 6, para la implementación de la invención incluye un dispositivo informático de propósito general bajo la forma de una computadora 20, que incluye una unidad de procesamiento 21, una memoria 22 del sistema, y un bus 23 del sistema que acopla de forma operativa diversos componentes del sistema, incluyen la memoria del sistema sobre la unidad de procesamiento 21. Puede haber solo una o más de una unidad de procesamiento 21, de tal manera que el procesador de la computadora 20 comprenda
20 una sola unidad de procesamiento central (UPC) o una pluralidad de unidades de procesamiento, habitualmente designadas como entorno de procesamiento. La computadora 20 puede ser una computadora convencional, una computadora distribuida o cualquier otro tipo de computadora; la invención no está limitada en este sentido.
El bus 23 del sistema puede ser cualquiera de los diversos tipos de estructuras de bus que incluyan un bus de memoria o un controlador de memoria, un bus periférico, una estructura conmutada, unas conexiones punto a punto, 25 y un bus local que utilice cualquiera entre una diversidad de arquitecturas de bus. La memoria del sistema puede, así mismo, ser designada como simplemente la memoria, e incluye una memoria de solo lectura (ROM) 24 y una
memoria de acceso aleatorio (RAM) 25. Un sistema básico de entrada / salida (BIOS) 26, que contiene las rutinas básicas que ayudan a transferir la información entre los elementos situados dentro de la computadora 20, como por ejemplo durante el arranque, está almacenado en la ROM 24. La computadora 2 incluye así mismo una unidad de disco duro 27 para leer a partir de y escribir hacia un disco duro, no mostrado, una unidad de disco magnético 28 para leer a partir de o escribir hacia un disco magnético extraíble 29, y una unidad de disco óptico 30 para leer a partir de o escribir hacia un disco óptico extraíble 31 como por ejemplo un CD-ROM u otro medio óptico.
La unidad de disco duro 27, la unidad de disco magnético 28, y la unidad de disco óptico 30, están conectadas al bus 23 del sistema mediante una interfaz de accionamiento 32 del disco duro, una interfaz de accionamiento 33 del disco magnético, y una interfaz de accionamiento 34 del disco óptico, respectivamente. Las unidades y sus medios asociados legibles por computadora proporcionan un almacenamiento no volátil de las instrucciones legibles por computadora, las estructuras de datos, módulos de programa y otros datos para la computadora 20. Debe apreciarse por parte de los expertos en la materia que cualquier tipo de medio legible por computadora que pueda almacenar datos que sean accesibles por una computadora, como por ejemplo casetes magnéticos, tarjetas de memoria flash, discos de vídeo digitales, memorias de acceso aleatorio (RAMs), memorias de solo lectura (ROMs), y similares, pueden ser utilizados en el entorno operativo ejemplar.
Una pluralidad de módulos de programa puede ser utilizados en el disco duro, en el disco magnético 29, en el disco óptico 31, la ROM 24, o la RAM 25, incluyendo un sistema operativo 35, uno o más programas de aplicación 36, otros módulos de programa 37 y unos datos de programa 38. Un usuario puede introducir comandos o información en la computadora personal 20 a través de unos dispositivos de entrada, como por ejemplo un teclado 40 o un dispositivo de señalización 42. Otros dispositivos de entrada (no mostrados) pueden incluir un micrófono, una palanca de mando, una palanca para juegos, una antena parabólica, un escáner o similares. Estos y otros dispositivos de entrada están a menudo conectados a la unidad de procesamiento 21 por medio de una interfaz de puerto serie 46 que está acoplada al bus del sistema, pero puede estar conectada por otras interfaces, como por ejemplo un puerto paralelo, un puerto para juegos, un puerto serie universal (USB). Un monitor 47 u otro tipo de dispositivo de representación está, así mismo, conectado al bus 23 del sistema por medio de una interfaz, como por ejemplo un adaptador de vídeo 48. Además del monitor, las computadoras típicamente incluyen otros tipos de salida periféricos (no mostrados) como por ejemplo altavoces o impresoras.
La computadora 20 puede operar en un entorno de conexión a red utilizando conexiones lógicas con una o más computadoras remotas como por ejemplo una computadora remota 49. Estas conexiones lógicas se consiguen mediante un dispositivo de comunicación acoplado a una parte de la computadora 20; la invención no está limitada a un tipo concreto de dispositivo de comunicaciones. La computadora remota 49 puede ser otra computadora, un servidor, un encaminador, un PC de red, un cliente, un dispositivo homólogo u otro nodo de red común y, típicamente, incluye muchos o todos los elementos descritos con anterioridad con respecto a la computadora 20, aunque solo se ha ilustrado en la FIG. 10 el dispositivo de almacenamiento de memoria 50. Las conexiones lógicas mostradas en la FIG. 6, incluyen una red de área local (LAN) 51 y una red de área extensa (WAN) 52. Dichos entornos de conexión a red son habituales en redes de oficinas, en redes informáticas de ámbito corporativo, intranets e Internet, los cuales son todos tipos de redes.
Cuando se utiliza en un entorno de conexión a red con una LAN, la computadora 20 está conectada a la red local 51 por medio de una interfaz de red o adaptador 53, el cual es un tipo de dispositivo de comunicaciones. Cuando se utiliza en un entorno de conexión a red de una WAN, la computadora 20 típicamente incluye un módem 54, un adaptador a la red, un tipo de dispositivo de comunicaciones o cualquier otro tipo de dispositivo de comunicaciones de establecimiento de comunicaciones a través de la red de área extensa 52. El módem 54, el cual puede estar incluido dentro o estar por fuera, está conectado al bus 23 del sistema por medio de la interfaz de puerto serie 46. En un entorno de conexión a red, unos módulos de programa mostrados con respecto a la computadora personal 20
o porciones de éstos, pueden ser almacenados en el dispositivo de almacenamiento de memoria remoto. Se aprecia que las conexiones de red mostradas son ejemplares y que pueden ser utilizados otros medios y dispositivos de comunicaciones para el establecimiento de un enlace de comunicaciones entre las computadoras.
En una implementación ejemplar, el módulo de planificación, el bloque de decisión , y los demás módulos pueden ser incorporados como parte del sistema operativo 35, de los programas de aplicación 36, o de otros módulos de programa 37. El tamaño de los paquetes, las duraciones de transmisión y otros datos pueden ser almacenados como datos de programa 38.
La técnica descrita en la presente memoria es implementada como operaciones y / o módulos lógicos en uno o más sistemas. Las operaciones lógicas pueden ser implementadas (1) como consecuencia de unas etapas implementadas por procesador que se ejecuten en uno o más sistemas informáticos y (2) como una máquina o módulos de circuito interconectados dentro de uno o más sistemas informáticos. Así mismo, las descripciones de diversos módulos de componentes pueden suministrarse en términos de operaciones ejecutadas o efectuadas por los módulos. La implementación resultante es una cuestión de elección, dependiente de las exigencias de rendimiento del sistema subyacente que implemente la técnica descrita. De acuerdo con ello, las operaciones lógicas que forman parte de los elementos de la técnica descrita en la presente memoria son designadas de manera diversa como operaciones, etapas, objetivos o módulos. Así mismo, debe entenderse que las operaciones lógicas pueden ser llevadas a cabo en cualquier orden a menos que se reivindique de manera explícita lo contrario o se requiera de forma inherente un orden específico mediante el lenguaje de las reivindicaciones.
La memoria descriptiva precedente, los ejemplos, y los datos proporcionan una descripción completa de la estructura y del uso y de las formas de realización ejemplares de la invención. Dado que muchas formas de realización de la invención pueden llevarse a cabo sin apartarse del alcance de la misma, la invención reside en las reivindicaciones adjuntas en el apartado que sigue. En particular, debe entenderse que la técnica descrita puede ser empleada de forma independiente respecto de una computadora personal. Por consiguiente se contemplan otras formas de realización.
Claims (16)
- REIVINDICACIONES1.-Un procedimiento (400) para controlar un tráfico de red entre un primer nodo y un segundo nodo, comprendiendo el procedimiento:el mantenimiento de una fila de espera de transmisión para un flujo de comunicaciones, estando el flujo de comunicaciones asociado con una tasa de transmisión, conteniendo la fila de espera de la transmisión un primer paquete asociado con una primera corriente del flujo de comunicaciones y un segundo paquete asociado con una segunda corriente del flujo de comunicaciones, estando el primer paquete ordenado delante del segundo paquete en la fila de espera de transmisión;la predicción (404) de una duración de la transmisión del primer paquete cuando este es transmitido a una tasa más lenta que la tasa de transmisión del flujo de comunicaciones;la predicción (408) de una duración de la transmisión tanto del primero como del segundo paquetes cuando son transmitidos a la tasa de transmisión del flujo de comunicaciones; yla reordenación (412) del primer paquete y del segundo paquete en la fila de espera de la transmisión, si el primer paquete y el segundo paquete satisfacen una condición de reordenación, siendo la condición de reordenación satisfecha si la duración de transmisión prevista del primero y del segundo paquetes a la tasa de transmisión del flujo de comunicaciones es inferior a la duración de transmisión prevista del primer paquete a una tasa más lenta.
- 2.-El procedimiento de la reivindicación 1, en el que el flujo de comunicaciones está asociada con una tasa de transmisión procedente del primer nodo.
- 3.-El procedimiento de la reivindicación 1, en el que el segundo paquete es más pequeño que el primer paquete.
- 4.-El procedimiento de la reivindicación 1, en el que el segundo paquetes es un paquete de acuses de recibo.
- 5.-El procedimiento de la reivindicación 1, en el que el segundo paquete es un paquete de datos.
- 6.-El procedimiento de la reivindicación 1, en el que la fila de espera de transmisión incluye un tercer paquete del flujo de comunicaciones, no estando el tercer paquete asociado con la primera corriente, y que comprende así mismo:la predicción de una duración de transmisión del tercer paquete cuando este es transmitido a la tasa de transmisión del flujo de comunicaciones.
- 7.-El procedimiento de la reivindicación 6, en el que la condición de reordenación se satisface si la duración de transmisión prevista de los primero, segundo y tercer paquetes a la tasa de transmisión del flujo de comunicaciones es inferior a la duración de transmisión prevista del primer paquete a la tasa más lenta.
- 8.-El procedimiento de la reivindicación 1, en el que la fila de espera de transmisión incluye un tercer paquete en el flujo de comunicaciones y así mismo comprende:la predicción de una duración de transmisión del tercer paquete cuando este es transmitido a una tasa de transmisión del flujo de comunicaciones;la predicción de una duración de transmisión del segundo paquete cuando este es transmitido a una tasa más lenta que la tasa de transmisión del flujo de comunicaciones; en el que la condición de reordenación se satisface si la transmisión de duración prevista de los segundo y tercer paquetes a la tasa de transmisión del flujo de comunicaciones es inferior a la transmisión prevista del segundo paquete a la tasa más lenta menos una cantidad de acarreo mediante la cual la duración de transmisión prevista del primer paquete difiere de la duración de la transmisión prevista del primer paquete a la tasa más lenta.
- 9.-El procedimiento de la reivindicación 1, en el que al menos uno de los primero y segundo paquetes es un paquete de acuses de recibo que acusa recibo de una cantidad de datos recibidos en un flujo de comunicaciones de recepción, y la condición de reordenación se satisface si la cantidad de datos cuyo recibo es acusado por al menos uno de los primero y segundo paquetes de datos se prevé que no excede la tasa de recepción del flujo de comunicaciones de recepción.
- 10.-Un medio legible por computadora que incorpora unas instrucciones ejecutables por computadora para llevar a cabo un proceso informático que implementa el procedimiento de la reivindicación 1.
- 11.-Un nodo de comunicaciones (202) para controlar un tráfico de red con un segundo nodo (204), comprendiendo el nodo de comunicaciones:una fila de espera de transmisión (215) para un flujo de comunicaciones, estando el flujo de comunicaciones asociado con una tasa de transmisión, conteniendo la fila de espera de transmisión un primer paquete asociado con una primera corriente del flujo de comunicaciones y un segundo paquete asociado con una segunda corriente del flujo de comunicaciones, estando el primer paquete ordenado delante del segundo paquete en la fila de espera de transmisión; yun planificador dispuesto para:la predicción de una duración de transmisión del primer paquete cuando este es transmitido a una tasa más lenta que la tasa de transmisión del flujo de comunicaciones;la predicción de una duración tanto del primero como del segundo paquetes cuando son transmitidos a la tasa de transmisión del flujo de comunicaciones; yla reordenación del primer paquete y del segundo paquete de la fila de espera de transmisión, si el primer paquete y el segundo paquete satisfacen una condición de reordenación, siendo la condición de reordenación satisfecha si la duración de transmisión prevista de los primero y segundo paquetes a la tasa de transmisión del flujo de comunicaciones es inferior a la duración de transmisión prevista del primer paquete a la tasa más lenta.
- 12.-El nodo de comunicaciones de la reivindicación 11, en el que el flujo de comunicaciones está asociado con una tasa de transmisión desde el nodo de comunicaciones.
- 13.-El nodo de comunicaciones de la reivindicación 11, en el que el segundo paquete es un paquete de acuses de recibo.
- 14.-El nodo de comunicaciones de la reivindicación 11, en el que el segundo paquete es un paquete de datos.
- 15.-El nodo de comunicaciones de la reivindicación 11, en el que la fila de espera de transmisión incluye un segundo paquete del flujo de comunicaciones, no estando el tercer paquete asociado con la primera corriente, y el planificador está así mismo dispuesto para predecir una duración de transmisión del tercer paquete cuando este es transmitido a la tasa de transmisión del flujo de comunicaciones.
- 16.-El nodo de comunicaciones de la reivindicación 15, en el que la condición de reordenación se satisface si la duración de transmisión prevista de los primero, segundo y tercer paquetes a la tasa de transmisión del flujo de comunicaciones es inferior a la duración de transmisión prevista del primer paquete a la tasa más lenta.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/153,721 US7606234B2 (en) | 2005-06-14 | 2005-06-14 | Multi-stream acknowledgement scheduling |
US153721 | 2005-06-14 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2371186T3 true ES2371186T3 (es) | 2011-12-28 |
Family
ID=37571169
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES06773260T Active ES2371186T3 (es) | 2005-06-14 | 2006-06-14 | Plantificación de acuse de recibo de corrientes múltiples. |
Country Status (8)
Country | Link |
---|---|
US (1) | US7606234B2 (es) |
EP (1) | EP1889421B1 (es) |
KR (1) | KR101242338B1 (es) |
CN (1) | CN101375251B (es) |
AT (1) | ATE525692T1 (es) |
DK (1) | DK1889421T3 (es) |
ES (1) | ES2371186T3 (es) |
WO (1) | WO2006138472A2 (es) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7606234B2 (en) * | 2005-06-14 | 2009-10-20 | Microsoft Corporation | Multi-stream acknowledgement scheduling |
JP4755254B2 (ja) * | 2005-11-01 | 2011-08-24 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | 無線通信システムにおける方法および装置 |
US7944930B2 (en) * | 2005-12-09 | 2011-05-17 | Cisco Technology, Inc. | Memory buffering with fast packet information access for a network device |
WO2008148173A1 (en) * | 2007-06-07 | 2008-12-11 | Smart Internet Technology Crc Pty Ltd | A system and method for improving throughput in a network device |
US8351330B2 (en) * | 2008-02-20 | 2013-01-08 | Novatel Wireless, Inc. | System and method for traffic prioritization |
EP2291957B1 (en) * | 2008-06-16 | 2014-07-02 | Telefonaktiebolaget L M Ericsson (publ) | Media stream processing |
US8194543B2 (en) * | 2008-12-18 | 2012-06-05 | Intel Mobile Communications GmbH | Methods of data traffic shaping, apparatus and wireless device |
US20100165838A1 (en) * | 2008-12-30 | 2010-07-01 | Yury Bakshi | Method and apparatus for improving data throughput in a network |
US20120327943A1 (en) * | 2010-03-02 | 2012-12-27 | Udayan Kanade | Media Transmission Over a Data Network |
KR101402483B1 (ko) * | 2012-09-25 | 2014-06-03 | 고려대학교 산학협력단 | 네트워크 전송 장치 및 방법 |
FR3037750A1 (fr) | 2015-06-18 | 2016-12-23 | Orange | Procede et dispositif de gestion de paquets dans une connexion multi-flux et multi-protocole |
JP6323480B2 (ja) | 2016-03-02 | 2018-05-16 | 住友電気工業株式会社 | プログラム更新システム、プログラム更新方法及びコンピュータプログラム |
JP7031630B2 (ja) | 2019-03-20 | 2022-03-08 | オムロン株式会社 | パイプライン演算装置、プログラマブルロジックコントローラ、及び、パイプライン処理の実行方法 |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5612950A (en) * | 1993-05-27 | 1997-03-18 | Rockwell International Corporation | Managing communication on an unstable error-prone channel |
US6247061B1 (en) * | 1998-06-09 | 2001-06-12 | Microsoft Corporation | Method and computer program product for scheduling network communication packets originating from different flows having unique service requirements |
US6452915B1 (en) * | 1998-07-10 | 2002-09-17 | Malibu Networks, Inc. | IP-flow classification in a wireless point to multi-point (PTMP) transmission system |
US6351454B1 (en) * | 1998-07-24 | 2002-02-26 | Cisco Technology, Inc. | Apparatus and method for maintaining packet ordering over parallel links of a crossbar based switch fabric |
FI105641B (fi) * | 1998-08-10 | 2000-09-15 | Nokia Mobile Phones Ltd | Resurssien varaus pakettimuotoisessa tiedonsiirrossa |
US6289224B1 (en) * | 1998-10-29 | 2001-09-11 | Motorola, Inc. | Method and apparatus for starting an acknowledgment timer |
US6411617B1 (en) * | 1998-12-10 | 2002-06-25 | Nokia Telecommunications, Oy | System and method for managing data traffic associated with various quality of service principles using a conventional network node switch |
US6868061B1 (en) * | 1998-12-10 | 2005-03-15 | Nokia Corporation | System and method for pre-filtering low priority packets at network nodes in a network service class utilizing a priority-based quality of service |
US6791989B1 (en) * | 1999-12-30 | 2004-09-14 | Agilent Technologies, Inc. | Fibre channel interface controller that performs non-blocking output and input of fibre channel data frames and acknowledgement frames to and from a fibre channel |
TW477133B (en) * | 2000-04-01 | 2002-02-21 | Via Tech Inc | Method for solving network congestion and Ethernet switch controller using the same |
US6657962B1 (en) | 2000-04-10 | 2003-12-02 | International Business Machines Corporation | Method and system for managing congestion in a network |
US7140016B2 (en) * | 2000-11-29 | 2006-11-21 | Texas Instruments Incorporated | Media accelerator quality of service |
ATE260007T1 (de) * | 2001-03-30 | 2004-03-15 | Cit Alcatel | Verfahren zum multiplexen zweier datenflüsse auf einen funkkommunikationskanal und dazugehörender sender |
US20030056000A1 (en) * | 2001-07-26 | 2003-03-20 | Nishan Systems, Inc. | Transfer ready frame reordering |
US7284047B2 (en) * | 2001-11-08 | 2007-10-16 | Microsoft Corporation | System and method for controlling network demand via congestion pricing |
US20030103453A1 (en) | 2001-12-05 | 2003-06-05 | Broadweb Corporation | System and method for managing flow bandwidth utilization in a packet communication environment |
US7039013B2 (en) * | 2001-12-31 | 2006-05-02 | Nokia Corporation | Packet flow control method and device |
FI20020673A0 (fi) | 2002-04-09 | 2002-04-09 | Nokia Corp | Ajantasaisen pakettidatan pakettien ajoittaminen |
US7142513B2 (en) | 2002-05-23 | 2006-11-28 | Yea-Li Sun | Method and multi-queue packet scheduling system for managing network packet traffic with minimum performance guarantees and maximum service rate control |
US7792121B2 (en) * | 2003-01-03 | 2010-09-07 | Microsoft Corporation | Frame protocol and scheduling system |
US7155236B2 (en) * | 2003-02-18 | 2006-12-26 | Qualcomm Incorporated | Scheduled and autonomous transmission and acknowledgement |
WO2005046282A1 (ja) * | 2003-11-07 | 2005-05-19 | Mitsubishi Denki Kabushiki Kaisha | 移動局、通信システム、通信制御方法 |
US7751421B2 (en) * | 2004-12-29 | 2010-07-06 | Alcatel Lucent | Traffic generator and monitor |
US7606234B2 (en) * | 2005-06-14 | 2009-10-20 | Microsoft Corporation | Multi-stream acknowledgement scheduling |
US7796550B2 (en) * | 2005-12-13 | 2010-09-14 | General Instrument Corporation | Method and apparatus for packet scheduling in a wireless network |
US20080089351A1 (en) * | 2006-10-13 | 2008-04-17 | Chunfeng Hu | Flow control in communication networks |
-
2005
- 2005-06-14 US US11/153,721 patent/US7606234B2/en not_active Expired - Fee Related
-
2006
- 2006-06-14 EP EP06773260A patent/EP1889421B1/en not_active Not-in-force
- 2006-06-14 DK DK06773260.2T patent/DK1889421T3/da active
- 2006-06-14 CN CN2006800172073A patent/CN101375251B/zh not_active Expired - Fee Related
- 2006-06-14 KR KR1020077026489A patent/KR101242338B1/ko active IP Right Grant
- 2006-06-14 AT AT06773260T patent/ATE525692T1/de not_active IP Right Cessation
- 2006-06-14 ES ES06773260T patent/ES2371186T3/es active Active
- 2006-06-14 WO PCT/US2006/023331 patent/WO2006138472A2/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
DK1889421T3 (da) | 2011-11-21 |
EP1889421B1 (en) | 2011-09-21 |
KR20080022079A (ko) | 2008-03-10 |
ATE525692T1 (de) | 2011-10-15 |
WO2006138472A2 (en) | 2006-12-28 |
CN101375251A (zh) | 2009-02-25 |
US20070002863A1 (en) | 2007-01-04 |
KR101242338B1 (ko) | 2013-03-11 |
WO2006138472A3 (en) | 2008-07-17 |
EP1889421A2 (en) | 2008-02-20 |
US7606234B2 (en) | 2009-10-20 |
CN101375251B (zh) | 2012-03-21 |
EP1889421A4 (en) | 2010-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2371186T3 (es) | Plantificación de acuse de recibo de corrientes múltiples. | |
US8045463B2 (en) | Path estimation in a wireless mesh network | |
US11012367B2 (en) | Technologies for managing TCP/IP packet delivery | |
US10721187B1 (en) | Emulating output queued behavior in a virtual output queue switch | |
He et al. | Reliable blast UDP: Predictable high performance bulk data transfer | |
US10116574B2 (en) | System and method for improving TCP performance in virtualized environments | |
CN113711547A (zh) | 促进网络接口控制器(nic)中的高效包转发的系统和方法 | |
US9961585B2 (en) | Network-side buffer management | |
US20210297350A1 (en) | Reliable fabric control protocol extensions for data center networks with unsolicited packet spraying over multiple alternate data paths | |
US20210297351A1 (en) | Fabric control protocol with congestion control for data center networks | |
US20060203730A1 (en) | Method and system for reducing end station latency in response to network congestion | |
BRPI0617705A2 (pt) | controle de banda adaptativo | |
US8989011B2 (en) | Communication over multiple virtual lanes using a shared buffer | |
US8755278B2 (en) | Methods of data traffic shaping, apparatus and wireless device | |
ES2856155T3 (es) | Transmisión de mensajes mediante componentes de aceleración configurados para acelerar un servicio | |
WO2019001484A1 (zh) | 一种实现发送端调速的方法、装置和系统 | |
CN105025524A (zh) | 一种多路径并行传输数据调度方法及传输控制协议 | |
Bianco et al. | Open-source PC-based software routers: A viable approach to high-performance packet switching | |
US20210297343A1 (en) | Reliable fabric control protocol extensions for data center networks with failure resilience | |
US20240314203A1 (en) | RDMA NIC Utilizing Packet Level Request and Response Interleaving | |
CN111224884A (zh) | 拥塞控制的处理方法、报文转发装置及报文接收装置 | |
WO2024061042A1 (zh) | 数据传输方法和数据传输系统 | |
Gavrilovska | High Performance IP-Based Transports | |
Roweth et al. | HPE Slingshot Launched into Network Space | |
Deng et al. | ADPSM: An Adaptive Delay-based Packet Splitting Mechanism for Concurrent Multipath Transfer over heterogeneous paths |