ES2953738T3 - Agregación de enlaces con fragmentación de segmentos de datos - Google Patents

Agregación de enlaces con fragmentación de segmentos de datos Download PDF

Info

Publication number
ES2953738T3
ES2953738T3 ES19701642T ES19701642T ES2953738T3 ES 2953738 T3 ES2953738 T3 ES 2953738T3 ES 19701642 T ES19701642 T ES 19701642T ES 19701642 T ES19701642 T ES 19701642T ES 2953738 T3 ES2953738 T3 ES 2953738T3
Authority
ES
Spain
Prior art keywords
link
data
data segment
communication
communication link
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
Application number
ES19701642T
Other languages
English (en)
Inventor
Per-Arne Thorsèn
Pierre Hygren
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Telefonaktiebolaget LM Ericsson AB
Original Assignee
Telefonaktiebolaget LM Ericsson AB
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from PCT/EP2018/052399 external-priority patent/WO2019149351A1/en
Priority claimed from PCT/EP2018/052394 external-priority patent/WO2019149349A1/en
Application filed by Telefonaktiebolaget LM Ericsson AB filed Critical Telefonaktiebolaget LM Ericsson AB
Application granted granted Critical
Publication of ES2953738T3 publication Critical patent/ES2953738T3/es
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0252Traffic management, e.g. flow control or congestion control per individual bearer or channel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/0289Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • H04W28/065Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information using assembly or disassembly of packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/34Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Un método para la agregación de enlaces de una pluralidad de enlaces de comunicación, realizado en una disposición de comunicación, comprendiendo el método; obtener un segmento de datos (210) para transmitir, identificar un enlace de comunicación preferido entre la pluralidad de enlaces de comunicación para la transmisión del segmento de datos y, si el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro de un tiempo actual período, identificar un enlace de comunicación alternativo entre la pluralidad de enlaces de comunicación diferentes del enlace de comunicación preferido, fragmentar el segmento de datos (210) en al menos un primer fragmento (210a) y un segundo fragmento (210b), adjuntar un encabezado de fragmento (220, 230) a cada uno de los fragmentos primero y segundo, estando configurado cada encabezado de fragmento para identificar el fragmento respectivo como un fragmento que pertenece a un segmento de datos, y transmitiendo el primer fragmento (210a) a través del enlace de comunicación alternativo. (Traducción automática con Google Translate, sin valor legal)

Description

DESCRIPCIÓN
Agregación de enlaces con fragmentación de segmentos de datos
Campo técnico
La presente descripción se refiere a agregación de enlaces de una pluralidad de enlaces de comunicación, realizada en una disposición de comunicación de transmisor y una disposición de comunicación de receptor que juntas forman un sistema de comunicación. Los enlaces de comunicación de datos pueden comprender enlaces de comunicación de datos por cable o inalámbricos.
Antecedentes
Para los enlaces de comunicación, se conoce agregar dos o más enlaces para aumentar la capacidad de transmisión de datos. Existen varias formas para agregar enlaces para aumentar el ancho de banda de datos entre dos puntos en una red.
Una forma de hacer esto es la Vinculación de Enlaces de Comunicación o la Vinculación de Enlaces de Radio (RLB), que se refiere a esquemas de capa uno (L1) y es independiente de la capa dos (L2) y de las capas de protocolo superiores. Vinculación significa que diferentes partes del tráfico se transmiten a través de diferentes enlaces y se vuelven a ensamblar cuando se reciben. Si los enlaces tienen tasas diferentes, los retardos son diferentes, lo que implica el almacenamiento temporal y/o la ecualización de retardos antes del reensamblaje cuando se espera que las partes posteriores de datos lleguen a través de enlaces más lentos. La velocidad del enlace también puede cambiar arbitrariamente entre enlaces debido, por ejemplo, a diferentes susceptibilidades a condiciones externas para diferentes frecuencias portadoras. Por lo tanto, el almacenamiento temporal a menudo está centralizado y necesita ser dimensionado para el escenario del peor de los casos. Estos esquemas se pueden hacer muy efectivos cuando se trata de hacer el mejor uso de los recursos de espectro disponibles.
Un ejemplo de esquema de vinculación de L1 es la Vinculación de Segmentos mediante la cual los datos se dividen en segmentos de igual tamaño que se distribuyen entre enlaces físicos en base a la disponibilidad del enlace. Este es un enfoque de L1 puro. Dado que el método de distribución es independiente de los puntos finales de la red, se debe conservar el almacenamiento temporal y el orden estricto entre los segmentos durante el reensamblaje. La principal ventaja de este método es que es posible alcanzar una utilización muy alta de los enlaces físicos. La principal desventaja es que la latencia entre cualquier punto final se establece por la latencia del segmento sobre el enlace físico más lento.
La vinculación de L1 funciona bien desde el punto de vista de la eficiencia del espectro y también puede manejar bien el ancho de banda variable del enlace, pero sufre en parte de problemas de complejidad, dado que el reenvío de fragmentos a través de varios enlaces según la vinculación de L1 requiere un control estricto sobre el orden de entrega. Dado que se conserva un orden estricto de todos los segmentos de datos independientemente de la identidad del flujo, por supuesto no habrá ningún reordenamiento de los segmentos de datos. Sin embargo, cuando se agregan muchos enlaces de diferentes anchos de banda, y dado que el estado de cada enlace se debe conocer y contabilizar, los esquemas de almacenamiento temporal y reensamblado pueden aumentar en complejidad.
También hay métodos de agregación de enlaces de L2 y capa tres (L3). Un método conocido tal es el estándar de Agregación de Enlaces (LAG) IEEE 802.3ad, IEEE Std 802.1AX-2008 y Multitrayecto de Igual Coste (ECMP), RFC2991, donde la asignación de enlace/ruta se realiza en base a la identificación de flujo asignada a través de campos de dirección de capa de protocolo superior.
Los esquemas de L2/L3 son, en comparación con los esquemas de L1, menos complicados de implementar. Básicamente, un flujo se identifica, por ejemplo, por su valor de suma de control de comprobación aleatoria, a menudo calculado a partir de campos de direcciones estáticas. Luego, el flujo se asigna a un enlace físico en un grupo de agregación (AG). Los segmentos de datos posteriores con el mismo valor de suma de control comprobación aleatoria se reenvían a partir de entonces al enlace originalmente asignado. Esto da como resultado que cada cierto flujo solo se reenvíe por medio de un enlace correspondiente específico, lo que a su vez da como resultado que se conserve el orden de los segmentos de datos dentro de los flujos. Hay varios problemas asociados con este enfoque, por ejemplo,
• Sesgo estadístico; Esto podría ser que el algoritmo de comprobación aleatoria interfiere con las reglas de asignación de direcciones en la red, causando por tanto una preferencia sistemática por un enlace.
• Problemas de amplitud de variación cuando hay pocos flujos; Incluso sin errores sistemáticos, existe una alta posibilidad de resultados sesgados. Cuando se asumen 20 flujos y "condiciones perfectas", la utilización promedio posible de la capacidad agregada es tan baja como 86% con un 25% de riesgo de ser tan bajo como 77%.
• Impacto de QoS en enlaces individuales sobreaprovisionados; Es decir, la asignación de enlaces sesgada (o la congestión temporal en un solo enlace incluso si la distribución está equilibrada de otro modo) puede conducir a caídas de segmentos de datos no deseadas, es decir, puede dejar caer segmentos de datos incluso cuando hay capacidad disponible, haciendo que el sistema de QoS realmente no funcione de una forma correcta.
El documento US 7924 798 se refiere a la transmisión de datos en redes de telecomunicaciones inalámbricas. En particular, un dispositivo puede conectarse a la red de paquetes de datos a través de un primer canal de datos y un segundo canal de datos. Los paquetes se pueden fragmentar antes de transmitirse al servidor, donde los fragmentos se pueden transmitir al servidor utilizando los canales de datos.
El documento US 6 615 383 se refiere a la transmisión de mensajes desde el primer ordenador a un segundo ordenador; y asegurarse de que cada mensaje se envíe al segundo ordenador una vez y sólo una vez.
El documento US 7 894 481 se relaciona con la fragmentación dinámica de paquetes transmitidos en una red de comunicaciones. Dependiendo de si se ha recibido con éxito un primer fragmento, se puede cambiar un parámetro de tamaño de fragmento.
En consecuencia, existe la necesidad de métodos mejorados de agregación de enlaces.
Compendio
Es un objeto de la presente descripción proporcionar disposiciones y métodos de comunicación para mejorar la agregación de enlaces.
Este objeto se obtiene al menos en parte mediante un método para agregación de enlaces de una pluralidad de enlaces de comunicación comprendidos en un Grupo de Agregación (AG), realizado en una disposición de comunicación. El método comprende obtener un segmento de datos a ser transmitido e identificar un enlace de comunicación preferido de entre la pluralidad de enlaces de comunicación para la transmisión del segmento de datos. Si el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro de un período de tiempo actual, el método identifica un enlace de comunicación alternativo de entre la pluralidad de enlaces de comunicación diferentes del enlace de comunicación preferido, fragmenta el segmento de datos en al menos un primer fragmento y un segundo fragmento, y adjunta una cabecera de fragmento a cada uno del primer y segundo fragmentos, cada cabecera de fragmento está configurada para identificar el fragmento respectivo como un fragmento que pertenece al segmento de datos. Luego, el primer fragmento se transmite a través del enlace de comunicación alternativo. El segundo fragmento se transmite por el enlace de comunicación preferido en caso de que el enlace preferido llegue a estar disponible dentro de un período de tiempo después de transmitir el primer fragmento.
Esta solución evita la latencia innecesaria cuando las tramas o los paquetes de datos en una conexión entre dos puntos finales se mueven temporalmente de un enlace de comunicación preferido a un enlace de comunicación alternativo con, por ejemplo, menor capacidad o tasa de transmisión. Mediante el método descrito, primero se fragmenta un paquete o segmento y luego se transfiere sucesivamente lejos del enlace preferido. Esto significa que parte del paquete se puede volver a transferir al enlace preferido si el enlace de comunicación preferido llega a estar disponible de nuevo antes de que todos los fragmentos del paquete se hayan transmitido a través del enlace de comunicación alternativo.
Según aspectos, las cabeceras de fragmentos comprenden números de secuencia de una secuencia asociada con un flujo en el que está comprendido el segmento de datos.
De esta forma, no es necesario cambiar el procedimiento de reensamblado para el flujo principal de paquetes o segmentos de datos, dado que se utiliza la misma numeración de secuencia para los fragmentos que para las unidades de datos en el flujo, lo cual es una ventaja. El procesamiento del lado de recepción se simplifica, dado que no hay diferencia, desde el punto de vista del reordenamiento, entre fragmentos y segmentos de datos.
Según algunos aspectos, la identificación comprende identificar una pluralidad de enlaces de comunicación alternativos de entre la pluralidad de enlaces de comunicación y fragmentar el segmento de datos en fragmentos para la transmisión a través de al menos parte de la pluralidad de enlaces de comunicación alternativos.
Permitiendo la transmisión de fragmentos a través de una pluralidad de enlaces de comunicación alternativos, se obtiene una mayor robustez y también una mayor tasa de transmisión cuando se aleja del enlace de comunicación preferido. Es una ventaja que el método propuesto se pueda generalizar para operar usando una pluralidad de enlaces de comunicación alternativos.
Sin embargo, una ventaja de los métodos propuestos es que los fragmentos de las tramas o paquetes de datos en muchos aspectos se pueden procesar y manejar de la misma forma en que generalmente se procesan y manejan las tramas o paquetes de datos, por lo que la aplicación de los métodos propuestos tiene un impacto limitado en otras operaciones de la disposición de comunicación del transmisor.
A continuación se discutirán en detalle aspectos y ventajas adicionales asociados con los métodos descritos.
Los métodos descritos son aplicables con esquemas de agregación de enlaces tanto de almacenamiento temporal del lado de recepción como de almacenamiento temporal del lado de transmisión, lo cual es una ventaja.
En consecuencia, según algunos aspectos, el método comprende obtener segmentos de datos a ser transmitidos e identificar uno o más flujos de datos en los segmentos de datos obtenidos. Entonces, el método comprende adjuntar números de secuencia (SEQ) a segmentos de datos asociados con cada flujo de datos identificado, en donde los números de secuencia son independientes entre flujos de datos. El método también comprende determinar un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación, qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual y seleccionar un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos. En particular, la selección comprende seleccionar un enlace de comunicación anterior que se haya utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Esto representa un ejemplo de cómo se puede usar el almacenamiento temporal del lado de recepción con las nuevas técnicas descritas en la presente memoria.
Según algunos otros aspectos, el método comprende obtener segmentos de datos a ser transmitidos y determinar un riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos que comprende un cierto segmento de datos, donde dicho riesgo está asociado con la transmisión de dicho cierto segmento de datos a través de un cierto enlace de comunicación de entre la pluralidad de enlaces de comunicación, en base a características de enlace asociadas con los enlaces de comunicación. El método también comprende el almacenamiento temporal de dicho cierto segmento de datos hasta que el riesgo de reordenación satisfaga un criterio predeterminado, antes de transmitir dicho cierto segmento de datos a través del enlace de comunicación seleccionado.
Esto representa un ejemplo de cómo se puede utilizar el almacenamiento temporal del lado de transmisión con las nuevas técnicas descritas en la presente memoria.
También se describen en la presente memoria métodos de recepción para agregación de enlaces de una pluralidad de enlaces de comunicación correspondientes a los métodos de transmisión. Los métodos de recepción se realizan en una disposición de comunicación, y comprende;
recibir datos a través de la pluralidad de enlaces de comunicación, detectar cabeceras de fragmentos asociados con fragmentos en los datos recibidos, reensamblar fragmentos correspondientes a los respectivos segmentos de datos, y reenviar segmentos de datos reensamblados en un puerto de la disposición de comunicación.
El método de recepción funciona con los métodos de almacenamiento temporal del lado de recepción propuestos anteriormente, lo cual es una ventaja. Por ejemplo, los métodos descritos son aplicables con un método para agregación de enlaces de una pluralidad de enlaces de comunicación, realizados en una disposición de comunicación. El método que comprende recibir segmentos de datos a través de la pluralidad de enlaces de comunicación, identificar uno o más flujos de datos en los segmentos de datos recibidos, extraer números de secuencia adjuntos a los segmentos de datos recibidos, en donde los números de secuencia están dispuestos para ser independientes entre flujos de datos, detectar segmentos de datos recibidos fuera de secuencia, por medio de los números de secuencia extraídos, en donde los números de secuencia indican un orden en secuencia de los segmentos de datos, almacenar temporalmente los segmentos de datos detectados como recibidos fuera de secuencia, y reenviar los segmentos de datos según el orden de los números de secuencia en un puerto de la disposición de comunicación.
También se describen en la presente memoria programas informáticos, productos de programas informáticos, unidades de manejo de tráfico, disposiciones de comunicación y sistemas de comunicación asociados con las ventajas mencionadas anteriormente.
Breve descripción de los dibujos
La presente descripción se describirá ahora con más detalle con referencia a los dibujos adjuntos, donde
la Figura 1 muestra una vista esquemática de un sistema de comunicación dispuesto para agregación de enlaces;
las Figuras 2a-2b ilustran escenarios de agregación de enlaces;
las Figuras 3-4 son diagramas de flujo que ilustran métodos según ejemplos de la presente descripción;
la Figura 5 ilustra esquemáticamente una unidad de manejo de tráfico;
las Figuras 6-7 son diagramas de flujo que ilustran métodos según ejemplos de la presente descripción;
la Figura 8 ilustra esquemáticamente la transmisión y recepción de segmentos de datos;
las Figuras 9-11 son diagramas de flujo que ilustran métodos según ejemplos de la presente descripción;
la Figura 12 ilustra esquemáticamente la transmisión y recepción de segmentos de datos;
las Figuras 13-15 son diagramas de flujo que ilustran métodos según ejemplos de la presente descripción; y
las Figuras 16-17 ilustran esquemáticamente los módulos de la unidad de manejo de tráfico.
Descripción detallada
Los aspectos de la presente descripción se describirán ahora más completamente con referencia a los dibujos adjuntos. Sin embargo, los diferentes dispositivos, programas informáticos y métodos descritos en la presente memoria se pueden realizar de muchas formas diferentes y no se deberían interpretar como que están limitados a los aspectos expuestos en la presente memoria. Números similares en los dibujos se refieren a elementos similares en todas partes.
La terminología utilizada en la presente memoria es para describir aspectos de la descripción únicamente y no se pretende que limite la invención. Como se usa en la presente memoria, las formas singulares "un", “uno”, "una", "el" y “la” también se pretende que incluyan las formas plurales, a menos que el contexto indique claramente lo contrario.
En la presente memoria, se puede decir que un enlace de comunicación está asociado con un estado de congestión. La congestión en interconexión de redes de datos y teoría de colas se refiere a la calidad de servicio reducida que ocurre cuando un nodo o enlace de red está transportando más datos de los que puede manejar. Los efectos típicos incluyen el retardo en la cola, la pérdida de paquetes o el bloqueo de nuevas conexiones. Una consecuencia de la congestión es que un aumento incremental en la carga ofrecida conduce o bien a un pequeño aumento o bien a incluso a una disminución en el rendimiento de la red. Se dice que un enlace de comunicación que está en un estado de congestión, o que está entrando en un estado de congestión regularmente, está asociado con una condición de congestión. La información sobre cuándo un enlace dado está asociado con un estado de congestión se puede obtener a través de la medición del retardo o informes de un módulo de almacenamiento temporal, un módulo de colas o similar.
Un enlace de comunicación está asociado con una tasa de transmisión. Una tasa de transmisión de un enlace de comunicación se puede medir en términos de, por ejemplo, bits de información/segundo (bps) o paquetes por segundo. La tasa de transmisión puede ser una tasa de transmisión de carga útil de tasa de transmisión de información que no incluye sobrecarga tal como cabeceras y campos de dirección, o puede ser una tasa de transmisión sin procesar que incluye todos los datos transmitidos a través del enlace de comunicación.
Un enlace de comunicación también está asociado con una capacidad de transmisión, que indica una cantidad de datos que se pueden transferir a través del enlace. Un operador puede haber invertido en equipos y activos de espectro para establecer una conexión punto a punto para red de retorno móvil. Cuando se agregan canales utilizando ese equipo, la capacidad agregada será preferiblemente lo más cercana posible a la suma de las capacidades de los canales individuales. Cuando se usa, por ejemplo, LAG, ese no es el caso, y los datos se pueden descartar en el dominio de QoS incluso si hay capacidad disponible en uno de los enlaces.
Un enlace de comunicación también se asocia a menudo con un coste de transmisión. El coste de transmisión se puede determinar, por ejemplo, en términos de gasto de energía, coste monetario, coste de equipo o similares. Un operador puede estar interesado en reducir los costes de transmisión, lo que puede influir en la elección entre dos o más enlaces de comunicación. Por ejemplo, un enlace de alta tasa de transmisión dado se puede asociar con un contrato de arrendamiento costoso, lo que lo hace indeseable de usar, excepto en los casos en que otros enlaces menos costosos estén en estados congestionados o no estén disponibles de otro modo.
Por tanto, se aprecia que un "enlace preferido" se puede preferir por muchas razones diferentes más allá de la tasa de transmisión.
Un enlace cableado puede ser un cable Ethernet o un enlace de fibra óptica para usar en una red troncal o similar.
Un enlace inalámbrico puede ser un enlace punto a punto de microondas utilizado en una aplicación de red de retorno, o puede ser un enlace inalámbrico de red de retorno en banda en una red de acceso celular.
En la presente memoria, un flujo o flujo de datos es un flujo coherente y consecutivo de segmentos de datos. Un flujo de datos puede, según algunos aspectos, corresponder a un usuario que difunde de forma continua una película, un usuario que envía un correo electrónico o un usuario que tiene una conversación telefónica.
Un segmento de datos es una unidad de datos, tal como una trama de datos o un paquete de datos.
Con referencia a la Figura 1, se muestra una vista esquemática de una disposición de comunicación inalámbrica 100. La disposición de comunicación inalámbrica 100 comprende una primera disposición de comunicación 110 y una segunda disposición de comunicación 130 que están adaptadas para comunicarse una con otra a través de una pluralidad de enlaces de comunicación 120a, 120b, 120c. Con este propósito, la primera disposición de comunicación 110 comprende una interfaz de enlace de comunicación 111a, 111b, 111c correspondiente para cada enlace de comunicación 120a, 120b, 120c, y la segunda disposición de comunicación 130 comprende una interfaz de enlace de comunicación 131a, 131b, 131c correspondiente para cada enlace de comunicación 120a, 120b, 120c. Los enlaces de comunicación, como se indicó anteriormente, pueden comprender enlaces tanto cableados como inalámbricos.
Además, la primera disposición de comunicación 110 comprende una primera unidad de manejo de tráfico 112, y la segunda disposición de comunicación 130 comprende una segunda unidad de manejo de tráfico 132, donde cada unidad de manejo de tráfico 112, 132 está adaptada para controlar la comunicación enrutando señales de comunicación que comprenden flujos de datos digitales.
Los enlaces de comunicación 120a, 120b, 120c están comprendidos en un Grupo de Agregación (AG) 121 y proporcionan una capacidad agregada para reenviar segmentos de datos desde un puente o puerto de enrutador. Esto significa que solo se maneja un dominio de QoS común y que no puede ocurrir una caída subóptima.
A continuación, se describirá la comunicación desde la primera disposición de comunicación 110 a la segunda disposición de comunicación 130, pero según algunos aspectos, las disposiciones de comunicación 110, 130 funcionan recíprocamente.
La agregación de enlaces se puede realizar de una serie de formas diferentes, como se discutió anteriormente. Ventajosamente, la agregación de enlaces se realiza de una manera adaptativa, de manera que los flujos de segmentos de datos se transfieran entre los diferentes enlaces de comunicación 120a, 120b, 120c, dependiendo, por ejemplo, del estado de congestión o del coste de transmisión. Cuando los enlaces agregados tienen tasas de transmisión y/o latencias diferentes, tal agregación de enlaces adaptativos incluye preferiblemente ecualización de retardo. Esto se puede realizar utilizando almacenamiento temporal en el lado de recepción o almacenamiento temporal en el lado de transmisión. Los ejemplos de esquemas tanto de agregación de enlaces de almacenamiento temporal del lado de recepción como de agregación de enlaces de almacenamiento temporal del lado de transmisión se discutirán en detalle a continuación.
Los métodos de agregación de enlaces descritos a continuación demuestran cómo las tramas de datos pueden ser conscientes de los puntos finales distribuidos semidinámicamente, combinados con esquemas de almacenamiento temporal que conservan el orden de las tramas entre los puntos finales. Estos métodos ofrecen una alta utilización de enlaces, latencia corta y reensamblaje y recopilación de baja complejidad. Sin embargo, un problema potencial con estos métodos es que la latencia para tramas de longitud completa distribuidas a través de un enlace lento podría ser más larga que, por ejemplo, con esquemas de L1 de Vinculación de Segmentos.
Cuando se agregan enlaces físicos de diferente capacidad, el tiempo que se tarda en transportar una trama o un segmento de datos de cierta longitud depende de a través de qué enlace físico se transporta. Los métodos que utilizan el almacenamiento temporal del lado de recepción y el almacenamiento temporal del lado de transmisión discutidos a continuación muestran cómo la caracterización de tramas según los puntos finales entre los que establecen conexiones (también conocidos como flujos), y luego basar la distribución de enlaces en eso, puede contribuir a una baja latencia y una alta utilización de los enlaces físicos.
Los métodos tanto de agregación de enlaces de almacenamiento temporal del lado de recepción como de agregación de enlaces de almacenamiento temporal del lado de transmisión discutidos a continuación incluyen la reasignación dinámica de tramas dentro de los flujos a enlaces físicos con capacidad disponible. Esto significa que temporalmente, en situaciones de congestión, una trama larga se puede distribuir a un enlace lento mientras que las tramas cortas posteriores del mismo flujo se distribuyen a un enlace rápido. Cuando esto sucede, el reordenamiento tendrá lugar a lo largo de toda la trama distribuida al enlace lento.
Una solución propuesta a este problema es introducir un esquema de segmentación adaptativa, que se describe aquí.
Si se prefiere un enlace físico rápido (en términos de tasa de transmisión) para un cierto flujo, y ese flujo se mueve temporalmente a un enlace más lento, las tramas se fragmentan, y la distribución se puede hacer de segmentos más cortos que contienen tales fragmentos hasta que el flujo retrocede al enlace preferido o se establece un nuevo enlace preferido. De esta forma, una trama larga no necesita estar completamente comprometida con un enlace lento, lo que reduce el riesgo de retardo. Dado que la fragmentación no siempre se realiza, sino solamente cuando existe el riesgo de un retardo excesivo, se minimizan tanto la sobrecarga de comunicación como la sobrecarga de procesamiento.
Cada fragmento puede estar equipado con una cabecera o etiqueta que lo identifique como un fragmento y, opcionalmente, también con un número de secuencia de la serie de números de secuencia del flujo principal. Según algunos aspectos, los fragmentos se etiquetan utilizando la misma serie de números de secuencia que su flujo principal. Dado que los números de secuencia se asignan por flujo, y todos los fragmentos de una trama se transmitirán antes que las tramas posteriores de ese flujo, esto da como resultado que los fragmentos que constituyen una trama tengan números de secuencia estrictamente ordenados numéricamente, lo que simplifica el procesamiento y reduce la complejidad. En el almacenador temporal del receptor, los segmentos terminarán en orden de secuencia y se pueden reensamblar fácilmente antes de enviarlos al puerto de salida. Esto significa que la misma funcionalidad del mecanismo de recopilación usada para manejar el reordenamiento de tramas, se puede usar para manejar fragmentos de tramas contenidos en segmentos reenviados a través de diferentes enlaces, lo cual es una ventaja.
En consecuencia, el esquema de fragmentación de segmentos de datos propuesto es particularmente adecuado para usar con el esquema de almacenamiento temporal del lado de recepción que se discute a continuación. Cuando se usa con el esquema de agregación de enlaces de almacenamiento temporal del lado de recepción, se puede usar la misma serie de números de secuencia para los fragmentos de datos que para los segmentos de datos, lo que significa que el lado de recepción solo recopila fragmentos como si fueran segmentos. Sin embargo, se prefiere identificar los fragmentos de datos como fragmentos, de modo que no se reenvíen segmentos de datos incompletos en un puerto de salida antes de que todos los fragmentos se hayan ensamblado en un segmento de datos completo.
Las Figuras 2a y 2b muestran el transporte de cinco tramas 201, 202, 203, 204, 210 a través de dos enlaces, uno rápido denominado ENLACE 1 y otro lento denominado ENLACE 2. La primera trama 210 es de longitud L, mientras que las otras tramas 201-204 son de longitud L'<L.
Se supone que el enlace rápido está congestionado cuando comienza el transporte de la primera trama 210. Sin segmentación, como se ilustra en la Figura 2a, el transporte de la primera trama 210 sobre el segundo enlace tardará L*T2 segundos, donde L es la longitud de la trama en, por ejemplo, bits, y T2 es el tiempo que lleva transportar una unidad de longitud (por ejemplo, bit) sobre ese enlace.
Inmediatamente después de que se reenvía la primera trama en el Enlace 2, el Enlace 1 llega a estar disponible de nuevo. Luego, se reenvían cuatro tramas cortas 201-204 en ese enlace en un tiempo más corto que el que tarda la primera trama en el enlace lento. La latencia total está restringida por tanto por el transporte de la trama de longitud L. El tiempo total para transportar los cuatro segmentos más cortos sobre el enlace rápido es en el ejemplo 4L' *T1. El tiempo que lleva transportar el segmento de datos más largo es L*T2.
La Figura 2b ilustra un resultado posible cuando se utiliza el método sugerido de fragmentación de segmentos. En este caso, la primera trama está fragmentado, y un primer fragmento 210a de longitud L" se reenvía a través del Enlace 2. El Enlace 1 rápido entonces llega a estar disponible y un segundo fragmento 210b de longitud L-L" que contiene la parte restante del primer segmento de datos 210 se transporta a través de ese enlace. En este ejemplo, el transporte a través del Enlace 2 sigue restringiendo la latencia total, pero dado que L" < L, la latencia total es más corta en comparación con el caso sin fragmentación ilustrado en la Figura 2a. El tiempo que se tarda en transportar las cuatro tramas más cortas a través del enlace rápido sigue siendo 4L'*T1. El tiempo total para transportar todos los segmentos ahora es L" *T2.
A partir de la figura 2b se puede deducir que recibir una secuencia consecutiva de tramas completas es equivalente a recibir todos los segmentos que contienen fragmentos de la primera trama. Es decir, ya sea después de (L-L") *T1 o L"*T2. Dado que ambos tiempos son más cortos que L*T2, la latencia total siempre es más corta con la fragmentación.
También es fácil darse cuenta de que dividir la primera trama en fragmentos que tengan el mismo tiempo de transporte en los dos enlaces proporciona la latencia total más baja, es decir, cuando (L-L")*T1 = L"*T2. Esto significa que el primer fragmento tendrá preferentemente la longitud L"=L/(1+T1/T2) o expresado en capacidad L"=L/(1+C1/C2) donde C1 y C2 es la capacidad de los enlaces 1 y 2. La longitud óptima para el transporte a través de más de dos enlaces se puede derivar de manera similar de una manera directa.
La Figura 3 es un diagrama de flujo que ilustra los métodos. Se ilustra un método para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, realizado en una disposición de comunicación 110, 130. El método comprende obtener St1 un segmento de datos 210 a ser transmitido e identificar St2 un enlace de comunicación preferido de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c para la transmisión del segmento de datos. Se hace referencia a este enlace de comunicación preferido como ENLACE 1 en las discusiones en conexión con la Figura 2. A continuación se discutirán algunos ejemplos diferentes de cómo determinar un enlace de comunicación preferido en conexión con los esquemas de almacenamiento temporal del lado de recepción y del lado de transmisión. Este enlace preferido, por ejemplo, puede ser el enlace asociado con la tasa de transmisión más alta o el coste más bajo según alguna métrica. El enlace de comunicación preferido, como se discutió anteriormente, puede no siempre estar disponible para la transmisión, debido, por ejemplo, a estar sobrecargado o sufrir otras circunstancias.
Según algunos aspectos, el enlace de comunicación preferido está asociado con una tasa de transmisión T1 y/o una capacidad de transmisión C1, en donde el enlace de comunicación alternativo está asociado con una tasa de transmisión T2 y/o una capacidad de transmisión C2, en donde T1 es mayor que T2 y/o C1 es mayor que C2.
Si el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro de un período de tiempo actual, el método comprende identificar St3 un enlace de comunicación alternativo de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c diferentes del enlace de comunicación preferido. Se hizo referencia a este enlace de comunicación alternativo como ENLACE 2 cuando se discutió la Figura 2 anterior. El enlace de comunicación alternativo, por ejemplo, puede estar asociado con una tasa más baja en comparación con el enlace de comunicación preferido, o puede ser menos fiable en términos de, por ejemplo, pérdida de paquetes o similar. Algunos ejemplos diferentes de cómo determinar un enlace de comunicación alternativo también se discutirán a continuación en conexión con los esquemas de almacenamiento temporal del lado de recepción y del lado de transmisión.
Según algunos aspectos, el enlace de comunicación preferido que no está disponible para la transmisión del segmento de datos dentro del período de tiempo actual comprende que el enlace de comunicación preferido esté asociado con una condición de congestión. La congestión se discutió anteriormente. Se aprecia que la congestión puede ser un estado intermitente que va y viene con el tiempo.
Según algunos otros aspectos, el enlace de comunicación preferido que no está disponible para la transmisión del segmento de datos dentro del período de tiempo actual comprende que el enlace de comunicación preferido está asociado con una condición de carga de tráfico que supera un umbral de carga de tráfico alto preconfigurado.
Existen métodos conocidos para determinar y/o predecir cuándo un enlace dado está en un estado de congestión o está asociado con una carga elevada. Tales métodos, por lo tanto, no se discutirán con más detalle aquí.
Una vez que se ha identificado un enlace de comunicación alternativo, el método comprende fragmentar St4 el segmento de datos 210 en al menos un primer fragmento 210a y un segundo fragmento 210b, y adjuntar St5 una cabecera de fragmento 220, 230 a cada uno del primer y segundo fragmentos, donde cada cabecera de fragmento está configurada para identificar el fragmento respectivo como un fragmento que pertenece a un segmento de datos. Esto significa que todo el segmento de datos 210 no está comprometido con el enlace alternativo, más bien, solo un fragmento más corto del segmento 210 está comprometido con el enlace alternativo. Si el enlace preferido llega a estar disponible de nuevo, entonces el resto del segmento 210 se puede transmitir a través del enlace preferido. Esto es una ventaja dado que se reduce la latencia de transmisión general.
El método también comprende transmitir St6 el primer fragmento 210a a través del enlace de comunicación alternativo. Se aprecia que el paso de transmitir puede comprender desencadenar la transmisión por alguna otra entidad, o transmitir realmente el primer fragmento a través de alguna interfaz.
Según algunos aspectos, las cabeceras de fragmentos 220, 230 comprenden números de secuencia de una secuencia asociada con un flujo en el que se comprende el segmento de datos. Estos tipos de aspectos son especialmente adecuados para el almacenamiento temporal del lado de recepción, dado que se puede utilizar el mismo proceso de reordenación para los segmentos de datos que para los fragmentos. Por ejemplo, supongamos que los segmentos 1, 2 y 3 se transmiten a través del enlace preferido, que luego se congestiona. El segmento que habría sido el segmento 4, si se hubiera transmitido a través del enlace preferido, ahora se fragmenta. El primer fragmento tal está etiquetado con el número de secuencia 4. Supongamos ahora que el enlace preferido llega a estar disponible de nuevo de inmediato. El resto de los segmentos fragmentados se etiqueta entonces con el número de secuencia 5 y se transmite a través del enlace preferido. El proceso de reordenación del lado de recepción solo necesita reordenar segmentos y fragmentos según el número de secuencia, independientemente de si se recibe un fragmento o un segmento.
Según aspectos, con referencia a la Figura 2, una longitud L" del primer fragmento se determina como L"=L/(1+T1/T2), donde L es la longitud del segmento de datos, T1 es la tasa de transmisión del enlace de comunicación preferido, y donde T2 es la tasa de transmisión del enlace de comunicación alternativo. Esta longitud particular L" es un equilibrio entre las tasas o capacidades de los enlaces de comunicación preferidos y alternativos. Este equilibrio asegura la entrega oportuna de los fragmentos, lo que reduce la latencia del transporte general.
Según aspectos similares, una longitud L" del primer fragmento se determina como L"=L/(1+C1/C2), donde L es la longitud del segmento de datos, C1 es la capacidad de transmisión del enlace de comunicación preferido, y donde C2 es la capacidad de transmisión del enlace de comunicación alternativo.
No es necesario adaptar las longitudes de los fragmentos a las condiciones de transmisión actuales. Algunos aspectos de la descripción comprenden el uso de un tamaño de fragmento fijo o configurable. Este aspecto particular está asociado con una cantidad reducida de configuración, lo que puede ser una ventaja en algunos casos.
Según algunos aspectos, el enlace de comunicación preferido está asociado a un primer coste de transmisión, y en donde el enlace de comunicación alternativo está asociado a un coste de transmisión menor que el primer coste de transmisión, en donde el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro del período de tiempo actual comprende el coste de la primera transmisión que excede un umbral de coste preconfigurado. A los diferentes enlaces se les pueden asignar, por ejemplo, costes variables de tiempo dependiendo, por ejemplo, de la carga del sistema o del consumo de energía. En general, se aprecia que el enlace de comunicación preferido puede ser "preferido" por muchas razones diferentes, no solo relacionadas con la tasa de transmisión, la capacidad y similares.
Como se indicó anteriormente, el método comprende transmitir St7 el segundo fragmento 210b a través del enlace de comunicación preferido en caso de que el enlace preferido llegue a estar disponible dentro de un período de tiempo después de transmitir el primer fragmento.
El método no se limita a un único enlace de comunicación preferido y a un único enlace de comunicación alternativo. Más bien, se puede considerar una pluralidad de enlaces de comunicación tanto preferidos como alternativos en el marco general de los métodos descritos. En consecuencia, según algunos aspectos, la identificación comprende identificar St31 una pluralidad de enlaces de comunicación alternativos de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, y fragmentar St41 el segmento de datos en fragmentos para la transmisión a través de al menos parte de la pluralidad de enlaces de comunicación alternativos.
La Figura 4 es un diagrama de flujo que ilustra métodos realizados en un lado de recepción del sistema de comunicación. Se ilustra un método para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, realizado en una disposición de comunicación 130, 110. El método comprende;
recibir Sr1 datos a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c,
detectar Sr2 cabeceras de fragmentos asociadas con fragmentos en los datos recibidos,
reensamblar Sr3 los fragmentos correspondientes a los respectivos segmentos de datos, y
reenviar Sr4 segmentos de datos reensamblados en un puerto 133, 113 de la disposición de comunicación 130, 110.
Como se indicó anteriormente, el reensamblaje es particularmente eficaz en el caso de que se utilice una única serie de numeración secuencial tanto para segmentos como para fragmentos.
La Figura 5 ilustra esquemáticamente, en términos de un número de unidades funcionales, los componentes de una unidad de manejo de tráfico 500, tal como la primera unidad de manejo de tráfico 112, o la segunda unidad de manejo de tráfico 132, según una realización de las discusiones en la presente memoria. La circuitería de procesamiento 510 se proporciona usando cualquier combinación de uno o más de una unidad de procesamiento central CPU adecuada, multiprocesador, microcontrolador, procesador de señal digital DSP, etc., capaz de ejecutar instrucciones de software almacenadas en un producto de programa informático, por ejemplo, en forma de un medio de almacenamiento 530. La circuitería de procesamiento 510 se puede proporcionar además como al menos un circuito integrado de aplicaciones específicas ASIC, o una matriz de puertas programables en campo FPGA.
Particularmente, la circuitería de procesamiento 510 está configurada para hacer que la unidad de manejo de tráfico 500 realice un conjunto de operaciones, o pasos, tales como los métodos discutidos en la presente memoria. Por ejemplo, el medio de almacenamiento 530 puede almacenar el conjunto de operaciones, y la circuitería de procesamiento 510 se puede configurar para recuperar el conjunto de operaciones del medio de almacenamiento 530 para hacer que la unidad de manejo de tráfico realice el conjunto de operaciones. El conjunto de operaciones se puede proporcionar como un conjunto de instrucciones ejecutables. Por tanto, la circuitería de procesamiento 510 está dispuesta así para ejecutar métodos como los descritos en la presente memoria.
El medio de almacenamiento 530 también puede comprender almacenamiento persistente que, por ejemplo, puede ser cualquiera o una combinación de memoria magnética, memoria óptica, memoria de estado sólido o incluso memoria montada de manera remota.
La unidad de manejo de tráfico 500 puede comprender además una interfaz 520 para comunicaciones con al menos un dispositivo externo. Como tal, la interfaz 520 puede comprender uno o más transmisores y receptores, que comprenden componentes analógicos y digitales y un número adecuado de puertos para comunicación cableada o inalámbrica.
La circuitería de procesamiento 510 controla la operación general de la unidad de manejo de tráfico 500, por ejemplo, enviando datos y señales de control a la interfaz 520 y al medio de almacenamiento 530, recibiendo datos e informes desde la interfaz 520 y recuperando datos e instrucciones del medio de almacenamiento 530. Otros componentes, así como la funcionalidad relacionada, del nodo de control se omiten con el fin de no oscurecer los conceptos presentados en la presente memoria.
La Figura 6 es un diagrama de flujo que ilustra un método del lado de transmisión para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, realizado en una disposición de comunicación 130, 110, en base al almacenamiento temporal del lado de recepción. El método se ilustra y discute en relación con la Figura 8.
El método comprende;
obtener Sta1 segmentos de datos 414-417, 419-421,423-425 a ser transmitidos,
identificar Sta2 uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos obtenidos 414-417, 419­ 421,423-425,
adjuntar Sta3 números de secuencia (SEQ) a los segmentos de datos 414-417, 419-421,423-425 asociados con cada flujo de datos identificado 401,402, 403, 404, en donde los números de secuencia son independientes entre los flujos de datos,
determinar Sta4 un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual, y
seleccionar Sta5 un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos 401,402, 403, 404, en donde la selección comprende seleccionar un enlace de comunicación anterior que se ha utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos 401, 402, 403, 404 en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles, y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
La Figura 7 es un diagrama de flujo que ilustra un método del lado de recepción para agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, realizado en una disposición de comunicación 130, 110, en base al almacenamiento temporal del lado de recepción. El método se ilustra y discute en conexión con la Figura 8. El método comprende;
recibir Sra1 segmentos de datos 414-417, 419-421,423-425 a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c,
identificar Sra2 uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos recibidos,
extraer Sra3 números de secuencia adjuntos a los segmentos de datos recibidos 414-417, 419-421,423-425, en donde los números de secuencia están dispuestos para ser independientes entre flujos de datos,
detectar Sra4 segmentos de datos recibidos fuera de secuencia 416, 417, 423, por medio de los números de secuencia extraídos, en donde los números de secuencia indican un orden en secuencia de los segmentos de datos, almacenar temporalmente Sra5 los segmentos de datos 416, 417, 423 detectados como recibidos fuera de secuencia, y
reenviar Sra6 segmentos de datos según el orden de número de secuencia en un puerto 133, 113 de la disposición de comunicación 130, 110.
Las Figuras 8-10 se discutirán con más detalle a continuación.
La Figura 11 es un diagrama de flujo que ilustra un método del lado de transmisión para agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, realizado en una disposición de comunicación 130, 110, en base al almacenamiento temporal del lado de transmisión. El método se ilustra y discute en conexión con la Figura 12. El método comprende;
obtener Stb1 los segmentos de datos 1214-1223 a ser transmitidos,
determinar Stb5 un riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos 1201, 1204 que comprende un cierto segmento de datos 1216, 1217; 1221, donde dicho riesgo está asociado con la transmisión de dicho cierto segmento de datos a través de un cierto enlace de comunicación de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, en base a las características del enlace asociadas con los enlaces de comunicación 120a, 120b, 120c, 120d, y
almacenar temporalmente Stb6 dicho cierto segmento de datos 1216, 1217; 1221 hasta que el riesgo de reordenar satisfaga un criterio predeterminado, antes de transmitir dicho cierto segmento de datos 1216, 1217; 1221 a través del enlace de comunicación seleccionado.
Las Figuras 12-15 se discutirán con más detalle a continuación.
La Figura 16 ilustra esquemáticamente los módulos funcionales comprendidos en una unidad de manejo de tráfico 500 tal como la que se discute en conexión con la Figura 5. La unidad de manejo de tráfico 500 está dispuesta para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, que comprenden la circuitería de procesamiento 510, la circuitería de procesamiento que comprende;
un módulo de obtención Stx1 configurado para obtener un segmento de datos 210 a ser transmitido, un primer módulo de identificación Stx2 configurado para identificar un enlace de comunicación preferido de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c para la transmisión del segmento de datos y, si el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro de un actual periodo de tiempo,
identificar, mediante un segundo módulo de identificación Stx3, un enlace de comunicación alternativo de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c diferente del enlace de comunicación preferido, la circuitería de procesamiento que comprende
un módulo de fragmentación Stx4 configurado para fragmentar el segmento de datos 210 en al menos un primer fragmento 210a y un segundo fragmento 210b,
un módulo de unión Stx5 configurado para adjuntar una cabecera de fragmento 220, 230 a cada uno del primer y segundo fragmentos, cada cabecera de fragmento que está configurado para identificar el fragmento respectivo como un fragmento que pertenece a un segmento de datos, y
un primer módulo de transmisión Stx6 configurado para transmitir el primer fragmento 210a a través del enlace de comunicación alternativo.
Según aspectos, el segundo módulo de identificación Stx31 está configurado para identificar una pluralidad de enlaces de comunicación alternativos de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, y en donde el módulo de fragmentación Stx41 está configurado para fragmentar el segmento de datos en fragmentos para su transmisión a través de al menos parte de la pluralidad de enlaces de comunicación alternativos.
La unidad de manejo de tráfico 500 comprende un segundo módulo de transmisión Stx7 configurado para transmitir el segundo fragmento 210b a través del enlace de comunicación preferido en caso de que el enlace preferido llegue a estar disponible dentro de un período de tiempo después de transmitir el primer fragmento.
La Figura 17 ilustra esquemáticamente otra unidad de manejo de tráfico 500 como la que se discutió en conexión con la Figura 5. La unidad de manejo de tráfico 500 está dispuesta para agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, que comprenden la circuitería de procesamiento 510, la circuitería de procesamiento comprende aquí;
un módulo de recepción Srx1 configurado para recibir datos a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c,
un módulo de detección Srx2 configurado para detectar cabeceras de fragmentos asociadas con fragmentos en los datos recibidos,
un módulo de reensamblado Srx3 configurado para reensamblar fragmentos correspondientes a los respectivos segmentos de datos, y
un módulo de reenvío Srx4 configurado para reenviar segmentos de datos reensamblados en un puerto 133, 113 de la disposición de comunicación 130, 110.
Los dos enfoques diferentes mencionados anteriormente para agregación de enlaces, es decir, el almacenamiento temporal del lado de recepción y del lado de transmisión, se discutirán ahora en detalle. Ambos son aplicables junto con los métodos que comprenden la fragmentación discutidos anteriormente.
Agregación de enlaces que comprende almacenamiento temporal del lado de recepción
Con referencia a la Figura 1 y también a la Figura 8, la primera disposición de comunicación 110 está adaptada para obtener segmentos de datos 414-417, 419-421,423-425 a ser transmitidos, luego la primera unidad de manejo de tráfico 112 está adaptada para identificar uno o más flujos de datos 401, 402, 403, 404 en los segmentos de datos obtenidos 414-417, 419-421,423-425, para adjuntar números de secuencia (SEQ) a los segmentos de datos asociados con cada flujo de datos 401,402, 403, 404 identificado, en donde los números de secuencia son independientes entre los flujos de datos, y para calcular una suma de control de comprobación aleatoria para cada segmento de datos. El resultado de este cálculo se denomina Identidad de Flujo (FI) y se utiliza como entrada para una Tabla de Identidad de Flujo (FIT) de tamaño arbitrario; esta tabla se mantiene como una tabla del lado de transmisión (tFIT) así como una tabla del lado de recepción (rFIT). La tabla se usa luego para identificar los diferentes flujos de datos 401,402, 403, 404 y se construye a partir del análisis sintáctico de los flujos de datos, no se necesita comunicación del plano de control a través del enlace para sincronizar las tablas. La tabla contiene información para cada Identidad de Flujo sobre qué enlace, ID de enlace (LID) se reenvió el último segmento de datos y el número de secuencia SEQ específico del flujo de datos y también un último número de secuencia (SQN) para el último segmento de datos de un cierto flujo de datos que se ha enviado a través de cada enlace de comunicación 120a, 120b, 120c en el AG 121.
Según la presente descripción, la primera disposición de comunicación 110 está entonces adaptada para seleccionar un enlace de comunicación del AG 121 asociado con un primer flujo de datos, en donde la selección comprende seleccionar un enlace de comunicación anterior que se ha utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos 401,402, 403, 404 en caso de que dicho enlace de comunicación anterior esté comprendido en el AG 121, y seleccionar cualquier enlace de comunicación comprendido en el AG 121 de otro modo.
Esto significa que los segmentos de datos se transmiten siempre que haya un enlace libre en el AG 121. Si el enlace a través del que se transmitieron los segmentos de datos anteriores con la misma FI está libre, se preferirá ese.
El número de secuencia SEQ específico del flujo se adjunta a cada segmento de datos antes de la transmisión para realizar un seguimiento del orden de entrega. Según algunos aspectos, para minimizar la sobrecarga en los datos transmitidos en conexión con esto, se utilizan las técnicas de compresión explicadas a continuación.
El número de secuencia, según algunos aspectos, se puede especificar de tres formas diferentes
• Completo: El número de secuencia completo se adjunta y se transmite a través del enlace. Este es el método utilizado cuando no se supone ningún conocimiento de los números de secuencia anteriores en el lado de recepción o como una comprobación habitual de coherencia.
• Diferencial: Se transmite la diferencia aritmética del número de secuencia anterior. Esto es particularmente beneficioso cuando la diferencia tiene una representación más corta que el número de secuencia completo.
• implícito: La diferencia en el número de secuencia sigue siendo la misma entre transmisiones consecutivas. Esto es particularmente beneficioso cuando el número de secuencia se puede recrear sin ambigüedades en el lado de recepción del enlace.
Según algunos aspectos, la primera disposición de comunicación 110 está adaptada para determinar primero el subconjunto de enlaces de comunicación disponibles del AG 121, qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual, y para seleccionar un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos 401,402, 403, 404. La selección comprende entonces seleccionar un enlace de comunicación anterior que se ha utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos 401,402, 403, 404 en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Según algunos aspectos, la determinación comprende el mantenimiento de una Tabla de Caracterización de Enlaces, LCT, que comprende información de estado asociada con cada enlace de comunicación en la pluralidad de enlaces de comunicación. Por ejemplo, la información de estado comprende información de control de flujo que indica si un enlace de comunicación está disponible para la transmisión de un segmento de datos.
En la segunda disposición de comunicación 130, según la presente descripción, se realiza la agregación de enlaces de los enlaces de comunicación 120a, 120b, 120c. Con este propósito, la segunda disposición de comunicación 130 está adaptada para recibir los segmentos de datos 414-417, 419-421,423-425 a través del enlace de comunicación 120a, 120b, 120c. La segunda unidad de manejo de tráfico 132 se adapta luego para identificar uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos recibidos 414-417, 419-421,423-425, para extraer los números de secuencia SEQ específicos del flujo, para detectar segmentos de datos 416, 417, 423 recibidos fuera de secuencia por medio de los números de secuencia extraídos. La segunda unidad de manejo de tráfico 132 está adaptada además para almacenar temporalmente los segmentos de datos 416, 417, 423 detectados como recibidos fuera de secuencia y para reenviar los segmentos de datos según el orden del número de secuencia en un puerto de salida 133 de la segunda disposición de comunicación 130.
Según algunos aspectos, la segunda unidad de manejo de tráfico 132 está adaptada para detectar segmentos de datos recibidos fuera de secuencia manteniendo la Tabla de Identidad de Flujo de recepción (rFIT) que comprende dichas Identidades de Flujo (FI) que están asociadas con los flujos de datos identificados, y correspondientes identificadores de enlace de comunicación (LID). Según el presente ejemplo, rFIT comprende el número de secuencia, SQN, adjunto del segmento de datos transmitido más recientemente asociado con cada FI. Según algunos aspectos, la rFIT se mantiene y actualiza para cada nuevo segmento de datos recibido.
Según algunos aspectos, la segunda unidad de manejo de tráfico 132 está adaptada para reenviar segmentos de datos directamente cuando se detectan como recibidos en secuencia, y para reenviar segmentos de datos almacenados temporalmente asociados con números de secuencia consecutivos a números de secuencia de segmentos de datos reenviados anteriormente.
Esto significa que cuando se recibe un segmento de datos, se calcula la FI y se comprueba la rFIT a través de qué enlace de comunicación 120a, 120b, 120c se transmitió el segmento de datos anterior con la misma FI y si el paquete actual está en secuencia o no.
En la rFIT, la información por FI del último número de secuencia y la última diferencia recibida a través de cada enlace se mantiene y actualiza para cada nuevo segmento de datos recibido con el fin de soportar el mecanismo de compresión.
Los segmentos de datos fuera de secuencia se almacenan temporalmente. Para cada FI, los segmentos de datos recibidos en secuencia se recopilan y reenvían inmediatamente, luego se comprueba el almacenador temporal en busca de segmentos de datos consecutivos para recopilar.
La segunda unidad de manejo de tráfico 132 está adaptada según algunos aspectos para identificar dichos flujos de datos determinando una suma de control de comprobación aleatoria para una sección predeterminada de cada segmento de datos, donde cada flujo de datos se identifica mediante una suma de control de comprobación aleatoria correspondiente.
La segunda unidad de manejo de tráfico 132 está adaptada, según algunos aspectos, para extraer los números de secuencia descomprimiendo los números de secuencia. Por ejemplo, la descompresión comprende descomprimir números de secuencia codificados diferencialmente o descomprimir números de secuencia codificados implícitamente configurados para ser recreados sin ambigüedades por la segunda unidad de manejo de tráfico 132 de entre la pluralidad de enlaces de comunicación.
Una funcionalidad básica de la presente descripción se describirá ahora con más detalle con referencia a la Figura 1 y la Figura 8. Aquí hay un primer flujo de datos 401 que se muestra con puntos dispersos, un segundo flujo de datos 402 que se muestra con franjas descendentes de izquierda a derecha, se muestra un tercer flujo de datos 403 con franjas ascendentes de izquierda a derecha y un cuarto flujo de datos 404 se muestra con puntos densos. En una capa de datos de Tx 410, se han identificado los diferentes flujos de datos con segmentos de datos y se han adjuntado números de secuencia SEQ específicos de flujo a cada segmento de datos, denotando el orden de los segmentos de datos para cada flujo de datos. Aquí, hay dos enlaces de comunicación disponibles, un primer enlace 411 que es relativamente rápido y un segundo enlace 412 que es relativamente lento.
Los seis primeros segmentos de datos 414 se transfieren a través del primer enlace 411 y no se almacenan temporalmente, sino que se reenvían directamente a una capa de datos de Rx 413. El siguiente séptimo segmento de datos 415, que está comprendido en el primer flujo de datos 401 y que tiene un SEQ de 3, se transfiere a través del segundo enlace 412. Hay un primer exceso de retardo 418 antes de que se reenvíe el séptimo segmento de datos 415.
Un octavo segmento de datos 416 y un noveno segmento de datos 417 siguientes, ambos que están comprendidos en el primer flujo de datos 401 y que tienen un SEQ de 4 y 5, se transfieren a través del primer enlace 411. Sin embargo, debido al primer exceso de retardo 418 para el séptimo segmento de datos 415, la segunda unidad de manejo de tráfico 132 está adaptada para almacenar temporalmente el octavo segmento de datos 416 y el noveno segmento de datos 417 de manera que estos segmentos de datos que están todos comprendidos en el primer flujo de datos 401 se reenvíen en el orden correcto.
Un siguiente décimo segmento de datos 419, comprendido en el tercer flujo de datos 403 y que tiene un SEQ de 2, se transfiere a través del primer enlace 411. Dado que el primer exceso de retardo 418 aún no ha expirado, y el décimo segmento de datos 419 pertenece a otro flujo de datos distinto de los tres segmentos de datos 415, 416, 417 anteriores, el décimo segmento de datos 419 no se almacena temporalmente, sino que se reenvía directamente a la capa de datos de Rx 413.
Un siguiente undécimo segmento de datos 420, comprendido en el segundo flujo de datos 402 y que tiene un SEQ de 3, se transfiere a través del primer enlace 411. Dado que el primer exceso de retardo 418 ha expirado, y los tres segmentos de datos 415, 416, 417 anteriores del primer flujo de datos 401 están listos para ser enviados a la capa de datos de Rx 413, el undécimo segmento de datos 420 se reenvía a la capa de datos de Rx 413 a partir de entonces.
Un duodécimo segmento de datos 421, que está comprendido en el cuarto flujo de datos 404 y que tiene un SEQ de 2, se transfiere a través del segundo enlace 412. Hay un segundo exceso de retardo 422 antes de que se envíe el duodécimo segmento de datos 421.
Un siguiente decimotercer segmento de datos 423, que está comprendido en el cuarto flujo de datos 404 y que tiene un SEQ de 3, se transfiere a través del primer enlace 411. Sin embargo, debido al segundo exceso de retardo 422 para el duodécimo segmento de datos 421, la segunda unidad de manejo de tráfico 132 está adaptada para almacenar temporalmente el decimotercer segmento de datos 423 de manera que estos segmentos de datos que están comprendidos en el cuarto flujo de datos 404 se reenvíen en el orden correcto.
Durante el segundo exceso de retardo 422, dos siguientes segmentos de datos 424 se transfieren a través del primer enlace 411 y no se almacenan temporalmente, sino que se reenvían directamente a la capa de datos de Rx 413.
Luego, el segundo exceso de retardo 422 ha expirado y los dos segmentos de datos 421,423 del cuarto flujo de datos 404 se reenvían a la capa de datos de Rx 413. Los siguientes segmentos de datos 425 se transfieren a través del primer enlace 411 y no se almacenan temporalmente, sino que se reenvían directamente a la capa de datos de Rx 413.
Según algunos aspectos, el almacenamiento temporal se realiza en una funcionalidad de almacenamiento temporal o capa de almacenamiento temporal 426 que está comprendida en la primera disposición de comunicación 110.
La Figura 9 muestra un diagrama de flujo de un proceso según algunos aspectos en la primera disposición de comunicación 110. Después del inicio 901, se investiga 902 si hay enlaces libres disponibles hasta que los haya. Luego, se espera un siguiente segmento de datos, o paquete de datos, 903. Para ese segmento de datos, se calcula la FI y se comprueba la tFIT 904. Se investiga 905 si es una nueva FI, y si ese es el caso, se comprueba la LCT y se escoge 906 el primer enlace libre. Si no es así, se investiga si el enlace a través del cual se reenvió el último segmento de datos del flujo en cuestión está libre 907, y si no es así, se comprueba la LCT y se escoge 906 un primer enlace libre.
En cualquier caso, a continuación, se realiza 908 un cálculo de SEQ, el segmento de datos se reenvía en el LID 909 y la FIT se actualiza 910.
La Figura 10 muestra un diagrama de flujo de un proceso según algunos aspectos en la segunda disposición de comunicación 130. Después del inicio 1001, se espera un siguiente segmento de datos, o paquete de datos, 1002. Para ese segmento de datos, se calcula la FI 1003 y SEG se calcula 1004. Se investiga si el segmento de datos se recibe en orden de secuencia 1005, y si no es así, el segmento de datos se almacena temporalmente 1006 y se espera un nuevo segmento de datos 1002. Si el segmento de datos se recibe en orden de secuencia, se recopila y reenvía 1007. Luego, se investiga si un segmento de datos consecutivo se almacena temporalmente 1008, y si ese es el caso, también se recopila y reenvía 1007. Si no, se espera un nuevo segmento de datos 1002.
El almacenamiento temporal en el lado de recepción que se describe anteriormente para la segunda disposición de comunicación 130 proporciona una asignación dinámica en donde se prefiere un enlace de comunicación 120a, 120b, 120c anterior para cada flujo de datos. Cada flujo de datos se enrutará a los enlaces de comunicación 120a, 120b, 120c que tienen capacidad suficiente para el flujo completo. Si hay dos enlaces de comunicación con capacidades relativas 0,2 y 1,0 y dos flujos de datos con tasas relativas 0,5 y 0,1, estos flujos de datos se transfieren a través del enlace con capacidad relativa 1,0. Si se añade un tercer flujo de datos con tasa relativa 0,5, se transferirá a través del enlace con la capacidad relativa 1,0, y el flujo de datos con tasa relativa 0,1 se transferirá al enlace de comunicación con capacidad relativa 0,2. El flujo de datos con tasa relativa 0,1 permanecerá a partir de entonces en el enlace de comunicación con capacidad relativa 0,2.
La numeración de secuencia para cada flujo de datos minimiza el almacenamiento temporal, dado que los diferentes flujos de datos se manejan por separado y no necesitan ser reenviados en orden. La compresión de los números de secuencia, es decir, transmitir solo la diferencia de la última transmisión o no adjuntar ningún número de secuencia en absoluto cuando se puede predecir en el lado del receptor, reduce la sobrecarga de comunicación en el enlace de comunicación. Por tanto, es posible reenviar segmentos de datos a través de cualquier enlace de comunicación en un grupo de agregación sin reordenarlos dentro de los flujos individuales.
Dado que los segmentos de datos se pueden reenviar en cualquier enlace de comunicación para cualquier transmisión, también se alcanzará un patrón de estado estable cuando la utilización del grupo de agregación sea alta. Este también es el caso con un solo flujo de datos. También, dado que cada flujo de datos prefiere permanecer en el mismo enlace de comunicación, los flujos de datos serán "atraídos" a los enlaces de comunicación que pueden sostener la necesidad de capacidad total del flujo de datos.
Dado que solo se debe mantener el orden dentro de los flujos de datos, el almacenamiento temporal necesario es menor que para la Vinculación de Enlaces de Comunicación, especialmente cuando hay grandes discrepancias en la tasa entre los enlaces en un grupo de agregación. Esto se logra adjuntando un número de secuencia separado por flujo de datos.
Generalmente, la primera unidad de manejo de tráfico 112 está adaptada para obtener los segmentos de datos 414­ 417, 419-421, 423-425 a ser transmitidos, para identificar uno o más flujos de datos 401, 402, 403, 404 en los segmentos de datos 414-417, 419-421,423-425 obtenidos, y adjuntar números de secuencia (SEQ) a segmentos de datos asociados con cada flujo 401, 402, 403, 404 identificado, en donde los números de secuencia son independientes entre flujos de datos. La primera unidad de manejo de tráfico 112 está adaptada además para determinar un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual, y para seleccionar un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos 401,402, 403, 404. La selección comprende seleccionar un enlace de comunicación anterior que se ha utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos 401,402, 403, 404 en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Generalmente, en la segunda disposición de comunicación 130, se realiza la agregación de enlaces de los enlaces de comunicación 120a, 120b, 120c. Con este propósito, la segunda disposición de comunicación 130 está adaptada para recibir los segmentos de datos 414-417, 419-421,423-425 a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c. La segunda unidad de manejo de tráfico 132 luego se adapta para identificar uno o más flujos de datos 401, 402, 403, 404 en los segmentos de datos 414-417, 419-421, 423-425 recibidos, para extraer los números de secuencia específicos del flujo para detectar los segmentos de datos 416, 417, 423 recibidos fuera de secuencia por medio de los números de secuencia extraídos. La segunda unidad de manejo de tráfico 132 está adaptada además para almacenar temporalmente los segmentos de datos 416, 417, 423 detectados como recibidos fuera de secuencia, y para reenviar los segmentos de datos según el orden del número de secuencia en un puerto de salida 133.
Con referencia a la Figura 6, la presente descripción se refiere a un método para agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, realizado en una disposición de comunicación 110, 130, que comprende;
obtener Sta1 los segmentos de datos 414-417, 419-421,423-425 a ser transmitidos,
identificar Sta2 uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos 414-417, 419-421,423­ 425 obtenidos,
adjuntar Sta3 números de secuencia, SEQ, a los segmentos de datos 414-417, 419-421,423-425 asociados con cada flujo de datos 401,402, 403, 404 identificado, en donde los números de secuencia son independientes entre flujos de datos,
determinar Sta4 un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual, y
seleccionar Sta5 un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos 401,402, 403, 404, en donde la selección comprende seleccionar un enlace de comunicación anterior que se ha utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos 401, 402, 403, 404 en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles, y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Se obtienen una serie de ventajas por medio de los métodos ilustrados en la Figura 6. Principalmente, se obtiene una configuración mejorada de diferentes dispositivos en un sistema de comunicación de enlace de comunicación, así como una funcionalidad de interfaz mejorada entre estos dispositivos.
Se proporciona la ventaja de habilitar el reenvío de segmentos de datos a través de cualquier enlace en un grupo de agregación sin reordenar dentro de flujos de datos individuales. Dado que los segmentos de datos se pueden reenviar en cualquier enlace para cualquier transmisión, también se alcanzará un patrón de estado estable para una alta utilización del grupo de agregación. Este también es el caso con un solo flujo de datos. Dado que solo se debe mantener el orden dentro de los flujos de datos, el almacenamiento temporal necesario se reduce en comparación con la técnica anterior, especialmente cuando existen grandes discrepancias en la tasa entre los enlaces en un grupo de agregación.
Según algunos aspectos, la identificación de Sta2 comprende determinar Sta21 una suma de control de comprobación aleatoria en base a una sección predeterminada de cada segmento de datos, en donde un flujo de datos se identifica mediante una suma de control de comprobación aleatoria respectiva.
Esto proporciona la ventaja de una identificación sin complicaciones de los respectivos flujos de datos.
Según algunos aspectos, la unión Sta3 comprende comprimir Sta31 los números de secuencia antes de la unión.
Esto proporciona la ventaja de reducir la cantidad de datos transferidos a través de los enlaces de comunicación.
Según algunos aspectos, la compresión Sta31 comprende comprimir Sta311 diferencialmente números de secuencia unidos según una diferencia aritmética entre un número de secuencia anterior y uno actual.
Según algunos aspectos, la compresión Sta31 comprende generar Sta312 un número de secuencia implícito configurado para ser recreado sin ambigüedades en el lado de recepción de un enlace de comunicación de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Según algunos aspectos, la determinación Sta4 comprende mantener Sta41 una Tabla de Caracterización de Enlaces, LCT, que comprende información de estado asociada con cada enlace de comunicación en la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Esto proporciona la ventaja de proporcionar una herramienta para realizar un seguimiento del estado del enlace de comunicación, por ejemplo, si hay algún enlace de comunicación disponible.
Según algunos aspectos, la información de estado comprende información de control de flujo que indica si un enlace de comunicación está disponible para la transmisión de un segmento de datos.
Según algunos aspectos, la selección Sta5 comprende mantener Sta51 una Tabla de Identidad de Flujo de transmisión, tFIT, que comprende Identidades de Flujo, FI, asociadas con los flujos de datos identificados 401, 402, 403, 404, y los correspondientes identificadores de enlace de comunicación, LID, en donde los LID se utilizan para identificar dicho enlace de comunicación anterior utilizado para la transmisión del segmento de datos transmitido más recientemente asociado con cada FI de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Esto proporciona la ventaja de proporcionar una herramienta para realizar un seguimiento de los flujos de datos.
Según algunos aspectos, la tFIT comprende el número de secuencia, SQN, adjunto del segmento de datos transmitido más recientemente asociado con cada FI.
Según algunos aspectos, la pluralidad de enlaces de comunicación 120a, 12b, 120c comprende uno o más enlaces de comunicación por radio, y en donde la disposición de comunicación 110, 130 comprende una unidad de manejo de tráfico 112, 132 y una interfaz de enlace de comunicación 111a, 111b, 111c; 131a, 131b, 131c para cada enlace de comunicación por radio.
Con referencia a la Figura 7, la presente descripción también se refiere a un método para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, realizado en una disposición de comunicación 130, 110, que comprende;
recibir Sra1 los segmentos de datos 414-417, 419-421, 423-425 a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c,
identificar Sra2 uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos recibidos,
extraer Sra3 números de secuencia adjuntos a los segmentos de datos 414-417, 419-421, 423-425 recibidos, en donde los números de secuencia están dispuestos para ser independientes entre flujos de datos,
detectar Sra4 segmentos de datos recibidos fuera de la secuencia 416, 417, 423, por medio de los números de secuencia extraídos, en donde los números de secuencia indican un orden en secuencia de los segmentos de datos, almacenar temporalmente Sra5 los segmentos de datos 416, 417, 423 detectados como recibidos fuera de secuencia, y
reenviar Sra6 segmentos de datos según el orden del número de secuencia en un puerto 133, 113 de la disposición de comunicación 130, 110.
Según algunos aspectos, la identificación Sra2 comprende determinar Sra21 una suma de control de comprobación aleatoria para una sección predeterminada de cada segmento de datos, en donde un flujo de datos se identifica mediante una suma de control de comprobación aleatoria correspondiente.
Según algunos aspectos, la extracción Sra3 comprende descomprimir Sra31 los números de secuencia extraídos. Según algunos aspectos, la descompresión Sra31 comprende descomprimir Sra311 los números de secuencia codificados diferencialmente.
Según algunos aspectos, la descompresión Sra31 comprende descomprimir Sra312 los números de secuencia codificados implícitamente configurados para ser recreados sin ambigüedades en el lado de recepción de un enlace de comunicación 130, 110 de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Según algunos aspectos, la detección Sra4 comprende mantener Sra41 una Tabla de Identidad de Flujo de recepción, rFIT, que comprende Identidades de Flujo, FI, asociadas con los flujos de datos identificados 401,402, 403, 404, y los correspondientes identificadores de enlace de comunicación, LID, en donde los LID están dispuestas para identificar el enlace de comunicación, de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, utilizados para la transmisión del segmento de datos transmitido más recientemente asociado con cada FI.
Según algunos aspectos, la rFIT comprende el número de secuencia, SQN, adjunto del segmento de datos transmitido más recientemente asociado con cada FI.
Según algunos aspectos, la rFIT comprende información por FI del último número de secuencia, en donde la rFIT se mantiene y actualiza para cada nuevo segmento de datos recibido.
Según algunos aspectos, el reenvío Sra6 comprende reenviar Sra61 segmentos de datos directamente cuando se detectan como recibidos en secuencia.
Según algunos aspectos, el reenvío Sra6 comprende reenviar Sra62 segmentos de datos desde el almacenador temporal asociado con números de secuencia consecutivos a números de secuencia de segmentos de datos reenviados anteriormente.
Según algunos aspectos, la pluralidad de enlaces de comunicación 120a, 12b, 120c comprende uno o más enlaces de comunicación 120a, 120b, 120c, y en donde la disposición de comunicación 110, 130 comprende una unidad de manejo de tráfico 112, 132 y una interfaz de enlace de comunicación 111a, 111b, 111c; 131a, 131b, 131c para cada enlace de comunicación 120a, 120b, 120c.
En general, la presente descripción también se refiere a una disposición de comunicación 110, 130 adaptada para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 12b, 120c, cuya disposición de comunicación 110, 130 está adaptada para comunicarse a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c y comprende una unidad de manejo de tráfico 112, 132 cuya unidad de manejo de tráfico 112, 132 está adaptada para:
• obtener los segmentos de datos 414-417, 419-421,423-425 a ser transmitidos,
• identificar uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos 414-417, 419-421,423­ 425 obtenidos,
• adjuntar números de secuencia, SEQ, a segmentos de datos asociados con cada flujo de datos identificado 401,402, 403, 404, en donde los números de secuencia son independientes entre flujos de datos,
• determinar un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual, y para
• seleccionar un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos 401,402, 403, 404, en donde la selección comprende seleccionar un enlace de comunicación anterior que se ha utilizado para la transmisión de un segmento de datos anterior de dicho cierto flujo de datos 401, 402, 403, 404 en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles, y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para identificar uno o más flujos de datos mediante la determinación de una suma de control de comprobación aleatoria en base a una sección predeterminada de cada segmento de datos, en donde un flujo de datos se identifica mediante una suma de control de comprobación aleatoria respectiva.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para comprimir números de secuencia antes de adjuntar los números de secuencia.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para comprimir diferencialmente los números de secuencia adjuntos según una diferencia aritmética entre un número de secuencia anterior y uno actual.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para generar un número de secuencia implícito configurado para ser recreado sin ambigüedades en una disposición de comunicación de recepción 130, 110.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para determinar un subconjunto de enlaces de comunicación disponibles manteniendo una Tabla de Caracterización de Enlaces, LCT, que comprende información de estado asociada con cada enlace de comunicación en la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Según algunos aspectos, la información de estado comprende información de control de flujo que indica si un enlace de comunicación está disponible para la transmisión de un segmento de datos.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para mantener una Tabla de Identidad de Flujo de transmisión, tFIT, que comprende Identidades de Flujo, FI, asociadas con los flujos identificados, e identificadores de enlace de comunicación, LID, correspondientes, en donde los LID están dispuestos para identificar dicho enlace de comunicación anterior utilizado para la transmisión del segmento de datos transmitido más recientemente asociado con cada FI de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Según algunos aspectos, la tFIT comprende el número de secuencia, SQN, adjunto del segmento de datos transmitido más recientemente asociado con cada FI.
La presente descripción también se refiere a una disposición de comunicación 130, 110 adaptada para la agregación de enlaces de una pluralidad de enlaces de comunicación, cuya disposición de comunicación 130, 110 está adaptada para comunicarse a través de una pluralidad de enlaces de comunicación 120a, 120b, 120c y comprende una unidad de manejo de tráfico. 132, 122 cuya unidad de manejo de tráfico 132, 122 está adaptada para:
• recibir los segmentos de datos 414-417, 419-421, 423-425 a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c,
• identificar uno o más flujos de datos 401,402, 403, 404 en los segmentos de datos recibidos 414-417, 419­ 421,423-425,
• extraer números de secuencia adjuntos a los segmentos de datos 414-417, 419-421,423-425 recibidos, en donde los números de secuencia están dispuestos para ser independientes entre flujos de datos,
• detectar los segmentos de datos 416, 417, 423 recibidos fuera de secuencia, por medio de los números de secuencia extraídos, en donde los números de secuencia indican un orden en secuencia de segmentos de datos,
• almacenar temporalmente los segmentos de datos 416, 417, 423 detectados como recibidos fuera de secuencia, y para
• reenviar segmentos de datos según el orden del número de secuencia en un puerto 133, 113 de la disposición de comunicación 130, 110.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para identificar uno o más flujos de datos determinando una suma de control de comprobación aleatoria para una sección predeterminada de cada segmento de datos, en donde un flujo de datos se identifica mediante una suma de control de comprobación aleatoria correspondiente.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para descomprimir números de secuencia extraídos.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para descomprimir números de secuencia codificados diferencialmente.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para descomprimir números de secuencia codificados implícitamente configurados para ser recreados sin ambigüedades en la disposición de comunicación 130, 110.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para detectar segmentos de datos recibidos fuera de secuencia manteniendo una Tabla de Identidad de Flujo de recepción, rFIT, que comprende Identidades de Flujo, FI, asociadas con los flujos de datos 401, 402, 403, 404 identificados, y los identificadores de enlace de comunicación, LID, correspondientes, en donde los LID están dispuestos para identificar el enlace de comunicación, de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, utilizados para la transmisión del segmento de datos transmitido más recientemente asociado con cada FI.
Según algunos aspectos, la rFIT comprende el número de secuencia, SQN, adjunto, del segmento de datos transmitido más recientemente asociado con cada FI.
Según algunos aspectos, la rFIT comprende información por FI del último número de secuencia, en donde la rFIT se mantiene y actualiza para cada nuevo segmento de datos recibido.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para reenviar segmentos de datos directamente cuando se detectan como recibidos en secuencia.
Según algunos aspectos, la unidad de manejo de tráfico 132, 122 está adaptada para reenviar segmentos de datos almacenados temporalmente que están asociados con números de secuencia consecutivos a números de secuencia de segmentos de datos reenviados previamente.
Agregación de enlaces que comprende almacenamiento temporal del lado de transmisión
Con referencia a la Figura 1 y también a la Figura 12, la primera disposición de comunicación 110 está adaptada para obtener los segmentos de datos 1214-1223 a ser transmitidos. Según la presente descripción, la primera unidad de manejo de tráfico 112 está adaptada para determinar un riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos 1201, 1204 que comprende un cierto segmento de datos 1216, 1217, 1221. Dicho riesgo está asociado con la transmisión de dicho cierto segmento de datos a través de cierto enlace de comunicación de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, en base a las características del enlace asociadas con los enlaces de comunicación 120a, 120b, 120c, 120d. Los ejemplos de características de enlace y una Tabla de Caracterización de Enlace (LCT) correspondiente se discutirán con más detalle más adelante.
La primera unidad de manejo de tráfico 112 está además adaptada para almacenar temporalmente dicho cierto segmento de datos 1216, 1217, 1221 hasta que el riesgo de reordenación satisfaga un criterio predeterminado, antes de transmitir el dicho cierto segmento de datos 1216, 1217, 1221 a través del enlace de comunicación seleccionado.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para detectar e identificar uno o más flujos de datos 1201, 1202, 1203, 1204 en los segmentos de datos obtenidos 1214-1223, para adjuntar números de secuencia (SEQ) a los segmentos de datos asociados con cada flujo de datos 1201, 1202, 1203, 1204, identificado, en donde los números de secuencia son independientes entre los flujos de datos, y para calcular una suma de control de comprobación aleatoria para cada segmento de datos. Cada suma de control de comprobación aleatoria se basa en una sección predeterminada de cada segmento de datos, en donde un flujo se identifica mediante una suma de control de comprobación aleatoria respectiva. El resultado de este cálculo se denomina Identidad de Flujo (FI) y se utiliza como entrada para una Tabla de Identidad de Flujo (FIT) de tamaño arbitrario; esta tabla se mantiene como una tabla del lado de transmisión (tFIT) así como una tabla del lado de recepción (rFIT). La tabla se usa luego para identificar los diferentes flujos de datos 1201, 1202, 1203, 1204 y se construye a partir del análisis sintáctico de los flujos de datos, no se necesita comunicación del plano de control a través del enlace para sincronizar las tablas.
La tabla contiene información para cada Identidad de Flujo sobre qué enlace, ID de enlace (LID) se reenvió el último segmento de datos y el número de secuencia SEQ específico del flujo de datos y también un último número de secuencia (SQN) para el último segmento de datos de un cierto flujo de datos que se ha reenviado a través de cada enlace de comunicación 120a, 120b, 120c en el AG 121. La rFIT comprende además valores de Sellos de Tiempo de Entrega, DTS y Tamaño de Segmento, SS, donde los DTS son sellos de tiempo que indican cuándo, en el tiempo, se transmitió el último segmento, y los valores de SS indican el tamaño de datos del segmento de datos transmitido más recientemente del flujo correspondiente.
La unidad de manejo de tráfico 112, 132 está adaptada para seleccionar dicho cierto enlace de comunicación manteniendo la tFIT.
En este contexto, un flujo o flujo de datos es un flujo coherente y consecutivo de segmentos de datos. Un flujo de datos puede, según algunos aspectos, corresponder a un usuario que transmite una película, un usuario que envía un correo electrónico o un usuario que tiene una conversación telefónica.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para identificar un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, cuyo subconjunto de enlaces de comunicación disponibles está disponible para la transmisión de un segmento de datos dentro de un período de tiempo actual, y para seleccionar dicho cierto enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de dicho cierto segmento de datos 1216, 1217, 1221.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para seleccionar dicho cierto enlace de comunicación seleccionando un enlace de comunicación utilizado para la transmisión de un segmento de datos transmitido más recientemente de dicho cierto flujo de datos 1201,1204 en caso de que dicho enlace de comunicación esté comprendido en el subconjunto de enlaces de comunicación disponibles y seleccionando cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Un receptor de enlace de comunicación, aquí en forma de la segunda disposición de comunicación 130, es independiente del método aplicado en el transmisor de enlace de comunicación, aquí en forma de la primera disposición de comunicación 110. Por lo tanto, se puede realizar la recopilación y el reenvío de segmentos de datos con compatibilidad mantenida.
En otras palabras, la segunda disposición de comunicación 130, actuando, por tanto, como receptor de enlace de comunicación, está adaptada para recibir los segmentos de datos 1214-1223 a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c, y reenviar estos segmentos de datos 1214-1223 según el orden de recepción en un puerto de salida 133. Con este propósito, la primera disposición de comunicación 110 y la segunda disposición de comunicación 130 están dispuestas, según algunos aspectos, con una funcionalidad de reloj común. La funcionalidad de reloj común se utiliza para determinar el DTS.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para determinar un riesgo de reordenación de segmentos de datos manteniendo una Tabla de Caracterización de Enlace (LCT) que comprende información de estado asociada con cada enlace de comunicación en la pluralidad de enlaces de comunicación 120a, 120b, 120c. Por ejemplo, la información de estado comprende cualquiera de Latencia de Enlace (LL), Capacidad de Enlace (LC) e información de control de flujo que indica si un enlace de comunicación está disponible para la transmisión de un segmento de datos o no. En otras palabras, las características del enlace comprenden cualquiera de; latencia del enlace, ancho de banda del enlace y rendimiento del enlace. Las características del enlace están configuradas para ser o bien estáticas o bien dinámicas. En este último caso, la unidad de manejo de tráfico 112 está adaptada para determinar un riesgo de reordenación de segmentos de datos actualizando las características del enlace asociadas con el enlace de comunicación seleccionado.
Los segmentos de datos se transmiten siempre que exista un enlace de comunicación libre en el Grupo de Agregación 121. Si el enlace de comunicación a través del que se transmitió el segmento de datos anterior con la misma FI está libre, se preferirá ese. Más en detalle, cuando se recibe un segmento de datos, se calcula la FI y se comprueba la FIT a través de qué enlace de comunicación se transmitió el segmento de datos anterior con la misma FI. Si ese enlace de comunicación está libre según la información de control de flujo, el segmento de datos actual simplemente se reenvía a través del mismo enlace de comunicación y la entrada de FIT se actualiza con el DTS y el tamaño de segmento, o el tamaño de paquete (PS) para el nuevo segmento de datos.
Si el enlace de comunicación está ocupado según la información de control, se calcula un Tiempo Estimado de Llegada (ETA) para el segmento de datos anterior a partir de los datos existentes en la FIT y la LCT. La primera unidad de manejo de tráfico 112 está adaptada por tanto para determinar un riesgo de reordenación de segmentos de datos determinando el ETA asociada con un segmento de datos transmitido anteriormente. Esto se describirá con más detalle en lo que sigue.
El subíndice p significa que se hace referencia a un segmento de datos anterior, el subíndice n se refiere al enlace de comunicación específico utilizado para transferir un cierto segmento de datos, y el subíndice c significa que se hace referencia a un segmento de datos actual. El Tiempo Estimado de Llegada para un cierto segmento de datos anterior se puede escribir como:
Figure imgf000019_0001
Después de eso, se selecciona un enlace de comunicación libre para el segmento de datos actual y se calcula el ETAc para el segmento de datos actual.
Si ETAc > ETAp, el segmento de datos se reenvía inmediatamente sobre el nuevo enlace de comunicación. Si no es así, es decir, el segmento de datos actual llegaría antes que el anterior si se reenviara inmediatamente, se calcula un Tiempo de Almacenamiento Temporal (BT) según
Figure imgf000019_0002
La entrada de FIT luego se actualiza con un DTS estimado (eDTS) y PS para el nuevo segmento de datos según
Figure imgf000019_0003
donde CTS es un Sello de Tiempo Actual y M es un margen añadido para compensar un posible retardo de serialización que pospone la entrega después del Tiempo de Almacenamiento Temporal BT. Un Temporizador de Almacenamiento Temporal realiza un seguimiento del DTS objetivo (tDTS) según
Figure imgf000020_0001
Cuando el reloj alcanza el tDTS, el segmento de datos se reenvía tan pronto como el enlace de comunicación está libre, es decir, cuando la información de control de flujo indica que el enlace de comunicación está disponible para la transmisión de un segmento de datos, y se registra el DTS Real (aDTS). Se calcula un factor de corrección C según
Figure imgf000020_0002
Luego, se resta C de todos los Temporizadores de Almacenamiento Temporal activos para la FI correspondiente y del DTS en la FIT siempre que sea un eDTS, es decir, que se encuentre en el futuro.
En base al conocimiento del tiempo que se tarda en entregar un segmento de datos, se espera un tiempo mínimo de almacenamiento temporal para evitar la reordenación, y se debe enviar un segmento de datos lo antes posible después de ese tiempo, el tDTS. Debido al riesgo de que otro flujo ocupe el enlace actual en el tDTS, eDTS, que en realidad es la última vez que se puede enviar el paquete (dada la entrega anterior). aDTS es el tiempo real en que se envía el paquete; el tiempo se usa para actualizar el tDTS y el eDTS para paquetes en el mismo flujo que todavía se están almacenando temporalmente. Es decir, cuando almacenamos temporalmente múltiples paquetes en el mismo flujo, necesitamos comenzar desde el eDTS cuando se calcula el ETA para paquetes anteriores que aún no se han enviado. Una vez que se haya enviado el paquete anterior y conozca el aDTS, se puede actualizar el tiempo de entrega de los paquetes posteriores.
Una funcionalidad básica de la presente descripción se describirá ahora con más detalle con referencia a la Figura 1 y la Figura 12. Aquí hay un primer flujo de datos 1201 que se muestra con puntos dispersos, un segundo flujo de datos 1202 que se muestra con un patrón cuadriculado, un tercer flujo de datos 1203 se muestra con franjas ascendentes de izquierda a derecha y un cuarto flujo de datos 1204 se muestra con puntos densos. En una capa de datos de Tx 1210, se han identificado los diferentes flujos de datos con segmentos de datos y se han adjuntado números de secuencia SEQ específicos de flujo a cada segmento de datos, indicando el orden de los segmentos de datos para cada flujo de datos. Aquí, hay dos enlaces de comunicación disponibles, un primer enlace 1211 que es relativamente rápido y un segundo enlace 1212 que es relativamente lento.
Se decide transferir los seis primeros segmentos de datos 1214 a través del primer enlace 1211, y la primera unidad de manejo de tráfico 112 se adapta para determinar los tiempos estimados de llegada correspondientes para estos segmentos de datos 1214. Dado que el orden de estos segmentos de datos 1214 se determina que es el mismo según los correspondientes tiempos estimados de llegada, los segmentos de datos de los diferentes flujos de datos 1201, 1202, 1203, 1204 comprendidos en estos segmentos de datos 1214 se determina que se reciban en la segunda disposición de comunicación 130 en el orden correcto. La primera unidad de manejo de tráfico 112 luego permite que estos segmentos de datos 1214 se transmitan a través del primer enlace 1211, y se reciban en la segunda disposición de comunicación 130 y allí se reenvían a una capa de datos de Rx 1213.
Se decide que se transfiera el siguiente séptimo segmento de datos 1215, que está comprendido en el primer flujo de datos 1201 y tiene un SEQ de 3, a través del segundo enlace 1212. Hay un primer exceso de retardo 1224 antes de que se reenvíe el séptimo segmento de datos 1215, y la primera unidad de manejo de tráfico 112 está adaptada para determinar un primer tiempo estimado de llegada ETA1 para el séptimo segmento de datos 1215 estimando el primer exceso de retardo 1224. La primera unidad de manejo de tráfico 112 permite entonces que estos segmentos de datos 1214 se transmitan a través del segundo enlace 1212.
Se decide transferir los dos siguientes segmentos de datos 1216, 1217, un octavo segmento de datos 1216 y un noveno segmento de datos 1217, que están comprendidos en el primer flujo de datos 1201 y tienen un correspondiente SEQ de 4 y 5, a través del primer enlace 1211. La primera unidad de manejo de tráfico 112 está adaptada para determinar un segundo tiempo estimado de llegada ETA2 y un tercer tiempo de llegada ETA3 correspondientes para estos segmentos de datos 1216, 1217, y para comparar estos ETA estimados con el primer tiempo estimado de llegada ETA1. En este caso, ETA1>ETA3>ETA2, lo que indica que el séptimo segmento de datos 1215 se recibirá en la segunda disposición de comunicación 130 después del octavo segmento de datos 1216 y el noveno segmento de datos 1217, mientras que el octavo segmento de datos 1216 y el noveno segmento de datos 1217 se determina que se reciban en la segunda disposición de comunicación 130 en el orden correcto. Esto indica que el orden de estos segmentos de datos 1215, 1216, 1217 recibidos el primer flujo de datos 1201 será incorrecto, el séptimo segmento de datos 1215 que se reciba en la segunda disposición de comunicación 130 después del octavo segmento de datos 1216 y el noveno segmento de datos 1217.
Por lo tanto, la primera unidad de manejo de tráfico 112 está adaptada para almacenar temporalmente el octavo segmento de datos 1216 y el noveno segmento de datos 1217 de manera que se determine que el orden de estos segmentos de datos sea correcto cuando se reciben en la segunda disposición de comunicación 130.
Después del primer exceso de retardo 1224, el séptimo segmento de datos 1215 se recibe en la segunda disposición de comunicación 130 y se envía a la capa de datos de Rx 1213.
Antes de que el octavo segmento de datos 1216 y el noveno segmento de datos 1217 se transfieran a través del primer enlace 1211, se decide que se transfiera un décimo segmento de datos 1219 que está comprendido en el segundo flujo de datos 1202 a través del primer enlace 1211, y la primera unidad de manejo de tráfico 112 está adaptada para determinar un tiempo estimado de llegada para este segmento de datos 1214. Dado que no se determina que se reciban otros segmentos de datos anteriores comprendidos en el segundo flujo de datos 1202 en la segunda disposición de comunicación 130 después del décimo segmento de datos 1219, la primera unidad de manejo de tráfico 112 permite que este segmento de datos 1219 se transmita a través del primer enlace 1211, y donde se recibe en la segunda disposición de comunicación 130 y se reenvía a la capa de datos de Rx 1213.
A partir de entonces, el octavo segmento de datos 1216 y el noveno segmento de datos 1217 se transfieren a través del primer enlace 1211, se reciben en la segunda disposición de comunicación 130 y se reenvían a la capa de datos de Rx 1213. Dado que el décimo segmento de datos 1219 está comprendido en el segundo flujo de datos 1202, no importa que este segmento de datos se haya recibido en la segunda disposición de comunicación 130 antes que el octavo segmento de datos 1216 y el noveno segmento de datos 1217, dado que se conserva el orden con los flujos de datos.
Aquí se ha de señalar que el margen M mencionado anteriormente, que se usa para posponer la entrega después del Tiempo de Almacenamiento Temporal BT, aquí se usa para compensar la posibilidad de un segmento de datos como el décimo segmento de datos 1219 que se transfiere antes del octavo segmento de datos 1216 y el noveno segmento de datos 1217. Si no hubiera habido un décimo segmento de datos 1219 en este ejemplo, se habría registrado un DTS real (aDTS) anterior para el octavo segmento de datos 1216, y se habría calculado y usado un factor de corrección C correspondiente para el noveno segmento de datos 1217.
Se repite un procedimiento correspondiente para un undécimo segmento de datos 1220 y un duodécimo segmento de datos 1221 siguientes, que están comprendidos ambos en el cuarto flujo de datos 1204, donde se decide que se transfiera el undécimo segmento de datos 1220 a través del segundo enlace 1212 y el duodécimo segmento de datos 1221 se decide que se transfiera a través del primer enlace 1211. Hay un segundo exceso de retardo 1225 antes de que se reenvíe el undécimo segmento de datos 1220, y la primera unidad de manejo de tráfico 112 está adaptada para determinar un cuarto tiempo estimado de llegada ETA4 para el séptimo segmento de datos 1215 estimando el segundo exceso de retardo 1225.
La primera unidad de manejo de tráfico 112 está adaptada para determinar un quinto tiempo estimado de llegada ETA5 para el duodécimo segmento de datos 1221, y para comparar el ETA5 estimado con el cuarto tiempo estimado de llegada ETA4. En este caso, ETA4>ETA5, indicando que el undécimo segmento de datos 1220 se recibirá en la segunda disposición de comunicación 130 después del duodécimo segmento de datos 1221. Esto indica que el orden de estos segmentos de datos 1215, 1216, 1217 recibidos, el primero el flujo de datos 1201 será incorrecto, el undécimo segmento de datos 1220 que se recibe en la segunda disposición de comunicación 130 después del duodécimo segmento de datos 1221.
Por lo tanto, la primera unidad de manejo de tráfico 112 está adaptada para almacenar temporalmente el duodécimo segmento de datos 1221 de manera que se determine que el orden de estos segmentos de datos 1220, 1221 sea correcto cuando se reciben en la segunda disposición de comunicación 130.
Antes de que se transfieran el undécimo segmento de datos 1220 y el duodécimo segmento de datos 1221, se decide que se transfiera un decimotercer segmento de datos 1222 que está comprendido en el segundo flujo de datos 1202 a través del primer enlace 1211, y la primera unidad de manejo de tráfico 112 está adaptada para determinar un tiempo estimado de llegada para este segmento de datos 1222. Dado que no se determina que se reciban otros segmentos de datos anteriores comprendidos en el segundo flujo de datos 1202 en la segunda disposición de comunicación 130 después del decimotercer segmento de datos 1222, la primera unidad de manejo de tráfico 112 permite esto segmento de datos 1222 se transmita a través del primer enlace 1211, y donde se recibe en la segunda disposición de comunicación 130 y se reenvía a la capa de datos de Rx 1213.
A partir de entonces, el segundo exceso de retardo 1225 ha expirado y el undécimo segmento de datos 1220 se recibe en la segunda disposición de comunicación 130 y se envía a la capa de datos de Rx 1213. Luego, el duodécimo segmento de datos 1221 se transfiere a través del primer enlace 1211, se recibe en la segunda disposición de comunicación 130 y se reenvía a la capa de datos de Rx 1213.
En la Figura 4, hay un siguiente decimocuarto segmento de datos 1223 comprendido en el tercer flujo de datos 1203 que se ha decidido que se transfiera a través del primer enlace 1211. La primera unidad de manejo de tráfico 112 permite que este segmento de datos 1223 se transmita a través del primer enlace 1211, y se recibe en la segunda disposición de comunicación 130 y allí se reenvía a la capa de datos de Rx 1213. Según algunos aspectos, los números de secuencia se separan de los segmentos de datos antes de la transmisión y, en consecuencia, nunca se transmiten. En la Figura 12, los números de secuencia se muestran en los enlaces 1211, 1212 y la capa de datos de Rx 1213 por razones de claridad.
Según algunos aspectos, el almacenamiento temporal se realiza en una funcionalidad de almacenamiento temporal o capa de almacenamiento temporal 1226 que está comprendida en la primera disposición de comunicación 110.
La Figura 13 muestra un diagrama de flujo de un proceso según algunos aspectos en la primera disposición de comunicación 110. Después del inicio 1301, se investiga 1302 si hay enlaces libres disponibles hasta que los haya. Luego, se espera un siguiente segmento de datos, o paquete de datos, 1303. Para ese segmento de datos, se calcula la FI y se comprueba la tFIT 1304. Se investiga 1305 si es una nueva FI, y si ese es el caso, se comprueba la LCT y se escoge el primer enlace libre 1306. Si no es así, se investiga si el enlace a través del cual se envió el último segmento de datos del flujo en cuestión está libre 1307, y ese es el caso, y también después de que se escoja un primer enlace libre 1306, el segmento de datos se reenvía en el LID 1308, la FIT se actualiza 1309 y se investiga de nuevo 1302 si hay cualquier enlace libre disponible hasta que los haya.
Si el enlace a través del cual se reenvió el último segmento de datos del flujo en cuestión no está libre en el paso de investigación 1307, se comprueba la LCT y se escoge un primer enlace libre 1310. Luego se comprueba la LCT/FIT y se calculan 1311 el tiempo estimado de llegada para un el segmento de datos anterior ETCp y un segmento de datos actual ETAc. Luego se investiga 1312 si ETA > ETCp, y si ese es el caso, el paquete se reenvía en el LID 1308. De otro modo, se calcula 1313 un tiempo de almacenamiento temporal BT y un se inicia 1314 el temporizador de almacenamiento temporal.
Un ejemplo del paso 1315 se describe con referencia a la Figura 15. Aquí, el temporizador de almacenamiento temporal se inicia 1501, se calcula 1502 un sello de tiempo de entrega DTS objetivo, se inicia 1503 un temporizador de almacenamiento temporal, se calcula 1504 un DTS estimado, se actualiza 1505 la FIT, y el procedimiento entonces termina 1506.
La Figura 14a muestra un diagrama de flujo de un proceso según algunos aspectos en la primera disposición de comunicación 110; aquí se inicia el proceso 1401, siempre 1402 se realiza un seguimiento 1403 del temporizador de almacenamiento temporal, y el proceso siempre se reinicia 1404.
La Figura 14b muestra un diagrama de flujo de un proceso según algunos aspectos en la primera disposición de comunicación 110, más específicamente el seguimiento del temporizador de almacenamiento temporal 1405. Los paquetes con tiempo de entrega pospuesto residen en un almacenador temporal hasta la entrega. Con cada paquete está un temporizador y un tiempo de entrega objetivo (tDTS) asociado.
El estado de cada enlace en el grupo de agregación se comprueba 1406, 1407. Para todos los temporizadores de almacenamiento temporal (BT) 1408 asociados con el enlace, siempre que esté libre, se comprueba si el tiempo actual (CTS) ha pasado el tiempo de entrega objetivo (tDTS) 1409. Si es así, el paquete asociado con ese BT se reenvía en el enlace 1410. El tiempo de entrega real (aDTS) luego se registra 1411 para el paquete entregado y el factor de corrección (C) se calcula 1412. C se usa luego para corregir los BT que aún están activos para la misma FI y actualizar 1413 la Tabla de Identidad de Flujo para reflejar el tiempo de entrega correcto para el paquete. Esto se repite para todos los temporizadores 1414. Si el enlace no está libre, se repite un ciclo de comprobación de si el enlace está libre para todos los temporizadores 1415 hasta que el enlace esté libre.
Habilitar el almacenamiento temporal de los segmentos de datos en el lado de transmisión es una forma mejorada de usar los enlaces de comunicación, permitiendo una comprobación aleatoria más efectiva y también permitiendo mover flujos de datos entre los enlaces de comunicación realizando un seguimiento de un ETA y compensando el ETA cuando un flujo de datos se mueve a un enlace de comunicación más rápido.
Dado que los segmentos de datos se pueden reenviar en cualquier enlace de comunicación para cualquier transmisión, también se alcanzará un patrón de estado estable cuando la utilización del grupo de agregación sea alta. Este también es el caso con un solo flujo de datos. También, dado que cada flujo de datos prefiere permanecer en el mismo enlace de comunicación, los flujos de datos serán "atraídos" a los enlaces de comunicación que pueden sostener la necesidad de capacidad total del flujo de datos.
Dado que solo se debe mantener el orden dentro de los flujos de datos, el almacenamiento temporal necesario es menor que para la Vinculación de Enlaces de Comunicación, especialmente cuando existen grandes discrepancias en la tasa entre los enlaces de comunicación en un grupo de agregación. Esto se logra adjuntando un número de secuencia separado por flujo de datos.
Se ha determinado un tiempo estimado de llegada (ETA) con el fin de estimar un orden de segmentos de datos recibidos. Generalmente, la unidad de manejo de tráfico 112, 132 está adaptada para determinar el riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos. Tal riesgo, por ejemplo, se puede derivar de un ETA.
La Identidad de Flujo (FI), la Tabla de Identidad de Flujo (FIT) y sus componentes son opcionales.
Con referencia a la Figura 11, la presente descripción se refiere al método para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d comprendidos en un Grupo de Agregación, AG, realizado en una disposición de comunicación 110, 130, que comprende;
obtener Stb1 los segmentos de datos 1214-1223 a ser transmitidos,
determinar Stb5 un riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos 1201, 1204 que comprende un cierto segmento de datos 1216, 1217, 1221, donde dicho riesgo está asociado con la transmisión de dicho cierto segmento de datos a través de un cierto enlace de comunicación de entre la pluralidad de los enlaces de comunicación 120a, 120b, 120c, 120d, en base a las características del enlace asociadas con los enlaces de comunicación 120a, 120b, 120c, 120d y
almacenar temporalmente Stb6 dicho cierto segmento de datos 1216, 1217; 1221 hasta que el riesgo de reordenar satisfaga un criterio predeterminado, antes de transmitir el dicho cierto segmento de datos 1216, 1217; 1221 a través del enlace de comunicación seleccionado.
Se obtienen una serie de ventajas por medio de los métodos ilustrados en la Figura 11. Principalmente, se obtiene una configuración mejorada de diferentes dispositivos en un sistema de comunicación de enlace de comunicación, así como una funcionalidad de interfaz mejorada entre estos dispositivos. Además, es posible reenviar segmentos de datos a través de cualquier enlace en un grupo de agregación sin reordenarlos dentro de flujos individuales.
Una ventaja adicional es la insensibilidad a la tasa de datos de los flujos de datos individuales y la capacidad ofrecida por los enlaces individuales sin introducir un almacenamiento temporal excesivo.
Una ventaja adicional radica en la posibilidad de reenviar segmentos de datos a través de cualquier enlace en un grupo de agregación sin reordenarlos dentro de flujos de datos individuales.
Un receptor de enlace de comunicación es independiente de la presente descripción que se aplica a un transmisor de enlace de comunicación. Por lo tanto, la recopilación y el reenvío de segmentos de datos se pueden realizar con la compatibilidad mantenida.
Dado que los segmentos de datos se pueden reenviar en cualquier enlace de comunicación para cualquier transmisión, también se alcanzará un patrón de estado estable para una alta utilización del grupo de agregación también para un número bastante limitado de flujos.
Dado que el orden solo se debe mantener dentro de los flujos, el almacenamiento temporal necesario se reduce en comparación con la técnica anterior, especialmente cuando existen grandes discrepancias en la tasa entre los enlaces de comunicación en un grupo de agregación.
Según algunos aspectos, el método comprende detectar Stb2 uno o más flujos de datos 1201, 1202, 1203, 1204 en los segmentos de datos obtenidos 1214-1223.
Según algunos aspectos, la detección Stb2 comprende determinar Stb21 una suma de control de comprobación aleatoria en base a una sección predeterminada de cada segmento de datos, en donde un flujo se identifica mediante una suma de control de comprobación aleatoria respectiva.
Según algunos aspectos, el método comprende identificar Stb3 un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, cuyo subconjunto de enlaces de comunicación disponibles está disponible para la transmisión de un segmento de datos dentro de un período de tiempo actual y seleccionar Stb4 dicho cierto enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de dicho cierto segmento de datos 1216, 1217, 1221.
Según algunos aspectos, la selección Stb4 comprende seleccionar Stb41 un enlace de comunicación utilizado para la transmisión de un segmento de datos transmitido más recientemente desde dicho determinado flujo de datos 1201, 1204 en caso de que dicho enlace de comunicación esté comprendido en el subconjunto de enlaces de comunicación disponibles y seleccionar cualquiera enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Según algunos aspectos, la selección Stb4 comprende mantener Stb42 una Tabla de Identidad de Flujo de transmisión, tFIT, que comprende Identidades de Flujo, FI, asociadas con los flujos 401,402, 403, 404 identificados, identificadores de enlace, LID, de comunicación correspondientes, Sellos de Tiempo de Entrega, DTS, y valores de Tamaño de Segmento, SS, en donde los LID se utilizan para identificar dicho enlace de comunicación anterior utilizado para la transmisión del segmento de datos transmitido más recientemente asociado con cada FI de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, los DTS son sellos de tiempo que indican cuándo se transmitió el último segmento en el tiempo, y los valores de SS indican el tamaño de datos del segmento de datos transmitido más recientemente del flujo correspondiente.
Esto proporciona la ventaja de proporcionar una herramienta para realizar un seguimiento de los flujos de datos. Según algunos aspectos, el valor de DTS se determina en base a un reloj común, en donde todos los enlaces de comunicación están dispuestos para recibir el reloj común.
Esto proporciona la ventaja de proporcionar valores de DTS fiables y consistentes.
Según algunos aspectos, las características del enlace comprenden cualquiera de; latencia del enlace, ancho de banda del enlace y rendimiento del enlace.
Según algunos aspectos, las características del enlace están configuradas para ser estáticas.
Según algunos aspectos, las características del enlace son dinámicas, y en donde la determinación Stb5 comprende actualizar Stb51 las características del enlace asociadas con el enlace de comunicación seleccionado.
Según algunos aspectos, la determinación Stb5 comprende mantener Stb52 una Tabla de Caracterización de Enlace, LCT, que comprende información de estado asociada con cada enlace de comunicación en la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Esto proporciona la ventaja de proporcionar una herramienta para realizar un seguimiento del estado del enlace de comunicación.
Según algunos aspectos, la información de estado comprende cualquier Latencia de Enlace, LL, Capacidad de Enlace, LC e información de control de flujo que indica si un enlace de comunicación está disponible para la transmisión de un segmento de datos.
Esto proporciona la ventaja de proporcionar una herramienta para realizar un seguimiento de si hay cualquier enlace de comunicación disponible.
Según algunos aspectos, la determinación Stb5 comprende determinar Stb53 de un Tiempo Estimado de Llegada, ETA, asociado con un segmento de datos transmitido anteriormente.
Esto proporciona la ventaja de reducir el tiempo de almacenamiento temporal a lo que se determina que es necesario. Según algunos aspectos, la pluralidad de enlaces de comunicación 120a, 12b, 120c comprende uno o más enlaces de comunicación 120a, 120b, 120c, y en donde la disposición de comunicación 110, 130 comprende una unidad de manejo de tráfico 112, 132 y una interfaz de enlace de comunicación 111a, 111b, 111c; 131a, 131b, 131c para cada enlace de comunicación 120a, 120b, 120c.
En general, la presente descripción se refiere a una disposición de comunicación 110, 130 adaptado para la agregación de enlaces de una pluralidad de enlaces de comunicación 120a, 12b, 120c, comprendidos en un Grupo de Agregación, AG, 121, cuya disposición de comunicación 110, 130 está adaptado para comunicarse a través de la pluralidad de enlaces de comunicación 120a, 120b, 120c y comprende una unidad de manejo de tráfico 112, 132, cuya unidad de manejo de tráfico 112, 132 está adaptada para:
obtener los segmentos de datos 1214-1223 a ser transmitidos,
determinar un riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos 1201, 1204 que comprende un cierto segmento de datos 1216, 1217; 1221, donde dicho riesgo está asociado con la transmisión de dicho cierto segmento de datos a través de un cierto enlace de comunicación de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, en base a las características del enlace asociadas con los enlaces de comunicación 120a, 120b, 120c, 120d, y para
almacenar temporalmente dicho cierto segmento de datos 416, 417; 421 hasta que el riesgo de reordenación satisfaga un criterio predeterminado, antes de transmitir dicho cierto segmento de datos 416, 417; 421 a través del enlace de comunicación seleccionado.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para detectar uno o más flujos de datos 1201, 1202, 1203, 1204 en los segmentos de datos 1214-1223 obtenidos.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para detectar dichos uno o más flujos de datos 1201,1202, 1203, 1204 determinando una suma de control de comprobación aleatoria en base a una sección predeterminada de cada segmento de datos, en donde un flujo se identifica por una suma de control de comprobación aleatoria respectiva.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para identificar un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, 120d, cuyo subconjunto de enlaces de comunicación disponibles está disponible para la transmisión de un segmento de datos dentro de un período de tiempo actual, y para seleccionar dicho cierto enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de dicho cierto segmento de datos 1216, 1217; 1221. Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para seleccionar dicho cierto enlace de comunicación seleccionando un enlace de comunicación utilizado para la transmisión de un segmento de datos transmitido más recientemente de dicho cierto flujo de datos 1201,1204 en caso de que dicho enlace de comunicación esté comprendido en el subconjunto de enlaces de comunicación disponibles y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para seleccionar dicho cierto enlace de comunicación manteniendo una Tabla de Identidad de Flujo de transmisión, tFIT, que comprende Identidades de Flujo, FI, asociadas con los flujos 1201, 1202, 1203, 1204 identificados, correspondientes identificadores de enlace de comunicación, LID, Sellos de Tiempo de Entrega, DTS y valores de Tamaño de Segmento, SS, donde los LID se utilizan para identificar dicho enlace de comunicación anterior utilizado para la transmisión del segmento de datos transmitido más recientemente asociado con cada FI de entre la pluralidad de enlaces de comunicación 120a, 120b, 120c, los DTS son sellos de tiempo que indican cuándo en el tiempo se transmitió el último segmento, y los valores de SS indican el tamaño de datos del segmento de datos transmitido más recientemente del flujo correspondiente.
Según algunos aspectos, el valor de DTS se determina en base a un reloj común, en donde todos los enlaces de comunicación están dispuestos para recibir el reloj común.
Según algunos aspectos, las características del enlace comprenden cualquiera de; latencia del enlace, ancho de banda del enlace y rendimiento del enlace.
Según algunos aspectos, las características del enlace están configuradas para ser estáticas.
Según algunos aspectos, las características del enlace son dinámicas, y en donde la unidad de manejo de tráfico 112, 132 está adaptada para determinar el riesgo de reordenación de segmentos de datos actualizando las características del enlace asociadas con el enlace de comunicación seleccionado.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para determinar un riesgo de reordenación de segmentos de datos manteniendo una Tabla de Caracterización de Enlaces, LCT, que comprende información de estado asociada con cada enlace de comunicación en la pluralidad de enlaces de comunicación 120a, 120b, 120c.
Según algunos aspectos, la información de estado comprende cualquier Latencia de Enlace, LL, Capacidad de Enlace, LC e información de control de flujo que indica si un enlace de comunicación está disponible para la transmisión de un segmento de datos.
Según algunos aspectos, la unidad de manejo de tráfico 112, 132 está adaptada para determinar un riesgo de reordenación de segmentos de datos determinando un Tiempo Estimado de Llegada, ETA, asociado con un segmento de datos transmitido anteriormente.
Según algunos aspectos, la pluralidad de enlaces de comunicación 120a, 12b, 120c comprende uno o más enlaces de comunicación 120a, 120b, 120c, y en donde la disposición de comunicación 110, 130 comprende una interfaz de enlace de comunicación 111a, 111b, 111c; 131a, 131b, 131c para cada enlace de comunicación 120a, 120b, 120c.
Según algunos aspectos, el hecho de que el enlace de comunicación preferido no esté disponible para la transmisión del segmento de datos dentro del período de tiempo actual no significa que el enlace de comunicación preferido sea defectuoso o funcione mal. En su lugar, esto se debe en algunos aspectos al hecho de que el enlace de comunicación preferido no es el preferido dentro del período de tiempo actual. Esto se debe a su vez según algunos aspectos al hecho de que el enlace de comunicación preferido está asociado con una condición de congestión, y/o que el enlace de comunicación preferido está asociado con una condición de carga de tráfico que excede un umbral de carga de tráfico alto preconfigurado. Alternativamente, según algunos aspectos, el enlace de comunicación preferido está asociado con un primer coste de transmisión, y un enlace de comunicación alternativo está asociado con un coste de transmisión menor que el primer coste de transmisión donde el primer coste de transmisión excede un umbral de coste preconfigurado.

Claims (17)

REIVINDICACIONES
1. Un método para la agregación de enlaces de una pluralidad de enlaces de comunicación (120a, 120b, 120c, 120d) comprendidos en un Grupo de Agregación, AG, (121), realizado en una disposición de comunicación (110, 130), el método que comprende;
obtener (St1) un segmento de datos (210) a ser transmitido,
identificar (St2) un enlace de comunicación preferido (ENLACE 1) de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c) para la transmisión del segmento de datos y, si el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro un período de tiempo actual,
identificar (St3) un enlace de comunicación alternativo (ENLACE 2) de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c) diferente del enlace de comunicación preferido,
fragmentar (St4) el segmento de datos (210) en al menos un primer fragmento (210a) y un segundo fragmento (210b),
adjuntar (St5) una cabecera de fragmento (220, 230) a cada uno del primer y segundo fragmentos, cada cabecera de fragmento que está configurada para identificar el fragmento respectivo como un fragmento que pertenece a un segmento de datos, y
transmitir (St6) el primer fragmento (210a) a través del enlace de comunicación alternativo (ENLACE 2),
transmitir (St7) el segundo fragmento (210b) a través del enlace de comunicación preferido (ENLACE 1) en caso de que el enlace preferido llegue a estar disponible dentro de un período de tiempo después de transmitir el primer fragmento.
2. El método según la reivindicación 1, en donde las cabeceras de fragmentos (220, 230) comprenden números de secuencia de una secuencia asociada con un flujo en el que está comprendido el segmento de datos.
3. El método según la reivindicación 1 o 2, en donde el enlace de comunicación preferido está asociado con una tasa de transmisión T1 y/o una capacidad de transmisión C1, en donde el enlace de comunicación alternativo está asociado con una tasa de transmisión T2 y/o una capacidad de transmisión C2, en donde T1 es mayor que T2 y/o C1 es mayor que C2.
4. El método según la reivindicación 3, en donde la longitud L" del primer fragmento se determina como L"=L/(1+T1/T2), donde L es la longitud del segmento de datos, T1 es la tasa de transmisión del enlace de comunicación preferido, y donde T2 es la tasa de transmisión del enlace de comunicación alternativo.
5. El método según la reivindicación 3, en donde la longitud L" del primer fragmento se determina como L"=L/(1+C1/C2), donde L es la longitud del segmento de datos, C1 es la capacidad de transmisión del enlace de comunicación preferido, y donde C2 es la capacidad de transmisión del enlace de comunicación alternativo.
6. El método según cualquiera de las reivindicaciones 1 a 3, en donde la longitud L'' del primer fragmento es configurable y/o fija.
7. El método según cualquier reivindicación anterior, en donde el enlace de comunicación preferido que no está disponible para la transmisión del segmento de datos dentro del período de tiempo actual comprende el enlace de comunicación preferido que está asociado con una condición de congestión.
8. El método según cualquier reivindicación anterior, en donde el enlace de comunicación preferido que no está disponible para la transmisión del segmento de datos dentro del período de tiempo actual comprende el enlace de comunicación preferido que está asociado con una condición de carga de tráfico que excede un umbral de carga de tráfico alto preconfigurado.
9. El método según cualquier reivindicación anterior, en donde el enlace de comunicación preferido está asociado con un primer coste de transmisión, y en donde el enlace de comunicación alternativo está asociado con un coste de transmisión menor que el primer coste de transmisión, en donde el enlace de comunicación preferido que no está disponible para la transmisión del segmento de datos dentro del período de tiempo actual comprende el primer coste de transmisión que excede un umbral de coste preconfigurado.
10. El método según cualquier reivindicación anterior, en donde la identificación comprende identificar (St31) una pluralidad de enlaces de comunicación alternativos de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c) y fragmentar (St41) el segmento de datos en fragmentos para su transmisión a través de al menos parte de la pluralidad de enlaces de comunicación alternativos.
11. El método según cualquier reivindicación anterior, que comprende, además;
obtener (Sta1) segmentos de datos (414-417, 419-421, 423-425) a ser transmitidos,
identificar (Sta2) uno o más flujos de datos (401, 402, 403, 404) en los segmentos de datos (414-417, 419-421, 423-425) obtenidos,
adjuntar (Sta3) números de secuencia, SEQ, a segmentos de datos (414-417, 419-421, 423-425) asociados con cada flujo de datos (401,402, 403, 404) identificado, en donde los números de secuencia son independientes entre flujos de datos,
determinar (Sta4) un subconjunto de enlaces de comunicación disponibles de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c), qué subconjunto de enlaces de comunicación disponibles están disponibles para la transmisión de un segmento de datos dentro de un período de tiempo actual, y
seleccionar (Sta5) un enlace de comunicación del subconjunto de enlaces de comunicación disponibles para la transmisión de un segmento de datos asociado con un cierto flujo de datos (401,402, 403, 404), donde la selección comprende seleccionar un enlace de comunicación anterior que se ha utilizado para transmisión de un segmento de datos anterior de dicho cierto flujo de datos (401,402, 403, 404) en caso de que dicho enlace de comunicación anterior esté comprendido en el subconjunto de enlaces de comunicación disponibles, y seleccionar cualquier enlace de comunicación comprendido en el subconjunto de enlaces de comunicación disponibles de otro modo.
12. El método según cualquiera de las reivindicaciones 1 -10, que comprende;
obtener (Stb1) segmentos de datos (1214-1223) a ser transmitidos,
determinar (Stb5) un riesgo de reordenación de segmentos de datos dentro de un cierto flujo de datos (1201, 1204) que comprende un cierto segmento de datos (1216, 1217; 1221), donde dicho riesgo está asociado con la transmisión de dicho cierto segmento de datos a través de cierto enlace de comunicación de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c, 120d), en base a las características del enlace asociadas con los enlaces de comunicación (120a, 120b, 120c, 120d), y
almacenar temporalmente (Stb6) dicho cierto segmento de datos (1216, 1217; 1221) hasta que el riesgo de reordenación satisfaga un criterio predeterminado, antes de transmitir dicho cierto segmento de datos (1216, 1217; 1221) a través del enlace de comunicación seleccionado.
13. El método según cualquiera de las reivindicaciones 1-12, que comprende;
recibir (Sr1) datos a través de la pluralidad de enlaces de comunicación (120a, 120b, 120c),
detectar (Sr2) cabeceras de fragmentos asociadas con fragmentos en los datos recibidos,
reensamblar (Sr3) fragmentos correspondientes a los respectivos segmentos de datos, y
reenviar (Sr4) de segmentos de datos reensamblados en un puerto (133, 113) de la disposición de comunicación (130, 110).
14. Una unidad de manejo de tráfico (500) dispuesta para la agregación de enlaces de una pluralidad de enlaces de comunicación (120a, 120b, 120c, 120d) comprendidos en un Grupo de Agregación, AG, (121), que comprende una circuitería de procesamiento (510), la circuitería de procesamiento que comprende
un módulo de obtención (Stx1) configurado para obtener un segmento de datos (210) a ser transmitido, un primer módulo de identificación (Stx2) configurado para identificar un enlace de comunicación preferido (ENLACE 1) de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c) para la transmisión del segmento de datos y, si el enlace de comunicación preferido no está disponible para la transmisión del segmento de datos dentro de un período de tiempo actual,
identificar, mediante un segundo módulo de identificación (Stx3), un enlace de comunicación alternativo (ENLACE 2) de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c) diferente del enlace de comunicación preferido, la circuitería de procesamiento que comprende
un módulo de fragmentación (Stx4) configurado para fragmentar el segmento de datos (210) en al menos un primer fragmento (210a) y un segundo fragmento (210b),
un módulo de adjunto (Stx5) configurado para adjuntar una cabecera de fragmento (220, 230) a cada uno del primer y segundo fragmentos, cada cabecera de fragmento que está configurada para identificar el fragmento respectivo como un fragmento que pertenece a un segmento de datos,
un primer módulo de transmisión (Stx6) configurado para transmitir el primer fragmento (210a) a través del enlace de comunicación alternativo (ENLACE 2), y
un segundo módulo de transmisión (Stx7) configurado para transmitir el segundo fragmento (210b) sobre el enlace de comunicación preferido (ENLACE 1) en caso de que el enlace preferido llegue a estar disponible dentro de un período de tiempo después de transmitir el primer fragmento.
15. La unidad de manejo de tráfico (500) según la reivindicación 14, en donde el segundo módulo de identificación (Stx31) está configurado para identificar una pluralidad de enlaces de comunicación alternativos de entre la pluralidad de enlaces de comunicación (120a, 120b, 120c), y en donde el módulo de fragmentación (Stx41) está configurado para fragmentar el segmento de datos en fragmentos para la transmisión a través de al menos parte de la pluralidad de enlaces de comunicación alternativos.
16. Un sistema de comunicación de enlace de radio que comprende una primera y una segunda unidad de manejo de tráfico (112, 132) según cualquiera de las reivindicaciones 14-15, dispuestas para comunicarse entre sí a través de enlaces de comunicación (120a, 120b, 120c, 120d).
17. La unidad de manejo de tráfico (500) según cualquiera de las reivindicaciones 14 o 15, la circuitería de procesamiento que comprende;
un módulo de recepción (Srx1) configurado para recibir datos a través de la pluralidad de enlaces de comunicación (120a, 120b, 120c),
un módulo de detección (Srx2) configurado para detectar cabeceras de fragmentos asociadas con fragmentos en los datos recibidos,
un módulo de reensamblaje (Srx3) configurado para reensamblar fragmentos correspondientes a los respectivos segmentos de datos, y
un módulo de reenvío (Srx4) configurado para reenviar segmentos de datos reensamblados en un puerto (133, 113) de la disposición de comunicación (130, 110).
ES19701642T 2018-01-31 2019-01-24 Agregación de enlaces con fragmentación de segmentos de datos Active ES2953738T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
PCT/EP2018/052399 WO2019149351A1 (en) 2018-01-31 2018-01-31 Link aggregation based on estimated time of arrival
PCT/EP2018/052394 WO2019149349A1 (en) 2018-01-31 2018-01-31 Link aggregation with receive side buffering
PCT/EP2019/051686 WO2019149603A1 (en) 2018-01-31 2019-01-24 Link aggregation with data segment fragmentation

Publications (1)

Publication Number Publication Date
ES2953738T3 true ES2953738T3 (es) 2023-11-15

Family

ID=65228560

Family Applications (1)

Application Number Title Priority Date Filing Date
ES19701642T Active ES2953738T3 (es) 2018-01-31 2019-01-24 Agregación de enlaces con fragmentación de segmentos de datos

Country Status (4)

Country Link
US (2) US11516695B2 (es)
EP (1) EP3747169B1 (es)
ES (1) ES2953738T3 (es)
WO (1) WO2019149603A1 (es)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110943933B (zh) * 2018-09-25 2023-09-01 华为技术有限公司 一种实现数据传输的方法、装置和***
EP3716537A1 (de) * 2019-03-25 2020-09-30 Siemens Aktiengesellschaft Verfahren zur datenkommunikation, netzwerkknoten, computerprogramm und computerlesbares medium
US20210250277A1 (en) * 2020-02-07 2021-08-12 Mediatek Inc. Packet aggregation method applied in multiple link operations of an electronic device
US11337137B2 (en) * 2020-02-18 2022-05-17 At&T Intellectual Property I, L.P. Selectively rerouting network traffic in a fifth generation (5G) or other next generation network
US11902162B2 (en) * 2020-07-09 2024-02-13 Sony Semiconductor Solutions Corporation Transmission apparatus, communications system, and information transmission method
JP7460244B1 (ja) 2023-02-28 2024-04-02 Necプラットフォームズ株式会社 無線伝送装置、無線伝送方法およびデータ処理方法
CN117176202B (zh) * 2023-09-22 2024-03-19 怀化建南机器厂有限公司 一种双模通信单元高速电力载波无线通讯***

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6615383B1 (en) * 1998-05-29 2003-09-02 Sun Microsystems, Inc. System and method for message transmission between network nodes connected by parallel links
US7924798B1 (en) 2002-11-27 2011-04-12 Sprint Spectrum L.P. Method for transmitting data in a wireless telecommunications network using multiple data channels
US7894481B2 (en) * 2008-12-31 2011-02-22 Silver Spring Networks, Inc. Methods and systems for dynamic fragmentation of packets by communication network nodes
BR112013033449A2 (pt) * 2011-06-29 2017-01-31 Nec Corp sistema de transmissão sem fios, dispositivo de transmissão sem fios, método de transmissão sem fios e suporte de dados legível por computador
US10341224B2 (en) * 2013-01-25 2019-07-02 Dell Products L.P. Layer-3 flow control information routing system
CA2975585A1 (en) * 2014-02-04 2015-08-13 Distrix Networks Ltd. Bandwidth and latency estimation in a communication network
US9571411B1 (en) * 2014-12-29 2017-02-14 Juniper Networks, Inc. Using a firewall filter to select a member link of a link aggregation group
EP3270565B1 (en) * 2015-03-28 2019-05-01 Huawei Technologies Co., Ltd. Multi-link aggregation message sending method and apparatus
US20170311204A1 (en) * 2016-04-26 2017-10-26 Laurent Cariou Access point (ap), station (sta) and method for link aggregation
US10856203B2 (en) * 2017-01-19 2020-12-01 Qualcomm Incorporated Signaling for link aggregation setup and reconfiguration
EP3747168A1 (en) 2018-01-31 2020-12-09 Telefonaktiebolaget LM Ericsson (publ) Link aggregation with receive side buffering
US11456947B2 (en) 2018-01-31 2022-09-27 Telefonaktiebolaget Lm Ericsson (Publ) Link aggregation based on estimated time of arrival

Also Published As

Publication number Publication date
EP3747169B1 (en) 2023-06-21
US20230090712A1 (en) 2023-03-23
US20210037409A1 (en) 2021-02-04
EP3747169A1 (en) 2020-12-09
WO2019149603A1 (en) 2019-08-08
US11974160B2 (en) 2024-04-30
US11516695B2 (en) 2022-11-29

Similar Documents

Publication Publication Date Title
ES2953738T3 (es) Agregación de enlaces con fragmentación de segmentos de datos
JP4361565B2 (ja) ノード装置、パケット制御装置、無線通信装置および送信制御方法
US10455042B2 (en) Transmitting information across a communications network
CN109391461B (zh) 透传业务频率的方法和设备
KR101504144B1 (ko) 다채널 패킷 송신을 위한 시스템 및 방법
EP1816803B1 (en) Transmission processing method for data frame and system thereof
CN107770085B (zh) 一种网络负载均衡方法、设备及***
CN110831061B (zh) 调度吞吐量的获取方法及装置、基站、存储介质
CN112333151A (zh) 接收cpri数据流和接收以太网帧的方法、装置及***
CA2529600C (en) Method and system for efficient flow control for client data frames over gfp across a sonet/sdh transport path
US11546250B2 (en) Link aggregation with receive side buffering
JP5423888B2 (ja) 伝送装置、帯域制御方法及びコンピュータプログラム
EP3560152B1 (en) Determining the bandwidth of a communication link
US9800509B2 (en) System and method for efficient transport of large data files
ES2784849T3 (es) Procedimiento para la optimización del tiempo de propagación en la transmisión de comunicaciones móviles de mensajes de datos, orientada a paquetes
US11196584B2 (en) Network layer channel bonding
US11456947B2 (en) Link aggregation based on estimated time of arrival
US9979652B2 (en) Intermediate node, an end node, and method for avoiding latency in a packet-switched network
US20170093673A1 (en) Transmission apparatus and transmission system
JP4828555B2 (ja) ノード装置および帯域制御方法
EP4236143A2 (en) Techniques for wireless access and wireline network integration
WO2024039922A1 (en) Network layer channel bonding with an external device
JP4774411B2 (ja) エッジノードおよび帯域制御方法