ES2235449T3 - Metodo, planificador, memoria intermedia inteligente, procesador y sistema de telecomunicaciones para compartir un ancho de banda disponible. - Google Patents

Metodo, planificador, memoria intermedia inteligente, procesador y sistema de telecomunicaciones para compartir un ancho de banda disponible.

Info

Publication number
ES2235449T3
ES2235449T3 ES99401811T ES99401811T ES2235449T3 ES 2235449 T3 ES2235449 T3 ES 2235449T3 ES 99401811 T ES99401811 T ES 99401811T ES 99401811 T ES99401811 T ES 99401811T ES 2235449 T3 ES2235449 T3 ES 2235449T3
Authority
ES
Spain
Prior art keywords
bandwidth
data
reserved
service
guaranteed
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.)
Expired - Lifetime
Application number
ES99401811T
Other languages
English (en)
Inventor
Michel Andre Robert Henrion
Olivier Bonaventure
Peter Irma August Barri
Emmanuel Desmet
Johan Gabriel August Verkinderen
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.)
Alcatel CIT SA
Alcatel Lucent SAS
Original Assignee
Alcatel CIT SA
Alcatel SA
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
Application filed by Alcatel CIT SA, Alcatel SA filed Critical Alcatel CIT SA
Application granted granted Critical
Publication of ES2235449T3 publication Critical patent/ES2235449T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L12/5602Bandwidth control in ATM Networks, e.g. leaky bucket
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5629Admission control
    • H04L2012/5631Resource management and allocation
    • H04L2012/5632Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5651Priority, marking, classes

Abstract

El procedimiento comparte el ancho de banda disponible sobre un enlace común (L) en una red de comunicación entre una pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) que se transmiten a través del enlace común (L). El procedimiento es usado por un procesador (P) e incluye los pasos de compartir el ancho de banda reservado incluido en el ancho de banda disponible entre la pluralidad de flujos del datos (C1, C2,..., C8, C9,..., C16), y compartiendo el ancho de banda no reservado entre la pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) de acuerdo con una respectiva parte de paquete de datos no reservada que se asocia a cada uno (C2) de la pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16). El ancho de banda no reservado se incluye en el ancho de banda disponible en exceso del ancho de banda reservado. El paso de compartir el ancho de banda no reservado incluye la asociación a cada uno (C2) de la pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) de unrespectivo peso administrativo adaptable (W2) y la determinación de la parte de paquete de datos no reservado respectiva que se asocia al flujo (C2) de datos en función de su peso administrativo adaptable respectivo (W2).

Description

Método, planificador, memoria intermedia inteligente, procesador y sistema de telecomunicaciones para compartir un ancho de banda disponible.
La presente invención se refiere a un método para compartir ancho de banda disponible según se describe en el preámbulo de la reivindicación 1, a un procesador que realiza tal método según se describe en el preámbulo de la reivindicación 20 y a un planificador, una memoria intermedia inteligente y un sistema de telecomunicaciones según se describe en el preámbulo de la reivindicación 26, la reivindicación 27 y la reivindicación 28, respectivamente.
Un método de esta clase para compartir ancho de banda disponible ya es conocido en la técnica, por ejemplo por el artículo "Un algoritmo de aceptación de memoria intermedia flexible para soportar una categoría de servicio de velocidad garantizada de tramas en conmutadores ATM en modo de transferencia asíncrono", escrito por O. Bonaventure y presentado en el taller IFIP ATM98, Julio 20-22, 1998, páginas 71/1 a 71/10. En el mismo se describe un algoritmo de aceptación de memoria intermedia flexible para soportar la categoría de servicio de Velocidad de Tramas Garantizada GFR en conmutadores de Modo de Transferencia asíncrono. El servicio GFR es una de las categorías de servicio que están especificadas para una clase diferente de aplicaciones de red. Para cada clase de servicio, se da un conjunto de parámetros para describir el tráfico presentado a la red y la Calidad de Servicio que se requiere de la red. Con el fin de satisfacer los objetivos deseados de QOS se define una clase diferente de mecanismos de control de tráfico.
Se describe en este artículo un método para compartir ancho de banda disponible sobre un enlace común en una red de comunicación entre una pluralidad de flujos de datos que se transmiten a través del enlace común, en particular para el servicio GFR de velocidad garantizada de tramas. Se describe en este artículo que el objetivo de la categoría de servicio GFR de Velocidad Garantizada de Tramas es proporcionar un servicio con un ancho de banda mínimo garantizado que sea fácil de usar para los sistemas extremos. Aunque estrictamente no se requieren modificaciones en los sistemas extremos para obtener beneficios de la categoría de servicio GFR de Velocidad Garantizada de Tramas, deben mejorarse bloques funcionales particulares tales como conmutadores o enrutadores para soportar esta categoría de servicio.
En realidad, en la sección 2 del trabajo antes mencionado, se cita que la motivación principal de la introducción de la categoría de servicio GFR era mantener la sencillez de la categoría de servicio de Velocidad de Bits sin Especificar UBR, al tiempo que se proporcionaba un mejor servicio permitiendo asociar un ancho de banda garantizado mínimo con cada conexión virtual, denominada en esta aplicación flujo de datos, que hace uso de tal enlace común. Un contrato de tráfico para un servicio GFR de esta clase incluye la definición de una Velocidad Mínima de Células MCR para cada flujo de datos. Semejante Velocidad Mínima de Células MCR se corresponde con un ancho de banda garantizado mínimo expresado, por ejemplo, en células por segundo. El ancho de banda garantizado mínimo es el ancho de banda mínimo que se garantiza en cualquier momento para cada flujo de datos establecido de conformidad con su contrato y que se determina durante el establecimiento de conexión del flujo de datos. Esto significa que el ancho de banda garantizado está disponible en el enlace común para cada flujo de datos establecido y que se usa o no para este flujo de datos establecido.
De esta manera, un método para compartir ancho de banda disponible en un enlace común incluye un paso de compartir ancho de banda reservado incluido en el ancho de banda disponible entre la pluralidad de flujos de datos. Una manera posible de compartir el ancho de banda disponible, según se describe en el artículo para el servicio GFR, está en función de su velocidad mínima de células MCR.
Se ha de destacar que, según se menciona también en el artículo, el ancho de banda disponible que es compartido entre los flujos de datos en proporción a su MCR no es necesariamente un ancho de banda constante. En realidad, además de la categoría de servicio GFR, un conmutador, por ejemplo ATM, podría ser capaz de soportar otras categorías de servicio. En un conmutador multiservicio de esta clase, el ancho de banda disponible para los flujos de paquetes de datos de servicio GFR ya no es constante, sino que depende de la cantidad de tráfico con una prioridad mayor, por ejemplo, tráfico en tiempo real. Esto significa que el ancho de banda total en el enlace común podría ser más grande y distribuirse a otras clases de servicio como servicios en tiempo real en los que es importante la entrega puntual de los paquetes. Ha de comprenderse que los algoritmos de control de admisión de conexión garantizan que siempre esté disponible un ancho de banda promedio definido previamente para los flujos de datos GFR superior a la suma de las diferentes velocidades de células mínimas de todos los flujos de datos GFR.
Asimismo, se menciona en el artículo que el servicio GFR también proporciona la ventaja al sistema extremo de transmitir paquetes de datos, que están incluidos en tal flujo de datos, en exceso de la velocidad de células mínima MCR que está asociada a su flujo de datos. Un método para compartir ancho de banda disponible que se menciona en el artículo del párrafo 7.1, es decir, el mecanismo EPD Doble, tiene, sin embargo, el inconveniente de que la asignación del ancho de banda sobrante, denominado ancho de banda no reservado, no puede controlarse en absoluto. Por otro lado, el párrafo 7.3 del artículo menciona dos algoritmos que están controlando este ancho de banda no reservado: una implementación proporciona una asignación justa del ancho de banda no reservado y otra implementación distribuye el ancho de banda no reservado en proporción a la MCR de los flujos de datos. De esta manera, un método para compartir ancho de banda disponible en un enlace común incluye un paso de compartir ancho de banda no reservado, que está en exceso del ancho de banda reservado, según una respectiva participación de paquete de datos no reservada que está asociada a cada uno de los flujos de datos.
Un inconveniente de estos algoritmos de la técnica anterior es que, sin embargo, están compartiendo el ancho de banda no reservado de conformidad con una estrategia particular, por ejemplo, una participación justa de todos los flujos de datos o una participación en función de su velocidad de células mínima MCR. Esto significa que la participación de paquete de datos no reservado está definida previamente por los algoritmos conocidos. No existe flexibilidad en los operadores de red para definir sus propias políticas para compartir el ancho de banda sobrante.
Un objeto de la presente invención es proporcionar un método para compartir ancho de banda disponible como el de los tipos conocidos anteriores, pero que proporcione al operador de red la flexibilidad para definir sus propias políticas para compartir el ancho de banda no reservado.
Según la invención, este objeto se logra por el método de compartir ancho de banda disponible según se describe en la reivindicación 1, y por el procesador que realiza el método según se describe en la reivindicación 20, y por el planificador, la memoria intermedia inteligente y el sistema de telecomunicaciones que incluye tal procesador, según se describen en la reivindicación 26, la reivindicación 27 y la reivindicación 28, respectivamente.
En realidad, debido al hecho de que el paso de compartir el ancho de banda no reservado incluye asociar con uno de los flujos de datos una respectiva ponderación administrativa adaptable y el paso de determinar la respectiva participación de paquete de datos no reservada de este flujo de datos en función de su respectiva ponderación administrativa adaptable, el operador de red tiene, además de la posibilidad de compartir el ancho de banda reservado, tiene la capacidad de proporcionar ponderaciones administrativas a cada flujo de datos. Estas ponderaciones administrativas están reflejando la política del operador para compartir el ancho de banda no reservado.
La flexibilidad del método propuesto de la invención permite que el operador de red no sólo soporte las políticas de las soluciones de la técnica anterior, es decir, que proporcione una asignación o distribución justa del ancho de banda no reservado siguiendo las velocidades de células mínimas, sino que también defina su propia política; por ejemplo, un operador puede favorecer su propio tráfico local sobre el tráfico de transito proveniente de otra red.
Se ha de explicar que son posibles clases diferentes de implementaciones para traducir una participación del ancho de banda no reservado. En realidad, la ponderación administrativa adaptable puede implementarse por una "ponderación" del ancho de banda no reservado, es decir, un porcentaje del ancho de banda no reservado, por ejemplo, una ponderación administrativa adaptable igual al 30%; pero otra implementación puede traducirse en una "velocidad", por ejemplo, velocidades de paquetes de datos en proporción de una a otra. Esto será más evidente en el siguiente párrafo.
Las ponderaciones administrativas adaptables pueden usarse por el operador de red para dar una fracción diferente del ancho de banda no reservado a los diferentes flujos de datos.
Se da un primer ejemplo en el caso de que cuando el operador de red quiera que todos los flujos de datos reciban una misma fracción del ancho de banda no reservado, el operador introduce entonces para todos los flujos de datos una misma ponderación administrativa adaptable, por ejemplo, 1.
Se da un segundo ejemplo en el caso de que cuando el operador de red quiera distribuir el ancho de banda no reservado en proporción al ancho de banda mínimo garantizado, las ponderaciones administrativas adaptables de los diferentes flujos de datos deben establecerse en, por ejemplo, su velocidad mínima de paquete de datos.
Se da un tercer ejemplo en el caso de que el operador de red quiera soportar dos tipos de flujos de datos, por ejemplo, flujos de datos oro y flujos de datos normales. Supóngase que los flujos de datos oro están recibiendo una fracción diez veces mayor del ancho de banda no reservado que los flujos de datos normales. Esto puede implementarse de dos maneras diferentes:
-
cada ponderación administrativa adaptable de un flujo de datos oro es un valor diez veces mayor que el valor de cada ponderación administrativa de un flujo de datos normal. De esta manera, cada flujo de datos oro recibe una participación el ancho de banda no reservado diez veces mayor que la participación del ancho de banda no reservada para un flujo de datos normal. Esta implementación es independiente del número de flujos de datos incluidos en la clase oro de flujos de datos e independiente del número de flujos de datos incluidos en la clase normal de flujos de datos; y
-
la participación global del ancho de banda no reservado para todos los flujos de datos oro conjuntamente es diez veces mayor que la participación global del ancho de banda no reservado para todos los flujos de datos normales en conjunto, con lo que esta participación oro global está dividida igualmente entre el número de flujos de datos oro y la participación normal global está dividida igualmente entre el número de flujos de datos normales. Las ponderaciones administrativas adaptables se implementan en consecuencia. Esta implementación depende del número de flujos de datos incluidos en la clase oro de flujos de datos y del número de flujos de datos incluidos en la clase normal de flujos de datos.
Se ha de destacar que se hace evidente una ventaja del método de la invención con la siguiente implementación posible de la ponderación administrativa adaptable. En realidad, cuando la ponderación administrativa adaptable se hace dependiente de otros parámetros tales como, por ejemplo, el tiempo, el operador de red implementa su política por adelantado, con lo que más tarde se cambian las ponderaciones administrativas, es decir, se adaptan, en función de tal parámetro, sin intervención real alguna del operador. Esto se hará más evidente con el siguiente ejemplo. En el caso de que un operador quiera dar a todos los flujos de datos una misma fracción del ancho de banda no reservado durante períodos pico del día y cuando el operador quiera soportar dos clases de flujos de datos, según se describió anteriormente respecto de flujos de datos oro y flujos de datos normales, durante el resto del día, los flujos de datos están recibiendo una ponderación administrativa adaptable que es una función de un cronómetro. De esta manera, el operador implementa su política por adelantado, con lo que, por ejemplo, durante un momento temporal predefinido de un día se adaptan los valores de las ponderaciones administrativas adaptables, sin intervención real alguna del operador, por lo que todas las ponderaciones administrativas de los diferentes flujos de datos están recibiendo un mismo valor. Más tarde, en un segundo momento predeterminado, se adaptan de nuevo las ponderaciones administrativas, sin intervención real alguna del operador, con lo que las ponderaciones administrativas de los diferentes flujos de datos están recibiendo un valor según el flujo de datos oro o un valor según el flujo de datos normal. Aún más, la ponderación administrativa adaptable podría depender de más de una variable. En realidad, según el ejemplo anterior, además del cronómetro podría introducirse una variable para cada clase de flujo de dato, por ejemplo, WG para la clase oro de flujos de datos o WN para la clase normal de flujos de datos, por lo que se da a WG y WN un valor relativo de una velocidad de paquete de datos. Por ejemplo, en el caso de que la clase oro de flujo de datos reciba un ancho de banda tres veces mayor que el de la clase normal de flujos de datos, la variable WG se pone a 1 y la variable WN se pone a 1/3. Sin embargo, en el caso de que el operador quiera cambiar la participación del ancho de banda para cada clase de flujos de datos, únicamente necesita adaptarse el valor de las variables WG y WN, por ejemplo, WG se pone a 1 y WN se pone a 1/4.
Un uso más eficiente del ancho de banda disponible consiste en distribuir el ancho de banda no reservado hacia flujos de datos activos, es decir, flujos de datos en los que está incluido al menos un paquete de datos en los medios de memoria intermedia que están acopladas al procesador de la invención. En realidad, una manera posible de compartir el ancho de banda no reservado según el método de la invención consiste en distribuir una participación del ancho de banda no reservado a todos los flujos de datos establecidos. Sin embargo, la participación de un flujo de datos que está transmitiendo, por ejemplo, paquetes de datos en ráfagas y en el que no está actualmente presente un paquete de datos en la memoria intermedia podría ser usada mejor por otros flujos de datos. Esta característica específica de la presente invención se describe en la reivindicación 2 y en la reivindicación 20.
Se ha de destacar que el método de la invención soporta eficientemente la coexistencia de flujos de datos con y sin garantía de ancho de banda mínimo, lo cual es una ventaja para soportar clases diferentes de categorías de servicio. El soporte de una garantía de ancho de banda mínimo se describe en la reivindicación 22. En la misma se describe que el procesador según la presente invención incluye además unos primeros medios de determinación para determinar la respectiva participación reservada de paquete de datos en función de una velocidad de paquete de datos mínima que se asocia a cada flujo de datos y que garantiza a cada flujo de datos un ancho de banda mínimo garantizado, y que los medios de control están incluidos adicionalmente en el procesador para activar los segundos medios de procesamiento en el caso de que se respete el ancho de banda mínimo garantizado debido a los primeros medios de procesamiento. De esta manera el ancho de banda no reservado sólo se comparte si todos los flujos de datos, o según la implementación antes descrita si todos los flujos de datos activos, ya están recibiendo su ancho de banda mínimo garantizado con el paso de compartir el ancho de banda no reservado.
Se conocen diferentes clases de categorías de servicios que están soportando una garantía de ancho de banda mínimo; sin embargo, una aplicación importante de la presente invención es que el procesador de la invención soporta la categoría de servicio de velocidad garantizada de tramas en un sistema de telecomunicaciones en modo de transferencia asíncrono. Esto se describe en la reivindicación 23. Ha de destacarse que en el caso de que el método de la invención se use para soportar la categoría de servicio de velocidad garantizada de tramas, el método desacopla el procedimiento de compartimiento del ancho de banda no reservado respecto de la provisión de las garantías de ancho de banda mínimo.
Una ventaja del método según la invención es que para soportar flujos de datos con el mejor esfuerzo junto con flujos de datos con un ancho de banda mínimo garantizado, según implementaciones de la técnica anterior, se define y se reserva usualmente de forma implícita un ancho de banda mínimo para cada flujo de datos. Sin embargo, esto no es necesario cuando el ancho de banda disponible es compartido según el método de la invención. En realidad, se permite que flujos de datos, que tienen una mínima participación predefinida de paquete de datos que es igual a cero, tengan una ponderación administrativa adaptable que es diferente de cero y obtengan una participación en el ancho de banda no reservado según una participación de paquete de datos no reservada que es una función de su ponderación administrativa adaptable cuando, por ejemplo, el flujo de datos se activa.
No obstante, se ha de destacar que el procesador de la invención puede implementarse como se mencionó anteriormente no solo con paquetes de datos de longitud fija, por ejemplo, células ATM, sino que igualmente es posible extender la implementación del procesador según la invención para soportar también paquetes de longitud fija, por ejemplo, paquetes de Internet. Esto se describe en la reivindicación 7, la reivindicación 18 y la reivindicación 24. De esta manera, el procesador de la invención soporta, por ejemplo, un servicio de carga controlada en un sistema de Telecomunicación de Protocolo Internet.
Se describe en el método de la reivindicación 3 otra implementación según la presente invención. En la misma se describe que el procesador controla además unos medios de memoria intermedia que almacenan paquetes de datos recibidos. Además, el paso de compartir ancho de banda reservado está constituido por un primer procedimiento de compartimiento de ancho de banda garantizado hasta una cantidad de ancho de banda reservado. El ancho de banda reservado es predefinido para cada flujo de datos y se incluye en el ancho de banda disponible. El paso de compartir ancho de banda no reservado está constituido por un segundo procedimiento de compartimiento de ancho de banda no garantizado entre la pluralidad de flujos de datos según una respectiva participación de ancho de banda no garantizado. El ancho de banda no garantizado comprende el ancho de banda no reservado así como la parte realmente no usada del ancho de banda reservado. El ancho de banda no reservado está incluido en el ancho de banda disponible en exceso del ancho de banda reservado. El segundo procedimiento de compartimiento del ancho de banda no garantizado incluye asociar la respectiva ponderación administrativa adaptable a al menos uno de los flujos de datos. La respectiva participación del ancho de banda no garantizado se determina aquí como una función de la respectiva ponderación administrativa adaptable asociada al flujo de datos.
Un inconveniente de una implementación con dos procesadores es que el primer procesador trabaja con un principio de no conservación de trabajo que actualiza parámetros de planificación relevantes en función de un reloj de tiempo real, mientras que el segundo procesador trabaja con un principio de conservación de trabajo que actualiza parámetros de planificación relevantes en función de un reloj de tiempo virtual. Por lo tanto, se requieren dos planificadores distintos para manejar los parámetros de planificación respectivos: un primer planificador para manejar los parámetros de planificación frente al reloj de tiempo real y un segundo planificador para manejar los parámetros de planificación frente al reloj de tiempo virtual.
Se describe una implementación adicional de la presente invención que evita el inconveniente anterior mediante el método de la reivindicación 5. En realidad, tal método incluye además realizar en cada momento de tiempo de servicio los pasos de:
-
determinar, con ayuda de unos medios de determinación de modo incluidos en los medios de control, si para al menos cada flujo de datos activos de la pluralidad de flujos de datos se ha alcanzado o no una respectiva participación autorizada de dicho ancho de banda reservado; y
-
seleccionar, cuando al menos un flujo de datos activo no ha alcanzado su respectiva participación autorizada de ancho de banda reservado, uno la pluralidad de flujos de datos que no han alcanzado su participación autorizada de ancho de banda reservado, por lo que se concede el ancho de banda garantizado en el momento de tiempo de servicio, y
-
seleccionar, cuando cada uno de la pluralidad de flujos de datos activos ha alcanzado su respectiva participación autorizada de ancho de banda reservado, uno de la pluralidad de flujos de datos activos, por lo que se concede el ancho de banda no garantizado en ese momento de tiempo de servicio.
En consecuencia, esta implementación hace uso de unos medios de determinación de modo que indican fácilmente, en cada momento de tiempo de servicio, bajo qué modo G o NG debe concederse ancho de banda a un flujo de datos, es decir, si, en ese momento de tiempo de servicio, se ha de conceder ancho de banda garantizado en modo G o se ha de conceder ancho de banda garantizado en modo NG.
Un primera ventaja de tal implementación es que debido a la decisión anterior tomada por los medios de determinación de modo, sólo se necesita realmente un planificador para ejecutare el procedimiento de selección de flujo de datos subsiguiente para conceder ancho de banda garantizado o no garantizado. En realidad, el planificador común selecciona en cada momento de tiempo de servicio, según su modo G o NG, un flujo de datos de entre la pluralidad de flujos de datos activos que aún no han alcanzado su participación autorizada de ancho de banda reservado, en modo G, o sólo uno de la pluralidad de flujos de datos activos, en modo NG.
De esta manera, se determina para cada flujo de datos si se le ha concedido o no hasta ese momento su número autorizado de sucesos de tiempo de servicio de célula, lo que significa que se alcanza su condición concedida de ancho de banda garantizado, es decir, cuando se alcanza su respectiva participación autorizada de ancho de banda reservado. Con esto el planificador funciona en modo G, cuando al menos un flujo de datos activo no ha alcanzado su condición concedida de ancho de banda garantizado, o el planificador funciona en modo NG cuando todos los flujos de datos han alcanzado su condición concedida de ancho de banda garantizado o cuando todos los flujos de datos que no han alcanzado su condición concedida de ancho de banda garantizado están inactivos.
Una segunda ventaja de tal implementación es que, cuando se comparte ancho de banda garantizado en modo G, el funcionamiento del planificador es aquí de conservación de trabajo, dado que el modo G siempre se realiza con prioridad sobre el modo NG.
Según tal implementación, una característica especial adicional se describe en la reivindicación 6. En la misma se describe que el método incluye además las etapas de:
-
asociar a cada uno de una pluralidad de flujos de datos un contador de concesión de servicio respectivo; e
-
inicializar el contador de concesión de servicio en cada comienzo de un período de tiempo predefinido hasta un respectivo valor de crédito inicial predefinido que se deriva del ancho de banda reservado que es igual al número correspondiente de concesiones de servicio autorizadas para el ancho de banda reservado durante el periodo de tiempo predefinido; y
-
actualizar, en cada momento de tiempo de servicio, el contador de concesión de servicio respectivo que está asociado al flujo de datos que se está sirviendo en el momento de tiempo de servicio, hasta que se alcanza un valor final predefinido para el contador de concesión de servicio respectivo; y
-
detectar que se alcanza una respectiva participación autorizada de ancho de banda reservado de un flujo de datos cuando el contador de concesión de servicio asociado ha alcanzado el valor final predefinido respectivo.
Este principio comprende el control de la operación de planificación de cada flujo de datos, durante un periodo de tiempo predeterminado, por medio de un contador de concesión de servicio por flujo de datos para cada sesión que se inicializa con un valor de crédito que refleja el número correspondiente de concesiones de servicio autorizadas para el ancho de banda reservado para ese flujo de datos durante el nuevo periodo de tiempo. De este modo, vigilando el contenido actual de los respectivos contadores de concesión de servicio para todos los flujos de datos, el planificador trabajará, en cada momento de tiempo de servicio, en modo G o en modo NG.
Se ha de destacar aquí que la presente invención no está limitada a implementaciones tales como las antes descritas, es decir, la inicialización de los respectivos contadores de concesión de servicio al comienzo de un periodo de tiempo predefinido con una cantidad predeterminada de créditos y la actualización de los respectivos contadores de concesión de servicio cada vez que se sirve el flujo de datos asociado. En realidad, se realiza una implementación alternativa de la presente invención en el caso de que los respectivos contadores de concesión de servicio sean aprovisionados sobre una base continua proporcional al número correspondiente de concesiones de servicio autorizadas para el ancho de banda reservado para su flujo de datos. Una implementación de esta clase proporciona un mejor rendimiento y evita una inicialización periódica al comienzo de un periodo de tiempo predefinido.
Una característica especial adicional se describe en la reivindicación 7. En la misma se describe que, cuando se sirven sucesivamente paquetes completos de longitud variable, el paso de actualizar el respectivo contador de concesión de servicio se realiza contando un número de concesiones de servicio en proporción a la longitud del paquete servido. En realidad, de esta manera el planificador también permite manejar paquetes de datos de longitud fija como paquetes de datos de longitud variable, es decir, tramas completas.
Una observación adicional es que son posibles diferentes enfoques organizativos para inicializar los contadores de concesión de servicio.
Una primera solución se describe en la reivindicación 8 que describe que el periodo de tiempo predefinido tiene la misma duración para todos los flujos de datos.
Se describe una solución adicional en la reivindicación 9 y ésta se caracteriza porque el periodo de tiempo predefinido de la misma duración está sincronizado para todos los flujos de datos. De esta manera, el paso de inicializar el contador de concesión de servicio de cada flujo de datos en cada comienzo del periodo de tiempo predefinido se realiza simultáneamente en todos los contadores de concesión de servicio de todos los flujos de datos.
Se describe en la reivindicación 10 otra solución alternativa. En la misma se describe que el periodo de tiempo predefinido de la misma duración no está sincronizado para todos los flujos de datos. El paso de inicializar el contador de concesión de servicio de cada flujo de datos en cada comienzo del periodo de tiempo predefinido no se realiza simultáneamente para todos los contadores de concesión de servicio de todos los flujos de datos.
Se describe en la reivindicación 11 otra implementación de los intervalos de tiempo, en la que el periodo de tiempo predefinido tiene una duración específica, posiblemente diferente, para cada flujo de datos. En realidad, en semejante solución alternativa, los intervalos de tiempo de planificación del flujo de datos tienen una duración diferente para cada flujo de datos y sus intervalos de tiempo están puestos mutuamente en fase de forma asíncrona. El funcionamiento del planificador ya no está correlacionado en absoluto para todos los flujos de datos como en la primera solución o, en menor medida, como en la solución anterior.
Una característica específica adicional para implementar la presente invención se describe en la reivindicación 12. En la misma el paso de determinar si se ha alcanzado o no una respectiva participación autorizada del ancho de banda reservado para al menos cada flujo de datos activo, incluye unos medios de determinación de modo que usan un contador de flujo de datos de participación de ancho de banda garantizado común. El contador de flujo de datos de participación de ancho de banda garantizado común registra el número actual de flujos de datos activos que no han alcanzado hasta el momento su respectiva participación autorizada del ancho de banda reservado.
Además, se ha de explicar que, con el fin de implementar la presente invención, son posibles tipos diferentes de planificación. Estas disposiciones de planificación se describen en la reivindicación 13, reivindicación 14, reivindicación 15, reivindicación 16, reivindicación 17, reivindicación 18 y reivindicación 19 y se explican en párrafos adiciona-
les.
Se describe en la reivindicación 6, reivindicación 7 y reivindicación 8 tres aplicaciones del presente procesador. Esto se describirá en los siguientes párrafos.
Se proporciona en una salida del procesador una señal de salida del procesador, es decir, una señal de ancho de banda compartido que es una medida de la respectiva participación reservada de paquete de datos y de la respectiva participación no reservada de paquete de datos. Se ha de destacar que esta señal de ancho de banda compartido puede implementarse de maneras diferentes.
Una posible manera de reflejar el resultado del ancho de banda reservado compartido y el ancho de banda no reservado compartido consiste en generar una secuencia de identificaciones de los flujos de datos que están autorizados a transmitir su paquete de datos siguiente por el enlace común. Esto se puede realizar con un planificador incluido en una red de comunicaciones para compartir el ancho de banda disponible en un enlace común entre una pluralidad de flujos de datos. Esto se describe en la reivindicación 26. El planificador incluye unos medios de memoria intermedia para clasificar los paquetes de datos entrantes según el flujo de datos al que pertenecen los paquetes de datos en una pluralidad de colas de memoria intermedia. Cada cola de memoria intermedia incluida en los medios de memoria intermedia está asociada a un flujo de datos. De esta manera se proporciona una pluralidad de paquetes de datos clasificados en las diferentes colas de memoria intermedia. El planificador también incluye unos medios de selección para seleccionar uno de los paquetes de datos clasificados y para transmitir el paquete de datos seleccionado por el enlace común. El planificador incluye además el procesador según la invención que está acoplado a los medios de selección. La señal de ancho de banda compartido del procesador se proporciona a los medios de selección para controlar la selección de los paquetes de datos clasificados de las diferentes colas.
Se ha de destacar que la función clasificadora de los medios de memoria intermedia puede implementarse de maneras diferentes, es decir, una formación de cola física o una formación de cola lógica. En realidad, una implementación posible es poner el contenido de todo el paquete de datos en colas diferentes; sin embargo, otra implementación es que los paquetes de datos estén asociados a, por ejemplo, un número de identificación y que el contenido de los paquetes de datos no esté clasificado físicamente en absoluto, sino almacenado todo junto en una memoria. El procesamiento adicional se ejecuta con los números de identificación hasta que se permite que un paquete de datos asociado a un número de identificación particular abandone los medios de memoria intermedia.
Otra manera de reflejar el resultado del ancho de banda reservado compartido y el ancho de banda no reservado compartido es generar, según un paquete de datos recibido de un flujo de datos particular, una orden de aceptación o una orden de descarte. Esto se puede realizar incluyendo una memoria intermedia inteligente en una red de comunicaciones para compartir ancho de banda disponible en un enlace común entre una pluralidad de flujos de datos que son transmitidos a través del enlace común. Esto se describe en la reivindicación 27. La memoria intermedia inteligente incluye medios de decisión para decidir si se acepta o se descarta un paquete de datos entrante de uno de los flujos de datos. Cuando se acepta el paquete de datos entrante, se almacena éste en unos medios de memoria intermedia, por ejemplo, en una memoria intermedia de "primero en entrar primero en salir" para transmitirlo más tarde por el enlace común. La memoria intermedia inteligente incluye además el procesador según la invención que está acoplado a los medios de decisión. La señal de ancho de banda compartido del procesador se proporciona a los medios de decisión para controlar la decisión según la señal de ancho de banda compartido.
Una tercera aplicación de la presente invención es un sistema de telecomunicaciones que incluye al menos un procesador según la presente invención. Esto se describe en la reivindicación 28.
Los anteriores y otros objetos y características de la invención se harán más evidentes y la invención misma se comprenderá mejor haciendo referencia a la siguiente descripción de una realización tomada junto con la figura anexa que representa un planificador que incluye un procesador según la presente invención.
En primer lugar, se proporcionará una descripción funcional de los bloques funcionales mostrados en la figura. Basándose en esta descripción, la implementación de los bloques funcionales de la figura será más obvia para una persona versada en la técnica. Además, el funcionamiento del método de la invención se describirá con mayor detalle.
Se prefiere para esta realización particular describir un planificador que está incluido en un conmutador multiservicio de telecomunicaciones de modo de transferencia asíncrono que soporta, entre otros servicios, el servicio de velocidad garantizada de tramas GFR en un sistema de comunicaciones ATM.
El planificador de la figura está incluido en el conmutador ATM para garantizar a cada flujo de datos GFR su ancho de banda garantizado mínimo. Para ser capaz de soportar este ancho de banda garantizado mínimo para cada flujo de datos GFR, el planificador recibe del conmutador ATM el ancho de banda disponible que está predeterminado para todos los flujos de datos GFR en conjunto. La parte del ancho de banda derivada del ancho de banda disponible que se usa para proporcionar a cada flujo de datos GFR al menos su ancho de banda mínimo se denomina el ancho de banda reservado. Sin embargo, en exceso sobre este ancho de banda reservado el ancho de banda disponible incluye algo del ancho de banda no reservado al que se le permite que sea compartido por el operador según su propia política. Haciendo referencia a la figura, se muestra un planificador que comparte el ancho de banda reservado y el ancho de banda no reservado entre una pluralidad de flujos de datos que necesitan ser transmitidos por el enlace común L. Este enlace común L, mostrado en la figura, está acoplado al planificador.
Se prefiere para esta realización particular que la pluralidad de flujos de datos sea igual a 16. Esto significa que el planificador está dimensionado para soportar 16 flujos de datos GFR.
Una observación adicional es que, dado que el planificador de esta realización soporta un conmutador ATM, debe comprenderse que cada flujo de datos representa una conexión/trayectoria virtual ATM que se identifica por su identificación virtual.
Haciendo referencia a la figura, el planificador incluye una memoria intermedia BUF, un selector SEL y un procesador P según la presente invención. La memoria intermedia BUF está acoplada al selector SEL y al procesador P. El selector SEL está acoplado a través de una salida del planificador al enlace común L. El procesador P también está acoplado al selector SEL.
La memoria intermedia BUF incluye una entrada y 16 salidas. Para no sobrecargar la figura únicamente se muestran 5 salidas. La entrada se muestra con una flecha que va hacia la memoria intermedia y cada salida mostrada está representada por una línea que abandona la memoria intermedia BUF.
La memoria intermedia BUF incluye para cada flujo de datos soportado una cola de memoria intermedia. Únicamente se muestran en la figura las cinco colas de memoria intermedia asociadas a las cinco salidas mostradas: Q1, Q2, Q8, Q9 y Q16. Cada cola de memoria intermedia, por ejemplo Q2, está asociada a un flujo de datos que está identificado por su número de identificación, por ejemplo, C2. La memoria intermedia BUF clasifica cada paquete de datos que entra en el planificador por la entrada de la memoria intermedia BUF en una de las colas de memoria intermedia según la identificación del flujo de datos al cual pertenece el paquete de datos. De esta manera, se proporciona una pluralidad de paquetes de datos clasificados.
Con el fin de describir esta realización, se ha de suponer que se establecen cinco flujos de datos C1, C2, C8, C9 y C16 según las cinco colas de memoria intermedia mostradas Q1, Q2, Q8, Q9 y Q16. Los paquetes de datos clasificados se muestran en la figura por medio de bloques sombreados incluidos en cada cola según su identificación de flujo de datos. Se ha de entender que la figura muestra una situación real en un momento de tiempo predefinido. De esta manera puede verse en la figura que algunas colas de memoria intermedia incluyen realmente paquetes de datos, por ejemplo Q1, Q2 y Q16, y otras colas de memoria intermedia no incluyen paquetes de datos, por ejemplo Q8 y Q9. Cada bloque sombreado representa un número de paquetes de datos del flujo de datos asociado.
El selector SEL se incluye en el planificador para seleccionar en momentos de tiempo regulares una de las colas de la memoria intermedia y para proporcionar a esta cola de memoria intermedia una señal de control para permitir que esta cola de memoria intermedia seleccionada transmita el primer paquete de datos de su cola a través del selector SEL por el enlace común L. Debe destacarse que el selector SEL actúa de hecho como un conmutador encendido/apagado en cada salida de la memoria intermedia BUF. Una observación adicional es que el funcionamiento detallado de este selector SEL y esta memoria intermedia BUF es conocido por una persona versada en la técnica y no se explicará aquí con mayor detalle dado que ello va más allá del alcance de la invención.
El procesador P está incluido en el planificador para controlar la función de selección del selector SEL. Para ejecutar esta operación el procesador P proporciona una señal de control, es decir, una señal de ancho de banda compartido BW al selector SEL.
El procesador P incluye un primer procesador P1, un segundo procesador P2, un controlador CTRL, un tercer determinador DET3 y una memoria MEM. El primer procesador P1, el segundo procesador P2 y el controlador CTRL están acoplados a la memoria MEM. El primer procesador P1 y el segundo procesador P2 también están acoplados al controlador CTRL.
El primer procesador P1 comparte el ancho de banda reservado incluido en el ancho de banda disponible entre los 5 flujos de datos establecidos según una respectiva participación reservada de paquete de datos. Ha de entenderse que un flujo de datos sólo recibe ancho de banda reservado en el caso de que se necesite ancho de banda, es decir, cuando se establece la conexión y se transmiten paquetes de datos. Además, la respectiva participación reservada de paquete de datos, según el ancho de banda mínimo garantizado de un flujo de datos de esta realización particular, está en función de una velocidad mínima de paquete de datos denominada MCR. Esta velocidad mínima de paquete de datos es acordada en el contrato de servicio GFR en el establecimiento de conexión del flujo de datos. De esta manera se definen las siguientes velocidades mínimas de paquetes de datos para cada conexión establecida:
flujo de datos C1: MCR1;
flujo de datos C2: MCR2;
flujo de datos C8: MCR8;
flujo de datos C9: MCR9;
flujo de datos C16: MCR16.
En el caso de que se establezca un flujo de datos, por ejemplo C2, y se transmitan paquetes de datos a una cierta velocidad de paquete de datos, el flujo de datos recibe al menos el ancho de banda necesario según su velocidad mínima de paquete de datos, por ejemplo MCR2.
El primer procesador P1 incluye un primer determinador DET1 para determinar la respectiva participación reservada de paquete de datos en función de la velocidad mínima de paquete de datos. Se explicará en un párrafo adicional cómo comparte el primer determinador DET1 el ancho de banda reservado, según esta velocidad mínima de paquete de datos, entre los flujos de datos establecidos.
El primer procesador P1 incluye además un calculador para realizar algunos cálculos necesarios y un lector y un escritor para interactuar con la memoria MEM y el controlador CTRL; sin embargo, como se mencionó anteriormente, estos bloques funcionales no se muestran en la figura y no se describen con mayor detalle.
El segundo procesador P2 comparte el ancho de banda no reservado incluido en el ancho de banda disponible en exceso del ancho de banda reservado según una respectiva participación no reservada de paquete de datos. Como ya se explicó anteriormente, el ancho de banda no reservado no es una cantidad constante absoluta de ancho de banda. Dado que el planificador está soportando GFR, es claro que el ancho de banda no reservado incluye también el ancho de banda reservado no empleado. Para reflejar una clase diferente de estrategias del operador relativas a la manera de compartir el ancho de banda no reservado, se define una ponderación administrativa adaptable W para cada flujo de datos establecido en el momento de establecimiento de la conexión del flujo de datos. De esta manera se definen las siguientes ponderaciones administrativas adaptables para cada flujo de datos establecido:
flujo de datos C1: W1;
flujo de datos C2: W2;
flujo de datos C8: W8;
flujo de datos C9: W0;
flujo de datos C16: W16.
El segundo procesador P2 incluye un segundo determinador DET2 (denominado en las reivindicaciones "medios determinadores (DET2)") para determinar las respectivas participaciones no reservadas de paquete de datos en función de estas ponderaciones administrativas adaptables. Ha de señalarse que el ancho de banda no reservado es compartido en esta realización particular entre los flujos de datos activos, es decir, los flujos de datos que tienen al menos un paquete de datos en su cola asociada de la memoria intermedia BUF. Se explicará en un párrafo adicional cómo comparte el segundo determinador DET2 el ancho de banda no reservado entre los flujos de datos activos.
El segundo procesador P2 incluye también un calculador para realizar algunos cálculos necesarios y un lector y un escritor para interactuar con la memoria MEM y el controlador CTRL; sin embargo, como se mencionó anteriormente, estos bloques funcionales no se muestran en la figura y no se describen con mayor detalle.
El procesador P también incluye un tercer determinador DET3 para determinar un estado de los flujos de datos, es decir, flujo de datos activo o flujo de datos inactivo. Para ejecutar esta función el tercer determinador DET controla en la memoria intermedia BUF para cada cola de memoria intermedia, por ejemplo Q2, la presencia final de un paquete de datos. En el caso de que esté presente al menos un paquete de datos en una cola de datos se confirma que el estado del flujo de datos asociado es "sí". En caso de que no esté presente ningún paquete de datos en una cola de datos, se confirma que el estado del flujo de datos asociado es "no". El estado de cada flujo de datos es proporcionado por el tercer determinador DET3 a la memoria MEN descrita más adelante y se almacena en esta memoria MEM para cada flujo de datos por medio de una tercera variable denominada variable de estado ACT.
Además, el procesador incluye una memoria MEM. Esta memoria MEM incluye para cada flujo de datos la información definida en el establecimiento de la conexión de los flujos de datos, es decir, la identificación del flujo de datos C, la cola de memoria intermedia asociada Q, la velocidad mínima definida de paquete de datos MCR, la ponderación administrativa adaptable definida W y con ella tres variables: una primera variable R y una segunda variable U que también están asociadas a cada flujo de datos y una tercera variable denominada variable de estado ACT que refleja el estado de un flujo de datos respecto de si es un flujo de datos activo o inactivo.
Se ha de señalar que los medios de asociación que se mencionan en las reivindicaciones para asociar a cada flujo de datos una ponderación administrativa adaptable están de hecho materializados por parte de esta memoria MEM. Haciendo referencia a la figura se muestran la definición y asociación antes mencionadas por medio de una tabla que es una manera posible de implementar esta memoria MEM. Los medios de asociación antes mencionados son implementados en la tabla de memoria por la relación existente entre la columna de los flujos de datos y la columna de las ponderaciones administrativas adaptables.
El controlador CTRL controla el primer procesador P1 y el segundo procesador P2. Según los resultados proporcionados, es decir, las respectivas participaciones reservadas de paquete de datos y las respectivas participaciones no reservadas de paquete de datos, procedentes del primer procesador P1 y el segundo procesador P2, respectivamente, el controlador CTRL genera la señal de ancho de banda compartido antes mencionada BW. Esta señal de ancho de banda compartido refleja el resultado global del ancho de banda reservado compartido y el ancho de banda no reservado compartido. En esta realización la señal de ancho de banda compartido BW incluye la identificación de una cola de memoria intermedia, por ejemplo Q2, que necesita ser seleccionada por el selector SEL en el momento de tiempo real. Se implementa con un algoritmo, que se explica en los párrafos ulteriores, el modo en que el controlador CTRL llega a conocer tal identificación de cola de memoria intermedia seleccionada, denominada brevemente en adelante cola de memoria intermedia seleccionada.
Según esta realización preferida, para implementar el procesador P de la invención se realiza una provisión del ancho de banda reservado por un principio no conservador de trabajo ejecutado por el primer procesador P1; y el ancho de banda que no se usa por el primer procesador P1 es distribuido a los flujos de datos activos por medio de un principio conservador de trabajo ejecutado por el segundo procesador P2. El funcionamiento de estos dos procesadores es combinado de tal manera que el segundo procesador P2 sólo se activa cuando el primer procesador P1 está inactivo.
Una observación adicional es que es conocida para una persona versada en la técnica que un principio conservador de trabajo puede implementarse con un reloj de tiempo virtual por lo cual el procesador P2 realiza sus funciones cada vez que tiene la posibilidad de hacerlo. El funcionamiento detallado de un principio conservador de trabajo va más allá del alcance de esta invención. El objetivo es usar un reloj de tiempo virtual en vez de un reloj de tiempo real por el segundo procesador P2 para implementar el funcionamiento básico del segundo procesador P2.
Las dos variables anteriores mencionadas asociadas a cada flujo de datos, es decir, asociadas a cada cola de memoria intermedia, se denominan en adelante marca de tiempo U y marca de tiempo R (véase tabla en la memoria MEM), por ejemplo, para el flujo de datos C2 se definen una marca de tiempo U2 y una marca de tiempo R2. Se ha de señalar que durante el funcionamiento del algoritmo, el valor real de las marcas de tiempo R y el valor real de las marcas de tiempo U se aumentan según un método que se describirá en un párrafo subsiguiente. Aún más, el valor de la marca de tiempo R refleja de hecho, cuando se compara con el valor real del reloj de tiempo real, una medida de la necesidad de transmitir un paquete de datos del flujo de datos asociado para respetar aún la velocidad mínima de paquete de datos definida para este flujo de datos. Para comprender esto se ha de explicar que se calcula y se adapta el valor de la marca de tiempo R en función de su consiguientemente mínima velocidad de paquete de datos MCR. Si se imagina una línea de tiempo desde la izquierda hasta la derecha sobre la cual transcurre el tiempo real de izquierda a derecha, los valores diferentes de las marcas de tiempo R se pueden marcar sobre la línea de tiempo. Cuando el tiempo real es aún menor que el valor más pequeño de todas las marcas de tiempo R, todavía se respetan las velocidades mínimas de paquete de datos de los diferentes flujos de datos. No se necesita compartir ancho de banda disponible entre uno u otro flujo de datos para poner su velocidad real de paquete de datos de acuerdo con su velocidad mínima de paquete de datos. Se permite compartir el ancho de banda disponible dejado entre los flujos de datos según la estrategia del operador. Sin embargo, si el tiempo real pasara la posición del valor más pequeño de las marcas de tiempo R, es decir, el tiempo transcurrido para este flujo de datos, habría llegado el momento de transmitir un paquete de datos de este flujo de datos para respectar de nuevo su velocidad mínima de paquete de datos.
En el momento de la llegada de un paquete de datos a una cola de memoria intermedia vacía la marca de tiempo R y la marca de tiempo U son iniciadas por el primer procesador P1 y el segundo procesador P2, respectivamente. Imaginándose una situación en la que un paquete de datos llega a una cola de memoria intermedia vacía, por ejemplo memoria intermedia Q2, el valor de la marca de tiempo R2 se calcula en función de un valor previo de esta marca de tiempo R2_prev, la inversa de la velocidad mínima de paquete de datos asociada MCR2 y el valor de un reloj de tiempo real (no mostrado en la figura) que refleja el tiempo real T.
El valor de inicialización de la marca de tiempo R2 se calcula por el primer procesador P1 con la siguiente fórmula:
R2 = Max {(R2_prev + 1/MCR2); T}
es decir, el máximo de:
-
el valor previo de la marca de tiempo R2 incrementado con la inversa de la velocidad mínima de paquete de datos asociada MCR2; y
-
el tiempo real.
Con el mismo ejemplo, se calcula el valor de la marca de tiempo U2 en función de un valor previo de esta marca de tiempo U2_prev, la inversa de la ponderación administrativa adaptable asociada W2 y el valor de un reloj de tiempo virtual (no mostrado en la figura) que refleja un tiempo virtual T_virt. El valor del tiempo virtual T_virt para el segundo procesador P2 es igual al valor de la marca de tiempo U2_última que se seleccionó la última por el segundo procesador P2.
El valor de inicialización de la marca de tiempo U2 se calcula por el segundo procesador P2 con las siguientes fórmulas:
U2 = Max {(U2_prev + 1/W2); T_virt}
es decir, el máximo de:
-
el valor previo de la marca de tiempo U2 incrementado con la inversa de la ponderación administrativa adaptable asociada W2; y
-
el tiempo virtual T_virt.
Se ha de destacar que se explica a continuación el uso de diferentes señales de control entre los diferentes bloques funcionales incluidos en el procesador P, pero esto no se muestra en la figura para no sobrecargar la misma.
Para determinar una cola de memoria intermedia seleccionada el controlador CTRL proporciona en momentos de tiempo regulares predefinidos, según la velocidad de transmisión por el enlace común L, una señal de control de comienzo al primer procesador P1. El primer determinador DET1 comienza a buscar el valor más pequeño entre los valores reales de las marcas de tiempo R correspondientes a flujos de datos activos en la memoria MEM. La marca de tiempo R con el valor más pequeño se denomina marca de tiempo R mínima. El valor de la marca de tiempo R mínima es comparado con el valor del reloj de tiempo real.
Cuando el valor del reloj de tiempo real es mayor que el valor de la marca de tiempo R mínima ha llegado el momento de transmitir un paquete de datos del flujo de datos asociado a esta marca de tiempo R mínima con el fin de respectar la velocidad mínima de paquete de datos MCR de este flujo de datos. El primer procesador P1 proporciona la identificación de la cola de memoria intermedia asociada a esta marca de tiempo R mínima, es decir, la cola de memoria intermedia seleccionada que se dirige hacia el controlador CTRL. La cola de memoria intermedia seleccionada es incluida por el controlador CTRL en la señal de ancho de banda BW, con lo cual se habilita al selector SEL para que seleccione la cola de memoria intermedia conforme y transmita el primer paquete de datos de esta cola de memoria intermedia seleccionada por el enlace común L. El primer procesador P1 también actualiza el valor de la marca de tiempo R mínima en función de la velocidad mínima de paquete de datos del flujo de datos asociado. Por ejemplo, supóngase que la marca de tiempo R mínima es la marca de tiempo R2 del flujo de datos C2. El nuevo valor de la marca de tiempo R2 se calcula con la siguiente fórmula:
R2 = R2_previa + 1/MCR2
Este valor es actualizado en la memoria MEM por el primer procesador P1.
Cuando el valor del reloj de tiempo real es menor que el valor de la marca de tiempo R mínima, aún queda tiempo para transmitir un paquete de datos de otro flujo de datos no necesariamente asociado a esta marca de tiempo R mínima, es decir, queda ancho de banda no reservado disponible para compartirlo entre los flujos de datos activos. El primer procesador P1 proporciona al controlador CTRL una señal de control que incluye este hecho, denominada señal de control no reservada. Por su parte, el controlador CTRL proporciona, tras recibir del primer procesador P1 tal señal de control no reservada, una señal de control de comienzo al segundo procesador P2 para activar el mismo. El segundo determinador DET2 del segundo procesador P2 comienza a buscar el valor más pequeño de entre los valores reales de las marcas de tiempo U correspondientes a flujos de datos activos en la memoria MEM. La marca de tiempo U con el valor más pequeño se denomina marca de tiempo U mínima. El segundo procesador P2 proporciona la identificación de la cola de memoria intermedia asociada a esta marca de tiempo U mínima, es decir, la cola de memoria intermedia seleccionada que se dirige hacia el controlador CTRL. La cola de memoria intermedia seleccionada es incluida por el controlador CTRL en la señal de ancho de banda BW, con lo cual se habilita al selector SEL para que seleccione la cola de memoria intermedia conforme y transmita el primer paquete de datos de esta cola de memoria intermedia seleccionada por el enlace común L. El segundo procesador P2 también actualiza el valor de la marca de tiempo U mínima en función de la ponderación administrativa adaptable del flujo de datos asociado. Por ejemplo, supóngase que la marca de tiempo U mínima es la marca de tiempo U2 del flujo de datos C2. El nuevo valor de la marca de tiempo U2 se calcula con la siguiente fórmula:
U2 = U2_previa + 1/W2
Este valor es actualizado en la memoria MEM por el segundo procesador P2.
Se ha de destacar que se proporciona una implementación más precisa de la presente invención en el caso de que el algoritmo funcione con una variable más, denominada última variable servida. El valor de esta variable es el nombre del primer procesador P1 o el nombre del segundo procesador P2 según el procesador que proporcionó la identificación de la cola de memoria intermedia seleccionada que se ha incluido la última en la señal de ancho de banda compartido BW. El uso de tal variable extra controla el hecho de que en el caso de que una identificación de cola de memoria intermedia, por ejemplo Q16, se incluyera en la señal de ancho de banda BW, debido por ejemplo a los resultados del procesador P2, con lo que, según el algoritmo implementado, se incrementó el valor de la marca de tiempo asociada U16, el valor de esta marca de tiempo asociada U16 no se vuelve a calcular de nuevo cuando llega un primer paquete de datos a la cola de memoria intermedia Q16 si ésta está vacía. Pequeñas modificaciones, evidentes para una persona versada en la técnica, pueden aplicarse a la realización antes descrita con el fin de adaptarla para integrar tal variable servida última, con lo cual se establece un uso más eficiente del ancho de banda reservado.
Se describirá ahora el funcionamiento del método de la invención por medio de un ejemplo que describe un periodo de tiempo predefinido durante el funcionamiento real del algoritmo. Imagínese la siguiente situación y valores reales en la memoria MEM: la siguiente tabla muestra cinco flujos de datos establecidos: C1, C2, C8, C9, C16 con sus colas de memoria intermedia asociadas, sus velocidades mínimas de paquete de datos, los valores reales de sus marcas de tiempo R asociadas, sus ponderaciones administrativas adaptables y el valor real de sus marcas de tiempo U asociadas:
1
Sin embargo, supóngase que la cola de memoria intermedia para el flujo de datos C8 y el flujo de datos C9 está vacía. De esta manera no es necesario proporcionar ancho de banda disponible real a estos dos flujos de datos.
Imagínese que durante el funcionamiento del algoritmo, el controlador CTRL proporciona la siguiente señal de comienzo al primer procesador P1. El primer determinador DET1 del primer procesador P1 comienza a buscar el valor más pequeño de entre los valores reales de las marcas de tiempo R en la memoria MEM. La marca de tiempo R con el valor más pequeño es R16 = 10. El valor de la R16 es comparado con el valor del reloj de tiempo real. Supóngase que este reloj de tiempo real equivale a T = 12, lo cual significa que el valor del reloj de tiempo real es mayor que el valor de la marca de tiempo R16. Ha llegado el momento de transmitir un paquete de datos del flujo de datos, es decir, C16, asociado a esta marca de tiempo R mínima R16 para respetar la velocidad mínima de paquete de datos MCR16 = 1/10 de este flujo de datos C16. El primer procesador P1 proporciona la identificación de la cola de memoria intermedia Q16 asociada a esta marca de tiempo R mínima R16, es decir, la cola de memoria intermedia seleccionada que se dirige al controlador CTRL. La cola de memoria intermedia seleccionada Q16 es incluida por el controlador CTRL en la señal de ancho de banda BW, con lo cual se habilita al selector SEL para que seleccione la cola de memoria intermedia seleccionada Q16 y transmita el primer paquete de datos de esta cola de memoria intermedia seleccionada Q16 por el enlace común L. El primer procesador P1 también actualiza el valor de la marca de tiempo R mínima R16 en función de la velocidad mínima de paquete de datos MCR16 = 1/10 del flujo de datos asociado C16. El nuevo valor de la marca de tiempo R16 es calculado con la siguiente fórmula:
R16 = R16_previa + 1/MCR16 = 10 + 10 = 20
Este valor se actualiza en la memoria MEM por el primer procesador P1:
2
Los algoritmos continúan, con lo que el contador de tiempo real también se adapta e incrementa hacia T = 13.
El controlador CTRL proporciona una siguiente señal de comienzo al primer procesador P1. El primer procesador P1 comienza a buscar el valor más pequeño de entre los valores reales de las marcas de tiempo R en la memoria MEM. La marca de tiempo R con el valor más pequeño es R2 = 18. El valor de la marca de tiempo mínima R2 = 18 es comparado con el valor del reloj de tiempo real T = 13. El valor del reloj de tiempo real no es mayor que el valor de la marca de tiempo R mínima R2; aún queda tiempo para transmitir un paquete de datos de otro flujo de datos no necesariamente asociado a esta marca de tiempo R mínima R2, es decir, queda ancho de banda no reservado disponible para compartirlo entre los flujos de datos activos.
El primer procesador P1 proporciona al controlador CTRL una señal de control no reservada. Por su parte, el controlador CTRL proporciona, tras recibir del primer procesador P1 esta señal de control no reservada, una señal de control de comienzo al segundo procesador P2 para activar el mismo. El segundo determinador DET2 del segundo procesador P2 comienza a buscar el valor más pequeño de entre los valores reales de las marcas de tiempo U correspondientes a flujos de datos activos en la memoria MEM. La marca de tiempo U con el valor más pequeño es la marca de tiempo U mínima U2 = 2. El segundo procesador P2 proporciona la identificación de la cola de memoria intermedia Q2 asociada a esta marca de tiempo U mínima U2 = 2, es decir, la cola de memoria intermedia seleccionada Q2 que se dirige hacia el controlador CTRL. La cola de memoria intermedia seleccionada Q2 es incluida por el controlador CTRL en la señal de ancho de banda BW, con lo cual se habilita al selector SEL para que seleccione la cola de memoria intermedia conforme Q2 y transmita el primer paquete de datos de esta cola de memoria intermedia seleccionada por el enlace común L. El segundo procesador P2 también actualiza el valor de la marca de tiempo U mínima U2 en función de la ponderación administrativa adaptable del flujo de datos asociado C2. El nuevo valor de la marca de tiempo U2 se calcula con la siguiente fórmula:
U2 = U2_previa + 1/W2 = 2 + 1 = 3;
el segundo procesador proporciona este valor a la memoria MEM con el fin de actualizarlo en la tabla:
3
De esta manera el método para compartir ancho de banda disponible proporciona al operador de red la flexibilidad de definir sus propias políticas para compartir el ancho de banda no reservado. En realidad, el operador puede proporcionar otro valor a las ponderaciones administrativas adaptables e imponerlo así al algoritmo para compartir el ancho de banda disponible no reservado según otra estrategia.
Debe observarse que aunque la realización antes descrita del procesador incluido en el planificador, se describe en un conmutador ATM que soporta, entre otros servicios, la categoría de servicio de velocidad garantizada de tramas GFR, la aplicación de la invención no se reduce a tales conmutadores. En realidad, pequeñas modificaciones, evidentes para una persona versada en la técnica, pueden aplicarse a la realización antes descrita con el fin de adaptarla para su uso en otra clase de sistemas de telecomunicaciones que necesitan compartir entre una pluralidad de flujos de datos un ancho de banda no reservado incluido en el ancho de banda disponible en exceso sobre el ancho de banda reservado según la estrategia del operador, como, por ejemplo un sistema de telecomunicaciones de paquete de longitud variable tal como enrutadores de protocolo Internet.
En una segunda realización, también se usa un planificador para compartir tanto el ancho de banda garantizado como el no garantizado, sobre la base de dos parámetros de planificación por cada flujo de datos, un parámetro de planificación de ancho de banda reservado para el primero y un parámetro de planificación de ponderación administrativa para el segundo.
Se ha de explicar que la descripción de esta segunda realización hace referencia a algunos aspectos de la presente figura. Además, se emplean algunas abreviaturas en los siguientes párrafos que describen esta segunda realización para facilitar la comprensión. Sin embargo, estas abreviaturas no señalan referencias usadas en la presente figura.
Este planificador es muy similar al ilustrado en la figura excepto en que su procesador P no comprende dos medios de procesamiento distintos P1 y P2. En realidad, los dos pasos de compartir ancho de banda reservado y compartir ancho de banda no garantizado están constituidos aquí por dos procedimientos de compartimiento exclusivos entre la pluralidad de flujos de datos (activos), a saber:
-
Un primer procedimiento para compartir ancho de banda garantizado (hasta una cantidad de ancho de banda reservado); y
-
Un segundo procedimiento para compartir ancho de banda no garantizado.
El ancho de banda no garantizado comprende el ancho de banda no reservado así como la parte realmente no usada del ancho de banda reservado. El ancho de banda no reservado está incluido en el ancho de banda disponible en exceso del ancho de banda reservado.
En consecuencia, únicamente se describen las diferencias básicas en comparación con la realización previa.
En esta segunda realización, en vez de determinar en cada momento de tiempo de servicio si se ha de conceder una participación de ancho de banda garantizado o no garantizado como resultado del funcionamiento de los medios de procesamiento P1 que realizan una planificación no conservadora de trabajo del ancho de banda reservado, se emplean aquí unos medios de determinación de modo (no mostrados) en el controlador CTRL. Los medios de determinación de modo indican fácilmente, en cada momento de tiempo de servicio, bajo qué modo (G o NG) debe concederse ancho de banda al flujo de datos. Esto significa que los medios de determinación de modo indican si, en ese momento de tiempo de servicio, se ha de conceder con prioridad (en modo G) ancho de banda garantizado o, por el contrario, ha de concederse (en modo NG) ancho de banda no garantizado. Además, dependiendo del modo fácilmente determinado, se ejecuta un procedimiento de selección de flujo de datos subsiguiente por el planificador para conceder ancho de banda garantizado o no garantizado a un flujo de datos.
Como se explicó anteriormente, las ventajas principales de tal implementación de un planificador de modo dual son dobles, a saber:
-
Debido a la decisión anterior tomada por los medios de determinación de modo únicamente se requiere un solo planificador de modo dual para ejecutar el procedimiento de selección de flujo de datos subsiguiente para conceder, en cada momento de tiempo de servicio, ancho de banda garantizado o no garantizado; y
-
El funcionamiento del planificador es aquí conservador de trabajo también cuando se comparte ancho de banda garantizado en modo G, dado que el Modo G siempre se ejecuta con prioridad sobre el Modo NG.
Una solución preferida para implementar los medios de determinación de modo comprende:
-
un contador de concesión de servicio (CT1, CT2,...,CT16) asociado a cada uno de los flujos de datos (C1, C2,...,C16); y
-
un contador común de flujo de datos de participación de ancho de banda garantizado (GBSDFC).
Un contador de concesión de servicio CT2 asociado a un flujo de datos C2 contiene su cantidad de crédito corriente de concesiones de servicio para el ancho de banda garantizado. Se abastece continuamente con concesiones de servicio elegibles adicionales a una velocidad que es proporcional al ancho de banda reservado MCR2 para ese flujo de datos.
Cada vez que el flujo de datos C2 se sirve de su participación de ancho de banda garantizado, se hace disminuir su contador CT2. Esta operación es posible hasta que se agota su cantidad de concesión de servicio. El flujo de datos C2 no ha alcanzado su participación de ancho de banda reservado, es decir, no ha agotado su crédito de concesión de servicio elegible, en la medida en que a su contador CT2 aún le queda crédito suficiente para que se le conceda ancho de banda garantizado para su siguiente paquete de datos que está esperando en su cola asociada en la memoria intermedia BUF.
El contador común de flujo de datos de participación de ancho de banda garantizado GBSDFC se usa para registrar el número actual de flujos de datos activos que no han alcanzado hasta ahora su respectiva participación autorizada del ancho de banda reservado total. En consecuencia, el contador GBSDFC indica si se ha de realizar una participación de ancho de banda garantizado (modo G) o una participación de ancho de banda no garantizado (modo NG) cuando su contenido es positivo o nulo, respectivamente.
Se describe ahora en los siguientes párrafos el contador de concesión de servicio CT.
En lo que se refiere a la actualización por el contador CT de un flujo de datos C que se selecciona para servicio, son posibles dos situaciones diferentes dependiendo de los tipos de paquetes de datos programados por el sistema:
-
Planificación de paquetes de datos de longitud fija, es decir, células, en cuyo caso el planificador se define como funcionando en "modo célula"; o
-
Planificación de paquetes de datos de longitud variable, es decir, tramas, en cuyo caso el planificador se define como funcionando en "modo trama".
En un planificador que funciona en "modo célula", el contador de concesión de servicio CT puede, por ejemplo, manejarse simplemente como sigue. El valor de crédito inicial cargado en un contador CT se expresa convenientemente como, por ejemplo, la cantidad autorizada respectiva de células de crédito para un periodo de tiempo T. Esta cantidad autorizada de células acreditadas se carga en el contador CT cuando se inicializa al comienzo de un nuevo periodo de tiempo T. Puede seleccionarse un flujo de datos activo para una participación de ancho de banda garantizado en la medida en que el contenido de su contador CT asociado aún no ha alcanzado el cero. Esto indica que su cantidad corriente de células acreditadas es aún positiva y, por tanto, que el flujo de datos aún no ha alcanzado su participación autorizada de ancho de banda reservado. Cada vez que un flujo de datos se sirve de su participación de ancho de banda garantizado, se actualiza su contador CT asociado disminuyendo en uno su contenido actual.
Por otro lado, en un planificador que funciona en "modo trama", una técnica clásica consiste en trocear cada trama de longitud variable en un número de segmentos de longitud fija consecutivos. Una trama de longitud variable comprende un número predefinido S de segmentos de longitud fija y se maneja por el planificador con un número idéntico de S momentos de tiempo de servicio consecutivos. En consecuencia, aunque, en cada momento de tiempo de servicio, un planificador que funciona en "modo trama" maneja un segmento de longitud fija por cada tiempo de servicio, según una manera bastante similar a la forma en la que un planificador que funciona en "modo célula" maneja una célula de longitud fija, la diferencia básica entre ellos radica en la decisión de planificación. En realidad, cuando un planificador selecciona una trama de longitud variable para un servicio en "modo trama", decide conceder una participación de ancho de banda para los S segmentos de longitud fija de la trama, es decir, para S momentos de tiempo de servicio consecutivos que comienzan en el actual. Por el contrario, cuando un planificador selecciona una célula de longitud fija para un servicio en "modo célula", decide conceder una participación de ancho de banda únicamente para esa célula de longitud fija, es decir, sólo para el momento de tiempo de servicio actual. De esta manera, para un planificador que funciona en "modo trama", los contadores CT se manejan por ejemplo como sigue. El valor de crédito inicial cargado en un contador CT se expresa convenientemente como la respectiva cantidad autorizada de segmentos acreditados para un periodo de tiempo. Esta respectiva cantidad autorizada de células acreditadas es cargada en el contador CT cuando éste es inicializado al comienzo de un nuevo periodo de tiempo. Se selecciona un flujo de datos activo para una participación de ancho de banda garantizado en la medida en la que el contenido de su contador CT asociado no sólo no está a cero, sino que también es igual al menos al número de segmentos S de la siguiente trama que se ha de servir para ese flujo de datos. Esto indica que su cantidad actual de segmentos acreditados aún está equilibrada positivamente y que, por tanto, el flujo de datos no ha alcanzado su participación autorizada de ancho de banda reservado. Además, cada vez que un flujo de datos se sirve de una participación de ancho de banda garantizado, se actualiza su contador asociado disminuyendo su contenido actual en S, es decir, en el número de segmentos de longitud fija de la siguiente trama. Dado que cada contador CT es hecho disminuir ahora en un número variable de segmentos S correspondientes a la longitud variable de cada trama, en oposición a una disminución en uno de célula a célula como en el "modo célula", su valor de contenido no alcanza necesaria y exactamente el cero cuando ya no está equilibrado positivamente. En realidad, esto depende de la longitud de las tramas sucesivas servidas al flujo de datos. Por tanto, para cada flujo de datos, un parámetro útil es el equilibrio de crédito del contador CT que se define como la diferencia entre su contenido de crédito actual y el número de segmentos S de la siguiente trama que se ha de servir a ese flujo de datos. El equilibrio de crédito indica un equilibrio de crédito positivo si es positivo o nulo, es decir, cuando la cantidad actual de segmentos acreditados es mayor o igual a S; o el equilibrio de crédito indica un equilibrio de crédito negativo si es negativo, es decir, cuando la cantidad actual de segmentos acreditados es menor que S. En consecuencia, un equilibrio de crédito positivo indica que permanece disponible crédito suficiente para hacer que la siguiente trama sea elegible para servicio por el planificador.
En lo que se refiere al abastecimiento de concesiones de servicio autorizadas a cada contador CT, una primera solución, según se mencionó en la parte introductoria, consiste en proporcionar una cantidad dada de concesiones autorizadas de servicio garantizado EGSG a cada contador CT asociado a un flujo de datos C, al comienzo de un periodo de tiempo predeterminado T. Esta cantidad de crédito EGSG es proporcional al ancho de banda reservado MCD, con lo que EGSG = MCR/T.
Se pueden concebir distintos enfoques para inicializar periódicamente los contadores CT con su cantidad respectiva de crédito EGSG. Las soluciones diferentes dependen de si el periodo de tiempo predeterminado es el mismo o no para todos los flujos de datos y, si es el mismo, si todos sus contadores CT se inicializan o no simultáneamente.
En un primer enfoque, todos los intervalos de tiempo de planificación de flujo de datos tienen la misma duración y la inicialización de sus contadores CT asociados está sincronizada con un ciclo periódico global T. En tal caso, los contadores de concesión de servicio de todos los flujos de datos se inicializan simultáneamente por su respectivo valor de crédito inicial EGSG. En tal solución, el planificador recorre típicamente el siguiente escenario. Al comienzo de un ciclo periódico, un número de flujos de datos aún no tienen su contador de concesión de servicio a cero, en consecuencia no han alcanzado su respectiva participación autorizada de ancho de banda reservado, y el planificador ejecuta el Modo G en cada momento de tiempo de servicio sucesivo. En algún momento, algunos flujos de datos están aún en el mismo estado, pero ninguno de ellos tiene una célula, o un segmento, esperando a ser servido. Todos ellos están inactivos. Entonces el planificador comienza a ejecutar el Modo NG. Más tarde, uno o varios de estos flujos de datos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado, pueden ahora tener esperando al menos una célula o un segmento. Se vuelven así activos. A continuación, el planificador reanuda el Modo G. Esta situación continúa hasta que finalmente todos los flujos de datos han alcanzado su respectiva participación autorizada de ancho de banda reservado. En este caso el planificador realiza el Modo NG en cada momento de tiempo de servicio sucesivo, hasta el final del ciclo periódico T, en cuyo momento se inicializan de nuevo todos los contadores de concesión de servicio CT.
En un segundo enfoque, todos los intervalos de tiempo de planificación de flujo de datos tienen la misma duración, pero la inicialización de sus contadores CT asociados no se sincroniza para todos los flujos de datos. De esta manera, todos los intervalos de tiempo de planificación de flujo de datos tienen aún la misma duración T, pero el posicionamiento de sus intervalos de tiempo respectivos T está algo diseminado en el tiempo en vez de estar sincronizado en el mismo ciclo periódico global. El funcionamiento del planificador ya no está correlacionado, o lo está en mucha menor media, para todos los flujos de datos como en la primera solución. En tal solución, la inicialización del contador de concesión de servicio, asociado a los diversos flujos de datos, es puesta en fase en diferentes instantes de tiempo. Puede verificarse que tal organización diseminada alternativa de los intervalos de tiempo de planificación de flujo de datos sigue siendo totalmente compatible con el funcionamiento básico del planificador. En realidad, dado que el planificador determina en cada momento de tiempo de servicio si debe funcionar en Modo G o en modo NG, cualquiera que sea el estado de los diversos contadores CT e independientemente del modo G o NG determinado en momentos de tiempo de servicio previos, no importa cuándo se han inicializado mutuamente los diversos contadores CT, es decir, si simultáneamente o no. Un efecto primario de la diseminación de los intervalos de tiempo de planificación de flujo de datos es crear con el tiempo alguna mezcla global de tipos de servicios tanto para el ancho de banda garantizado como para el no garantizado. En una realización práctica, todos los flujos de datos pueden, por ejemplo, dividirse en un número predefinido de subconjuntos de flujos de datos K, que se pueden inicializar en tiempos sucesivos separados por una duración igual a un Kº de T.
En un tercer enfoque, el periodo de tiempo predefinido T tiene una duración específica que posiblemente es diferente para los diversos flujos de datos. Por tanto, sus intervalos de tiempo están puestos en fase mutuamente de modo asíncrono. El funcionamiento del planificador ya no está correlacionado en absoluto para todos los flujos de datos como en la primera solución o bien lo está en mucha menor medida que en la solución previa. En tal caso, la inicialización, por el valor de crédito respectivo EGSG, del contador de concesión de servicio CT, asociado a los diversos flujos de datos, se pone en fase en instantes de tiempo totalmente diferentes.
Al igual que en la solución alternativa previa, también se puede verificar que, en tal alternativa tercera, la organización asíncrona de los intervalos de tiempo de planificación de flujo de datos sigue siendo aún totalmente compatible con el funcionamiento básico del planificador dual. El efecto primario de no correlacionar ya los intervalos de tiempo de planificación de flujo de datos es crear con el tiempo una mezcla total global de tipos de servicios tanto para el ancho de banda garantizado como para el no garantizado. Con el fin de realizar semejante tercera solución alternativa, se pueden concebir opciones diferentes para la inicialización de cada contador de concesión de servicio. Estas opciones diferentes consisten en ofrecer una elección flexible, para cada flujo de datos C2, de su valor de intervalo de tiempo respectivo T2 y de su valor de crédito respectivo EGSG2, incluyendo la posibilidad de usar el mismo valor de crédito para todos los flujos de datos, pero diferentes valores de intervalo de tiempo.
En lo que aún se refiere al abastecimiento de concesiones autorizadas de servicio a cada contador CT, debe señalarse aquí que la presente invención no se limita a implementaciones tales como las descritas anteriormente, es decir, inicializar los contadores de concesión de servicio respectivos CT al comienzo de un periodo de tiempo predefinido con una cantidad predeterminada de créditos. En realidad, puede realizarse una implementación alternativa de la presente invención suministrando unidades de crédito de concesión de servicio, que correspondan cada una de ellas a un tiempo de servicio de una célula o segmento, a los contadores de concesión de servicio respectivos, sobre una base continua en proporción al ancho de banda reservado para cada flujo de datos. En tal alternativa, para un tamaño de célula o segmento de B bits, el contador CT de un flujo de datos que tiene un ancho de banda reservado MCR es incrementado continuamente en una unidad de crédito de concesión de servicio a una velocidad de crédito Rc, con lo que Rc = MCR / B. Tal implementación proporciona un mejor rendimiento y evita una inicialización periódica al comienzo de un periodo de tiempo predefinido.
El contador común de flujo de datos de participación de ancho de banda garantizado GBSDFC se describe ahora en los siguientes párrafos.
Para llevar correctamente el control del número actual de flujos de datos activos que no han alcanzado hasta ahora su respectiva participación autorizada del ancho de banda reservado total, se decrementa el contador GBSDFC común cada vez que un flujo de datos activo ha alcanzado su respectiva participación autorizada de ancho de banda, o bien cada vez que un flujo de datos activo se vuelve inactivo incluso si aún no ha alcanzado su respectiva participación autorizada de ancho de banda.
Además, el contador GBSDFC común se incrementa cada vez que un flujo de datos se vuelve activo, en tanto que éste anteriormente no estuviera activo y no hubiera alcanzado aún su respectiva participación autorizada de ancho de banda reservado, o bien cada vez que un flujo de datos activo se detecta nuevamente como no habiendo alcanzado aún su respectiva participación autorizada de ancho de banda reservado, en tanto que anteriormente se le considerara como habiendo alcanzado esta última. Por lo tanto, se indica, en cada momento de tiempo de servicio, si se ha de conceder ancho de banda garantizado a un flujo de datos activo que no ha alcanzado su participación autorizada de ancho de banda reservado cuando el contador común GBSDFC no está vacío, o si se ha de conceder ancho de banda garantizado a un flujo de datos activo cuando el contador común GBSDFC está vacío.
Usando tal contador común de flujo de datos de participación de ancho de banda garantizado en combinación con los contadores de concesión de servicio asociados a cada flujo, es claro que el método de la presente invención permite una solución eficiente para implementar unos modos de determinación de modo que discriminan, en cada momento de tiempo de servicio, si se ha de conceder por parte del planificador de modo dual un ancho de banda garantizado o no garantizado.
En lo que se refiere a la propia operación de planificación, que permite seleccionar, en cada momento de tiempo de servicio, en modo G o en modo NG, un flujo de datos particular para que sea servido el primero, se ha de explicar que son posibles diferentes tipos de disposiciones de planificación.
En cada momento de tiempo de servicio, el planificador realiza exclusivamente la planificación sobre la base de los parámetros de planificación de ancho de banda reservado cuando se concede una participación de ancho de banda garantizado en modo G, o bien de los parámetros de planificación de ponderación administrativa cuando se concede una participación de ancho de banda no garantizado en modo NG. Esto depende del modo G o NG realizado por el procesador como resultado de los medios de determinación de modo que vigilan el estado global de los contadores de concesión de servicio de todos los flujos de datos activos. Cuando se comparte ancho de banda garantizado en modo G, el funcionamiento del planificador es aquí conservador de trabajo, dado que el modo G siempre se ejecuta con prioridad sobre el modo NG.
En términos generales, se puede usar tipos diferentes de técnicas de planificación clásicas para cada modo G o NG, tales como, por ejemplo, las basadas en un clasificador de marca de tiempo más pequeña o las basadas en una lista circular, denominada normalmente técnica de planificación cíclica. En combinación, son concebibles cuatro ejemplos de solución de la disposición de planificación en la forma siguiente:
-
Solución 1, que usa un clasificador de marca de tiempo más pequeña tanto en el modo G como en el modo NG; y
-
Solución 2, que usa un clasificador de marca de tiempo más pequeña para el modo G y una lista circular para el modo NG; y
-
Solución 3, que usa una lista circular tanto en modo G como en modo NG; y
-
Solución 4, que usa una lista circular para modo G y un clasificador de marca de tiempo más pequeña para modo NG.
Estos tipos diferentes de técnicas de planificador se describen ahora por separado para el modo G y para el modo NG.
A) Planificación en modo G
Cuando se selecciona el modo G por los medios de determinación de modo, el planificador ejecuta una distribución justa ponderada de participación de ancho de banda garantizado entre todos los flujos de datos actualmente activos que aún tienen suficiente crédito remanente en su contador de concesión de servicio, es decir, los flujos de datos que aún no han alcanzado su respectiva participación autorizada de ancho de banda reservado. Por tanto, de una u otra manera, esta operación implica la necesidad de separar por filtración los flujos de datos que están inactivos y/o que han alcanzado su participación autorizada de ancho de banda reservado.
Se describe ahora una técnica de planificación basada en un clasificador de marca de tiempo más pequeña para modo G. Se consigue una distribución justa ponderada de participación de ancho de banda garantizado por una planificación de separación virtual convencional basada en el parámetro de planificación de ancho de banda reservado por cada flujo de datos en la memoria. En cada momento de tiempo de servicio en el modo G, el flujo de datos seleccionado es el que tiene la marca de tiempo más pequeña de entre los parámetros de planificación de ancho de banda reservado para todos los flujos de datos activos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado. Se ha de observar que la inicialización y cálculo de la marca de tiempo del parámetro de planificación de ancho de banda reservado son similares a los descritos en la primera realización. Esto significa que la marca de tiempo del parámetro de planificación se calcula como una función de la velocidad mínima de célula asociada. Sin embargo, obsérvese que el planificador maneja aquí los flujos de datos sobre la base de sus respectivos parámetros de marca de tiempo del parámetro de planificación de ancho de banda reservado de un modo conservador de trabajo. Un parámetro de planificación de un flujo de datos se elimina de la memoria:
-
cuando un flujo de datos previamente activo que no ha alcanzado su respectiva participación autorizada de ancho de banda reservado se vuelve inactivo; o
-
cuando un flujo de datos activo que no alcanzado previamente su respectiva participación autorizada de ancho de banda reservado es servido y agota su crédito en su contador de concesión de servicio.
Un parámetro de planificación de ancho de banda reservado para un nuevo flujo de datos se introduce en la memoria, bien:
-
cuando un flujo de datos previamente inactivo que no ha alcanzado su respectiva participación autorizada de ancho de banda reservado se vuelve activo; o
-
cuando un flujo de datos activo que ha alcanzado previamente su respectiva participación autorizada de ancho de banda reservado recibe algún nuevo crédito de concesión de servicio abonado en su contador de concesión de servicio.
Se describe ahora una técnica de planificación basada en una lista circular para el modo G. Se puede realizar alternativamente una distribución justa ponderada de participación de ancho de banda garantizado con una lista circular sencilla, denominada normalmente técnica de planificación cíclica, de flujos de datos activos/acreditados, en asociación con sus respectivos contadores de crédito de concesión de servicio cuyo contenido de crédito autorizado es proporcional al respectivo ancho de banda reservado de cada flujo de datos. La lista circular de flujos de datos activos/acreditados contiene la identidad de todos los flujos de datos activos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado.
En cada momento de tiempo de servicio en modo G, el flujo de datos seleccionado está a la cabeza de la lista circular, y su identidad se mueve entonces a la cola de la lista circular. La separación por filtración de un flujo de datos implica eliminar la entrada correspondiente de la lista circular de activos/acreditados. Esto sucede cuando un flujo de datos previamente activo que no ha alcanzado su respectiva participación autorizada de ancho de banda reservado se vuelve inactivo, o bien cuando un flujo de datos activo que no ha alcanzado previamente su respectiva participación autorizada de ancho de banda reservado es servido y agota su crédito en su contador de concesión de servicio. La introducción de una nueva entrada de flujo de datos implica añadirla a la lista circular de activos/acreditados. Esto sucede cuando un flujo de datos previamente inactivo que no ha alcanzado su respectiva participación autorizada de ancho de banda reservado se vuelve activo, o bien cuando un flujo de datos activo que ha alcanzado previamente su respectiva participación autorizada de ancho de banda reservado recibe un nuevo crédito de concesión de servicio abonado en su contador de concesión de servicio. En consecuencia, el modo G se ejecuta en la medida en que aún está presente al menos una entrada de flujo de datos en esta lista circular de activos/acreditados.
B) Planificación en Modo NG
Cuando se selecciona el modo NG por los medios de determinación de modo, el planificador ejecuta una distribución justa ponderada de participación de ancho de banda no garantizado entre todos los flujos de datos actualmente activos. Debe observarse que cuando se ejecuta el modo NG todos los flujos de datos activos han agotado necesariamente su crédito respectivo, es decir, han alcanzado su respectiva participación autorizada de ancho de banda reservado, dado que de otra manera el modo G se ejecutaría con prioridad. De una u otra manera, esta operación implica la necesidad de separar por filtración los flujos de datos que están inactivos.
Se describe ahora una técnica de planificación basada en un clasificador de marca de tiempo más pequeña para modo NG. Se consigue una distribución justa ponderada de participación de ancho de banda no garantizado por una planificación de separación virtual convencional basada en el parámetro de planificación de ponderación administrativa por cada flujo de datos en la memoria. En cada momento de tiempo de servicio en el modo NG, el flujo de datos seleccionado es el que tiene la marca de tiempo más pequeña del parámetro de planificación de ponderación administrativa de entre todos los flujos de datos activos.
Se ha de observar que la inicialización y cálculo de la marca de tiempo del parámetro de planificación de ponderación administrativa son similares a los descritos en la primera realización. Esto significa que la marca de tiempo del parámetro de planificación de ponderación administrativa se calcula como una función de la ponderación administrativa asociada. Un parámetro de planificación de ponderación administrativa de un flujo de datos se elimina de la memoria cuando un flujo de datos previamente activo se vuelve inactivo, o cuando un flujo de datos activo que ha alcanzado previamente su respectiva participación autorizada de ancho de banda reservado recibe un nuevo crédito por la inicialización de su contador de concesión de servicio. Un parámetro de planificación de ponderación administrativa para un nuevo flujo de datos se introduce en la memoria cuando un flujo de datos previamente inactivo se vuelve activo. El modo NG se ejecuta en la medida en que aún está presente al menos una entrada de un flujo de datos activo en la memoria, o hasta que se reanuda el modo G.
Se describe ahora una técnica de planificación basada en una lista circular para modo NG. Se puede realizar alternativamente una distribución justa ponderada de participación de ancho de banda no garantizado con una técnica de lista circular sencilla de flujos de datos activos/acreditados en asociación con un segundo conjunto de respectivos contadores de concesión de servicio extra ECT, muy similares a los contadores de concesión de servicio CT, pero cuyo contenido se hace entonces proporcional al respectivo parámetro de planificación de ponderación administrativa de los flujos de datos. Sin embargo, se puede observar que los respectivos contadores de concesión de servicio CT únicamente se usan para aquellos flujos de datos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado, mientras que los respectivos contadores de concesión de servicio extra ECT únicamente se usan para aquellos flujos de datos que han alcanzado su respectiva participación autorizada de ancho de banda reservado. Por tanto, cada vez que un flujo de datos activo ha agotado su crédito de distribución de ancho de banda garantizado, se puede concebir el uso de sus mismos medios de contador asociados para la contabilización de crédito de concesión de ancho de banda no garantizado de una manera similar a la de una contabilización de créditos básica. Al hacerlo así, puede usarse ventajosamente un solo medio de contador asociado a cada flujo de datos que actúe como contador de concesión de servicio CT cuando el flujo de datos aún no ha alcanzado su respectiva participación autorizada de ancho de banda reservado, o que actúe como un contador de concesión de servicio extra ECT cuando el flujo de datos ha alcanzado su participación autorizada de ancho de banda reservado.
Para usar contadores de concesión de servicio extra para planificar en modo NG han de acomodarse parámetros de planificación de ponderación administrativa de una manera adecuada en lo que se refiere al aprovisionamiento del respectivo valor de crédito de concesión de servicio extra inicial predefinido NGSC en los contadores de concesión de servicio, dado que la distribución relacionada de ancho de banda no garantizado debe mantenerse continuamente para cada flujo de datos hasta que se vuelven a acreditar nuevas concesiones de servicio para una participación de ancho de banda garantizado.
En consecuencia, con el fin de mantener tal distribución justa ponderada de participación de ancho de banda no garantizado en todos los flujos de datos activos en modo NG, los contadores de concesión de servicio extra ECT de todos los flujos de datos activos deben volverse a inicializar:
-
recargándolos simultáneamente con respectivos créditos de concesión de servicio extra iniciales, basándose en parámetros de planificación de ponderación administrativa respectivamente asociados; y
-
únicamente cuando todos estos flujos de datos activos han agotado sus respectivos créditos de concesión de servicio extra iniciales NGSC.
En realidad, de otra manera la distribución de ancho de banda no garantizado no se realizaría proporcionalmente a sus ponderaciones administrativas respectivas.
En un ejemplo de una realización práctica, tal reinicialización de créditos de concesión de servicio extra iniciales NGSC para todos los flujos de datos activos puede lograrse funcionalmente de manera simultánea según se requiera, al tiempo que se evita la recarga simultánea real de contenidos de contador de concesión de servicio que se pueden retrasar.
Con el fin de abastecer tal recarga retrasada de crédito de concesión de servicio extra en los contadores ECT, se usa una lista circular de espera adicional de flujos de datos activos que han agotado su respectivo valor de crédito de concesión de servicio extra inicial predefinido y que no han recibido aún un nuevo valor de crédito respectivo. Entonces, cuando los créditos de concesión extra necesitan reinicializarse simultáneamente, se ejecuta una conmutación a esta lista de espera adicional para reemplazar la lista circular de activos/acreditados previamente usada que se acaba de encontrar vacía. Cuando se cambia a la lista circular de espera, los contadores de concesión de servicio extra reinicializados no están aún realmente recargados con sus respectivos créditos de concesión de ancho de banda no garantizado. Pero su presencia en esta lista circular adicional, que ahora se usa como una nueva lista circular de activos/acreditados, permite al menos su selección por el planificador cuando se ejecuta el modo NG. En consecuencia, cuando se selecciona un flujo de datos por primera vez después de haber reinicializado su crédito de concesión de servicio extra, se detecta el hecho de que éste es seleccionado mientras su contador de concesión de servicio extra aún no está recargado. En realidad, esto implica, según una regla implícita, que la recarga de su contador de concesión de servicio extra está de hecho pendiente y debe por tanto recargarse en ese momento con un nuevo crédito de concesión de servicio extra NGSC.
Se separa por filtración una entrada de flujo de datos eliminándola de la lista circular de activos/acreditados:
-
cuando un flujo de datos se vuelve inactivo, cuando un flujo de datos activo ha agotado su crédito de concesión de servicio extra; o
-
cuando un flujo de datos activo, que ha alcanzado previamente su respectiva participación autorizada de ancho de banda reservado recibe un respectivo nuevo valor de crédito de concesión de servicio abonado en su contador de concesión de servicio. Además, esta entrada eliminada se coloca en la lista circular de espera adicional antes mencionada, pero sólo si el flujo de datos aún está activo sin haberse dejado ningún crédito de concesión de servicio extra ni ningún valor de crédito de servicio respectivo.
Además, se introduce una nueva entrada de flujo de datos en la lista circular de activos/acreditados cuando ésta se vuelve activa y si aún ha quedado algo de crédito de concesión de servicio extra. El Modo NG se ejecuta en la medida en que al menos aún está presente una entrada de flujo de datos en la lista circular de activos/acreditados, es decir, en la medida en que un flujo de datos está activo, a no ser que se reanude el Modo G.
Se hace un comentario adicional con referencia a la primera solución antes mencionada, es decir, la solución en la que se usa un clasificador de marcas de tiempo tanto para el modo G como para el modo NG, y en la que para cada flujo de datos, en cualquier momento de tiempo de servicio, únicamente un parámetro de planificación está exclusivamente en uso en la memoria, a saber, su parámetro de planificación de ancho de banda reservado o su parámetro de planificación de ponderación administrativa. Para una implementación de esta clase sería suficiente un método de filtrado en función de un solo conjunto de parámetros de marca de tiempo. En realidad, en el modo G, el filtrado únicamente debe habilitar los flujos de datos que tienen en su sitio un parámetro de planificación de ancho de banda garantizado, es decir, los flujos de datos que no han alcanzado su participación autorizada de ancho de banda reservado. Además, en el modo NG, no se requiere en principio filtrado dado que todos los flujos de datos activos han alcanzado su participación autorizada de ancho de banda reservado y, por tanto, tienen en su sitio su parámetro de planificación de ancho de banda no garantizado. Esto significa que, en una implementación de esta clase, un planificador de modo dual maneja en la memoria una mezcla exclusiva de parámetros de marca de tiempo de planificación de ancho de banda reservado, para flujos de datos a conceder con una participación de ancho de banda garantizado, y de parámetros de marca de tiempo de planificación de ponderación administrativa, para flujos de datos a conceder con una participación de ancho de banda no garantizado.
Aunque se han descrito previamente los principios de la invención con relación a un aparato específico, se ha de entender claramente que esta descripción se realiza únicamente a modo de ejemplo y no como una limitación del alcance de la invención según se define en las reivindicaciones anexas.

Claims (28)

1. Un método para compartir ancho de banda disponible en un enlace común (L) de una red de comunicaciones entre una pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) que son transmitidos a través de dicho enlace común (L), siendo dicho método para ser usa por un procesador (P) e incluyendo los pasos de compartir ancho de banda reservado incluido en dicho ancho de banda disponible entre dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), y de compartir ancho de banda no reservado entre dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) según una respectiva participación de paquete de datos no reservado que está asociada a cada uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), incluyéndose dicho ancho de banda no reservado en dicho ancho de banda disponible en exceso de dicho ancho de banda reservado, caracterizado porque dicho paso de compartir dicho ancho de banda no reservado incluye asociar a al menos uno (C2) de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) una respectiva ponderación administrativa adaptable y determinar dicha respectiva participación de paquete de datos no reservado que está asociada a dicho al menos un flujo de datos (C2) en función de dicha respectiva ponderación administrativa adaptable.
2. Método para compartir ancho de banda disponible según la reivindicación 1, caracterizado porque dicho método incluye determinar dicho al menos un flujo de datos como uno activo (C2) de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) que tienen al menos un paquete de datos en unos medios de memoria intermedia (BUF) que están acoplados a dicho procesador (P).
3. Método para compartir ancho de banda disponible según la reivindicación 1, caracterizado porque dicho procesador (P) controla unos medios de memoria intermedia (BUF) que almacenan paquetes de datos recibidos, y porque dicho paso de compartir ancho de banda reservado está constituido por un primer procedimiento para compartir ancho de banda garantizado, hasta una cantidad de ancho de banda reservado (MCR1, MCR2,...,MCR8, MCR9,..., MCR16) predefinida para cada flujo de datos (C1, C2,..., C8, C9,..., C16) e incluida en dicho ancho de banda disponible, y porque dicho paso de compartir ancho de banda no reservado está constituido por un segundo procedimiento para compartir ancho de banda no garantizado entre dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,...) según una respectiva participación de ancho de banda no garantizado, comprendiendo dicho ancho de banda no garantizado el ancho de banda no reservado así como la parte realmente no usada de dicho ancho de banda reservado, estando incluido dicho ancho de banda no reservado en dicho ancho de banda disponible en exceso de dicho ancho de banda reservado, y porque dicho segundo procedimiento para compartir dicho ancho de banda no garantizado incluye asociar dicha ponderación administrativa adaptable respectiva a al menos uno (C2) de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), determinándose dicha respectiva participación de ancho de banda no garantizado como una función de dicha ponderación administrativa adaptable respectiva asociada a dicho al menos un flujo de datos
(C2).
4. Método para compartir ancho de banda disponible según la reivindicación 1, caracterizado porque dicho ancho de banda no reservado comprende ancho de banda reservado no usado.
5. Método para compartir ancho de banda disponible según la reivindicación 3, caracterizado porque dicho método incluye además, en cada momento de tiempo de servicio, los pasos de: determinar si, para al menos cada flujo de datos activo de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), se ha alcanzado o no una respectiva participación autorizada de dicho ancho de banda reservado; y seleccionar, cuando al menos un flujo de datos activo (C2) no ha alcanzado su respectiva participación autorizada de ancho de banda reservado, uno (C2) de entre dicha pluralidad de flujos de datos activos que no han alcanzado su participación autorizada de ancho de banda reservado, con lo que se concede ancho de banda garantizado en dicho momento de tiempo de servicio; y seleccionar, cuando cada uno de dicha pluralidad de flujos de datos activos ha alcanzado su respectiva participación autorizada de ancho de banda reservado, uno (C1) de entre dicha pluralidad de flujos de datos activos, con lo que se concede ancho de banda no garantizado en dicho momento de tiempo de servicio.
6. Método para compartir ancho de banda disponible según la reivindicación 3, caracterizado porque dicho método incluye además los pasos de:
-
asociar a cada uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) un contador de concesión de servicio respectivo (CT1, CT2,..., CT8, CT9,..., CT16); e
-
inicializar dicho contador (CT2) de concesión de servicio en cada comienzo de un período de tiempo predefinido hasta un respectivo valor de crédito inicial predefinido (EGSG2) que se deriva de dicho ancho de banda reservado (MCR2) como siendo igual al número correspondiente de concesiones de servicio autorizadas para el ancho de banda reservado durante dicho periodo de tiempo predefinido; y
-
actualizar, en cada momento de tiempo de servicio, el contador (CT2) de concesión de servicio respectivo que está asociado al flujo de datos (C2) que se está sirviendo en dicho momento de tiempo de servicio, hasta que se alcanza un respectivo valor final predefinido para dicho contador (CT2) de concesión de servicio respectivo; y
-
detectar que se alcanza una respectiva participación autorizada de ancho de banda reservado de un flujo de datos cuando el contador de concesión de servicio asociado ha alcanzado dicho valor final predefinido respectivo.
7. Método para compartir ancho de banda disponible según la reivindicación 6, caracterizado porque, cuando se sirven sucesivamente paquetes completos de longitud variable, dicho paso de actualizar dicho contador (CT2) de concesión de servicio respectivo se realiza contando un número de concesiones de servicio en proporción a la longitud del paquete servido.
8. Método para compartir ancho de banda disponible según la reivindicación 6, caracterizado porque dicho periodo de tiempo predefinido tiene la misma duración para todos los flujos de datos.
9. Método para compartir ancho de banda disponible según la reivindicación 8, caracterizado porque dicho periodo de tiempo predefinido de la misma duración está sincronizado para todos los flujos de datos, de modo que dicho paso de inicializar dicho contador (CT2) de concesión de servicio de cada flujo de datos (C2) en cada comienzo del periodo de tiempo predefinido se realiza simultáneamente para todos los contadores de concesión de servicio (CT1, CT2,..., CT8, CT9,..., CT16) de todos los flujos de datos (C1, C2,..., C8, C9,..., C16).
10. Método para compartir ancho de banda disponible según la reivindicación 8, caracterizado porque dicho periodo de tiempo predefinido de la misma duración no está sincronizado para todos los flujos de datos, de modo que dicho paso de inicializar dicho contador (CT2) de concesión de servicio de cada flujo de datos (C2) en cada comienzo del periodo de tiempo predefinido no se realiza simultáneamente para todos los contadores de concesión de servicio (CT1, CT2,..., CT8, CT9,..., CT16) de todos los flujos de datos (C1, C2,..., C8, C9,..., C16).
11. Método para compartir ancho de banda disponible según la reivindicación 6, caracterizado porque dicho periodo de tiempo predefinido tiene una duración específica, posiblemente diferente, para cada flujo de datos.
12. Método para compartir ancho de banda disponible según la reivindicación 5 o 6, caracterizado porque dicho paso de determinar si se ha alcanzado o no una respectiva participación autorizada de dicho ancho de banda reservado para al menos cada flujo de datos activo incluye un contador de flujo de datos de participación de ancho de banda garantizado (GBSDFC), y dicho contador común de flujo de datos de participación de ancho de banda garantizado:
-
se usa para registrar el número actual de flujos de datos activos que no han alcanzado su respectiva participación autorizada de dicho ancho de banda reservado durante un periodo de tiempo predefinido; y
-
se decrementa cada vez que un flujo de datos activo ha alcanzado su respectiva participación autorizada de ancho de banda reservado, o cada vez que un flujo de datos activo se vuelve inactivo incluso si aún no ha alcanzado su citada respectiva participación autorizada de ancho de banda reservado;
-
se incrementa cada vez que un flujo de datos se vuelve activo, en tanto que éste previamente no estuviera activo y no hubiera alcanzado aún su citada respectiva participación autorizada de ancho de banda reservado, o cada vez que se detecta de nuevo un flujo de datos activo como no habiendo alcanzado aún su respectiva citada participación autorizada de ancho de banda reservado, en tanto que previamente se le hubiera considerado como habiendo alcanzado esta última;
-
e indica así, en cada momento de tiempo de servicio, si se ha de conceder ancho de banda garantizado a un flujo de datos activo que no ha alcanzado su participación autorizada de ancho de banda reservado cuando dicho contador común no está vacío, o si se ha de conceder ancho de banda no garantizado a un flujo de datos activo cuando dicho contador común está vacío.
13. Método para compartir ancho de banda disponible según la reivindicación 5, caracterizado porque, para seleccionar adecuadamente un flujo de datos que se ha de servir en cada momento de tiempo de servicio, dichos pasos de selección incluyen además:
-
determinar un parámetro de planificación de ancho de banda garantizado (R) para al menos cada flujo de datos activo que no ha alcanzado su respectiva participación autorizada de ancho de banda reservado, y proporcionar así a cada uno dicho parámetro de planificación de ancho de banda garantizado, determinándose cada parámetro de planificación de ancho de banda garantizado (R) como una función de su citado ancho de banda reservado (MCR); y
-
determinar un parámetro de planificación no garantizado (U) para al menos cada flujo de datos activo que ha alcanzado su respectiva participación autorizada de ancho de banda reservado, y proporcionar así a cada uno dicho parámetro de planificación no garantizado, determinándose cada parámetro de planificación no garantizado como una función de su respectiva citada ponderación administrativa adaptable (W); y
-
ejecutar la planificación sobre la base de dicho parámetro de planificación de ancho de banda garantizado (R) cuando se concede ancho de banda garantizado a un flujo de datos activo que aún no ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
ejecutar la planificación sobre la base de dichos parámetros de planificación no garantizados (U) cuando se concede ancho de banda no garantizado a un flujo de datos activo que ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
seleccionar, tras la recepción por dicho procesador (P) de una señal de concesión de ancho de banda garantizado o de una señal de concesión de ancho de banda no garantizado, según reglas y condiciones predefinidas, un flujo de datos (C2) que se detecta como siendo, respectivamente, el que tiene el valor más bajo de entre dichos parámetros de planificación de ancho de banda garantizado (R2) o el que tiene el valor más bajo de entre los parámetros de planificación no garantizados (U2).
14. Método para compartir ancho de banda disponible según la reivindicación 13, caracterizado porque dicho parámetro de planificación de ancho de banda garantizado (R) únicamente se usa para aquellos flujos de datos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado, porque dicho parámetro de planificación no garantizado (U) únicamente se usa para aquellos flujos de datos que han alcanzado su respectiva participación autorizada de ancho de banda reservado, y porque cada flujo de datos se planifica en cualquier punto en el tiempo usando un solo parámetro de planificación de una manera exclusiva, sea dicho parámetro de planificación de ancho de banda garantizado (R) o dicho parámetro de planificación no garantizado (U).
15. Método para compartir ancho de banda disponible según la reivindicación 5, caracterizado porque, para seleccionar adecuadamente un flujo de datos que se ha de servir en cada momento de tiempo de servicio, dichos pasos de selección incluyen además:
-
mantener una lista circular de flujos de datos de ancho de banda garantizado de aquellos flujos de datos activos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
determinar un parámetro de planificación no garantizado (U) para al menos cada flujo de datos activo que ha alcanzado su respectiva participación autorizada de ancho de banda reservado, y proporcionar así a cada uno dicho parámetro de planificación no garantizada, determinándose cada parámetro de planificación no garantizado (U) como una función de su respectiva ponderación administrativa adaptable (W); y
-
ejecutar la planificación sobre la base de dicha lista circular de flujos de datos de ancho de banda garantizado cuando se concede ancho de banda garantizado a un flujo de datos activo que aún no ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
ejecutar la planificación sobre la base de dichos parámetros de planificación no garantizados (U) cuando se concede ancho de banda no garantizado a un flujo de datos activo que ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
seleccionar, tras la recepción por dicho procesador (P) de una señal de concesión de ancho de banda garantizado o de una señal de concesión de ancho de banda no garantizado, según reglas y condiciones predefinidas, un flujo de datos (C2) que se detecta como siendo, respectivamente, el que está a la cabeza de dicha lista circular de flujos de datos de ancho de banda garantizado o el que tiene el valor más bajo de entre dichos parámetros de planificación no garantizado (U2).
16. Método para compartir ancho de banda disponible según la reivindicación 5, caracterizado porque, para seleccionar adecuadamente un flujo de datos que se ha de servir en cada momento de tiempo de servicio, dichos pasos de selección incluyen además:
-
determinar un parámetro de planificación de ancho de banda garantizado (R) para al menos cada flujo de datos activo que no ha alcanzado su respectiva participación autorizada de ancho de banda reservado, y proporcionar así a cada uno dicho parámetro de planificación de ancho de banda garantizado, determinándose cada parámetro de planificación de ancho de banda garantizado (R) como una función de su citado ancho de banda reservado (MCR); y
-
asociar a cada uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) un respectivo contador de concesión de servicio extra (ECT1, ECT2,..., ECT8, ECT9,..., ECT16); e
-
inicializar dicho contador de concesión de servicio extra de cada flujo de datos que ha alcanzado su respectiva participación autorizada de ancho de banda reservado hasta un respectivo valor de crédito de concesión de servicio extra inicial predefinido (NGSG) que es proporcional a dicha respectiva ponderación administrativa adaptable (W), realizándose esta operación de inicialización cada vez que todos los citados contadores de concesión de servicio extra han alcanzado un valor final predefinido respectivo; y
-
actualizar, en cada momento de tiempo de servicio, el respectivo contador de concesión de servicio extra (ECT2) que está asociado al flujo de datos (C2) que se está sirviendo en dicho momento de tiempo de servicio, hasta que se alcanza un valor final predefinido respectivo para dicho respectivo contador de concesión de servicio extra (ECT2), siendo proporcional el número total de actualizaciones posibles para un contador de concesión de servicio extra a dicha ponderación administrativa adaptable respectiva (W) de dicho flujo de datos asociado; y
-
mantener una lista circular de flujos de datos de ancho de banda no garantizado de aquellos flujos de datos activos que han alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
ejecutar la planificación sobre la base de dichos parámetros de planificación de ancho de banda garantizado (R) cuando se concede ancho de banda garantizado a un flujo de datos activo que aún no ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
ejecutar la planificación sobre la base de dicha lista circular de flujos de datos de ancho de banda no garantizado cuando se concede ancho de banda no garantizado a un flujo de datos activo que ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
seleccionar, tras la recepción por dicho procesador (P) de una señal de concesión de ancho de banda garantizado o de una señal de concesión de ancho de banda no garantizado, según reglas y condiciones predefinidas, un flujo de datos (C2) que se detecta como siendo, respectivamente, el que tiene el valor más bajo de entre dichos parámetros de planificación de ancho de banda garantizado (R2) o el que está a la cabeza de dicha lista circular de flujos de datos de ancho de banda no garantizado.
17. Método para compartir ancho de banda disponible según la reivindicación 5, caracterizado porque, para seleccionar adecuadamente un flujo de datos que se ha de servir en cada momento de tiempo de servicio, dichos pasos de selección incluyen además:
-
mantener una lista circular de flujos de datos de ancho de banda garantizado de aquellos flujos de datos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
asociar a cada uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) un respectivo contador de concesión de servicio extra (ECT1, ECT2,..., ECT8, ECT9,..., ECT16); e
-
inicializar dicho contador de concesión de servicio extra de cada flujo de datos que ha alcanzado su participación respectiva de ancho de banda reservado hasta un respectivo valor de crédito de concesión de servicio extra inicial predefinido (NGSG) que es proporcional a dicha ponderación administrativa adaptable respectiva (W), realizándose esta operación de inicialización cada vez que todos los citados contadores de concesión de servicio extra han alcanzado un valor final predefinido respectivo; y
-
actualizar, en cada momento de tiempo de servicio, el respectivo contador de concesión de servicio extra (ECT2) que está asociado al flujo de datos (C2) que se está sirviendo en dicho momento de tiempo de servicio, hasta que se alcanza un valor final predefinido respectivo para dicho respectivo contador de concesión de servicio extra (ECT2), siendo proporcional el número total de actualizaciones posibles para un contador de concesión de servicio extra a dicha ponderación administrativa adaptable respectiva (W) de dicho flujo de datos asociado; y
-
mantener una lista circular de flujos de datos de ancho de banda no garantizado de aquellos flujos de datos activos que han alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
ejecutar la planificación sobre la base de dicha lista circular de flujos de datos de ancho de banda garantizado cuando se concede ancho de banda garantizado a un flujo de datos activo que aún no ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
ejecutar la planificación sobre la base de dicha lista circular de flujos de datos de ancho de banda no garantizado cuando se concede ancho de banda no garantizado a un flujo de datos activo que ha alcanzado su respectiva participación autorizada de ancho de banda reservado; y
-
seleccionar, tras la recepción por dicho procesador (P) de una señal de concesión de ancho de banda garantizado o de una señal de concesión de ancho de banda no garantizado, según reglas y condiciones predefinidas, un flujo de datos (C2) que se detecta como siendo, respectivamente, el que está a la cabeza de dicha lista circular de flujos de datos de ancho de banda garantizado o el que está a la cabeza de dicha lista circular de flujos de datos de ancho de banda no garantizado.
18. Método para compartir ancho de banda disponible según la reivindicación 16 o 17, caracterizado porque, cuando se sirven sucesivamente paquetes completos de longitud variable, dicho paso de actualizar dicho respectivo contador de concesión de servicio extra (ECT2) se realiza contando un número de concesiones de servicio en proporción a la longitud del paquete servido.
19. Método para compartir ancho de banda disponible según la reivindicación 16 o 17, caracterizado porque dicho respectivo contador de concesión de servicio (CT) se usa sólo para aquellos flujos de datos que no han alcanzado su respectiva participación autorizada de ancho de banda reservado, porque dicho respectivo contador de concesión de servicio extra (ECT) sólo se usa para aquellos flujos de datos que han alcanzado su respectiva participación autorizada de ancho de banda reservado, y porque se usan unos medios únicos de contador asociados a cada flujo de datos (C), que actúan como un respectivo contador de concesión de servicio (CT) para un flujo de datos que aún no ha alcanzado su respectiva participación autorizada de ancho de banda reservado, o que actúan como dicho respectivo contador de concesión de servicio extra (ECT) para un flujo de datos que ha alcanzado su respectiva participación autorizada de ancho de banda reservado.
20. Un procesador (P) para compartir ancho de banda disponible en un enlace común (L) de una red de telecomunicaciones entre una pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) que son transmitidos a través de dicho enlace común (L), incluyendo dicho procesador (P) unos primeros medios de procesamiento (P1) para compartir ancho de banda reservado incluido en dicho ancho de banda disponible entre dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) según una respectiva participación de paquete de datos reservado que está asociada a cada uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), y unos segundos medios de procesamiento (P2) para compartir ancho de banda no reservado entre dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) según una respectiva participación de paquete de datos no reservado que está asociada a cada uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), estando incluido dicho ancho de banda no reservado en dicho ancho de banda disponible en exceso de dicho ancho de banda reservado, caracterizado porque dicho procesador (P) incluye unos medios de asociación (MEM) para asociar a al menos uno (C2) de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) una ponderación administrativa adaptable, y porque dicho segundo procesador (P2) incluye unos medios de determinación (DET2) para determinar dicha respectiva participación de paquete de datos no reservado que está asociada a dicho al menos un flujo de datos (C2) en función de dicha ponderación administrativa adaptable respectiva, y porque dicho procesador (P) incluye además unos medios de control (CTRL) para controlar dichos primeros medios de procesamiento (P1) y dichos segundos medios de procesamiento (P2) y para proporcionar una señal de ancho de banda compartido que es una medida de dicha respectiva participación de paquete de datos reservado y de dicha respectiva participación de paquete de datos no reservado.
21. El procesador (P) para compartir ancho de banda disponible según la reivindicación 20, caracterizado porque dicho procesador (P) incluye además unos terceros medios de determinación (DET3) para determinar dicho al menos un flujo de datos (C2) como uno activo (C2) de dicha pluralidad de flujo de datos (C1, C2,..., C8, C9,..., C16) que tienen al menos un paquete de datos en unos medios de memoria intermedia (BUF) que están acoplados a dicho procesador (P).
22. El procesador (P) para compartir ancho de banda disponible según la reivindicación 20, caracterizado porque dichos primeros medios de procesamiento (P1) incluyen unos primeros medios de determinación (DET1) para determinar dicha respectiva participación de paquete de datos reservado en función de una velocidad mínima de paquete de datos que está asociada a cada flujo de datos citado y que garantiza a cada flujo de datos citado un ancho de banda garantizado mínimo, y porque se incluyen además dichos medios de control (CTRL) para activar dichos segundos medios de procesamiento (P2) cuando dicho ancho de banda garantizado mínimo es respetado por dichos primeros medios de procesamiento (P1).
23. El procesador (P) según la reivindicación 20, caracterizado porque dicho procesador (P) soporta un servicio de velocidad garantizada de tramas en un sistema de telecomunicaciones en modo de transferencia asíncrono.
24. El procesador (P) según la reivindicación 20, caracterizado porque dicho procesador soporta un sistema de telecomunicaciones de paquetes de longitud variable.
25. El procesador (P) según la reivindicación 20, caracterizado porque dicho ancho de banda no reservado comprende ancho de banda no reservado no usado.
26. Un planificador en una red de comunicaciones para compartir ancho de banda disponible en un enlace común (L) entre una pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) que son transmitidos a través de dicho enlace común (L), incluyendo dicho planificador unos medios de memoria intermedia (BUF) para clasificar paquetes de datos entrantes de dicha pluralidad de flujo de datos (C1, C2,..., C8, C9,..., C16), dispuestos en al menos una entrada de dicho planificador, según su flujo de datos asociado, en una pluralidad de colas de memoria intermedia (Q1, Q2,..., Q8, Q9,..., Q16) que están incluidas en dichos medios de memoria intermedia (BUF) y que están asociadas cada una a uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), y para proporcionar así una pluralidad de paquetes de datos clasificados, y unos medios de selección (SEL) para seleccionar uno de dicha pluralidad de paquetes de datos clasificados para transmitir dicho paquete de datos clasificado por dicho enlace común (L), caracterizado porque dicho planificador incluye además un procesador (P) según una cualquiera de las reivindicaciones 20, 21 y 22, estando acoplado dicho procesador (P) a dichos medios de selección (SEL) para controlar dicha selección según dicha señal de ancho de banda compartido.
27. Una memoria intermedia inteligente en una red de comunicaciones para compartir ancho de banda disponible en un enlace común (L) entre una pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16) que son transmitidos a través de dicho enlace común (L), incluyendo dicha memoria intermedia inteligente unos medios de decisión para decidir si se acepta o se descarta un paquete de datos entrante de uno de dicha pluralidad de flujos de datos (C1, C2,..., C8, C9,..., C16), dispuestos en al menos una entrada de dicha memoria intermedia inteligente, y para proporcionar así, en caso de que se acepte dicho paquete de datos entrante, un paquete de datos aceptado, estando acoplados unos medios de memoria intermedia a dichos medios de decisión para almacenar dicho paquete de datos aceptado y para transmitir dicho paquete de datos aceptado por dicho enlace común (L), caracterizada porque dicha memoria intermedia inteligente incluye además un procesador (P) según una cualquiera de las reivindicaciones 20, 21 y 22, estando acoplado dicho procesador (P) a dichos medios de decisión para controlar dicha decisión según dicha señal de ancho de banda compartido.
28. Un sistema de telecomunicaciones caracterizado porque el mismo incluye al menos un procesador (P) según la reivindicación 20.
ES99401811T 1998-07-31 1999-07-19 Metodo, planificador, memoria intermedia inteligente, procesador y sistema de telecomunicaciones para compartir un ancho de banda disponible. Expired - Lifetime ES2235449T3 (es)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP98401959 1998-07-31
EP98401959 1998-07-31
EP99401811A EP0977405B1 (en) 1998-07-31 1999-07-19 Method, scheduler, intelligent buffer, processor and telecommunications system for sharing available bandwidth

Publications (1)

Publication Number Publication Date
ES2235449T3 true ES2235449T3 (es) 2005-07-01

Family

ID=26151678

Family Applications (1)

Application Number Title Priority Date Filing Date
ES99401811T Expired - Lifetime ES2235449T3 (es) 1998-07-31 1999-07-19 Metodo, planificador, memoria intermedia inteligente, procesador y sistema de telecomunicaciones para compartir un ancho de banda disponible.

Country Status (8)

Country Link
US (1) US6469982B1 (es)
EP (1) EP0977405B1 (es)
JP (1) JP4394203B2 (es)
AT (1) ATE290743T1 (es)
AU (1) AU763664B2 (es)
CA (1) CA2279083A1 (es)
DE (1) DE69924057T2 (es)
ES (1) ES2235449T3 (es)

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6544379B2 (en) * 1993-09-16 2003-04-08 Hitachi, Ltd. Method of holding substrate and substrate holding system
US6862295B1 (en) * 1999-07-07 2005-03-01 Nortel Networks Limited Asynchronous scheduler
US6891834B1 (en) * 1999-09-09 2005-05-10 Avici Systems Apparatus and method for packet scheduling
US7072295B1 (en) * 1999-09-15 2006-07-04 Tellabs Operations, Inc. Allocating network bandwidth
US6721789B1 (en) * 1999-10-06 2004-04-13 Sun Microsystems, Inc. Scheduling storage accesses for rate-guaranteed and non-rate-guaranteed requests
US6795865B1 (en) * 1999-10-08 2004-09-21 Microsoft Corporation Adaptively changing weights for fair scheduling in broadcast environments
US6988144B1 (en) * 1999-11-18 2006-01-17 International Business Machines Corporation Packet scheduling system and method for multimedia data
US6654384B1 (en) 1999-12-30 2003-11-25 Aperto Networks, Inc. Integrated self-optimizing multi-parameter and multi-variable point to multipoint communication system
US7366133B1 (en) * 1999-12-30 2008-04-29 Aperto Networks, Inc. Integrated, self-optimizing, multi-parameter/multi-variable point-to-multipoint communication system [II]
US6940861B2 (en) 2000-03-14 2005-09-06 General Instrument Corporation Data rate limiting
US7215678B1 (en) * 2000-04-10 2007-05-08 Switchcore, A.B. Method and apparatus for distribution of bandwidth in a switch
AU2001268384A1 (en) * 2000-06-19 2002-01-02 Vitesse Semiconductor Corporation Digital network bandwidth allocation method and apparatus
JP2002026916A (ja) * 2000-07-10 2002-01-25 Fujitsu Ltd トラヒック制御装置
US6842463B1 (en) * 2000-07-14 2005-01-11 Nortel Networks Limited Automated and adaptive management of bandwidth capacity in telecommunications networks
US6980511B1 (en) * 2000-07-26 2005-12-27 Santera Systems Inc. Method of active dynamic resource assignment in a telecommunications network
US6775701B1 (en) * 2000-08-15 2004-08-10 Nortel Networks Limited Oversubscribing network resources
DE60037317T2 (de) * 2000-10-05 2008-11-27 Alcatel Lucent Verfahren zur gemeinsamen Benutzung von Überschussbandbreite zwischen Ausgangs- und Eingangsmodulen von einem Vermittlungsnetzwerk
US6636488B1 (en) 2000-10-11 2003-10-21 Aperto Networks, Inc. Automatic retransmission and error recovery for packet oriented point-to-multipoint communication
FR2818843B1 (fr) * 2000-12-21 2005-05-06 Eads Airbus Sa Dispositif et procede de controle de flux dans un reseau commute
DE60008265T2 (de) * 2000-12-28 2004-07-22 Alcatel Methode zur Bandbreitenzuteilung für Netzwerkendgeräte in einem Kommunikationsnetzwerk mit einen Medienzugriffssteuerungsgerät zur Ausführung dieser Methode
US7623496B2 (en) * 2001-04-24 2009-11-24 Intel Corporation Managing bandwidth in network supporting variable bit rate
US7006438B2 (en) * 2001-05-31 2006-02-28 Turin Networks Distributed control of data flow in a network switch
US7245635B2 (en) * 2001-06-01 2007-07-17 Fujitsu Limited System and method for resizing the physical link bandwidth based on utilization thereof
FR2829648B1 (fr) * 2001-09-13 2004-02-13 6Wind Procede d'ordonnancement de la transmission de la transmission des donnees informatiques entre differentes interfaces de communication
US6980513B2 (en) * 2001-09-24 2005-12-27 Transwitch Corporation Methods and apparatus for the fair allocation of bandwidth among MCR and best effort service connections in an ATM switch
JP2003124956A (ja) * 2001-10-10 2003-04-25 Sony Corp 通信制御方法及びネットワークシステム
US7317683B2 (en) * 2001-11-01 2008-01-08 International Business Machines Corporation Weighted fair queue serving plural output ports
US6982986B2 (en) * 2001-11-01 2006-01-03 International Business Machines Corporation QoS scheduler and method for implementing quality of service anticipating the end of a chain of flows
US7046676B2 (en) * 2001-11-01 2006-05-16 International Business Machines Corporation QoS scheduler and method for implementing quality of service with cached status array
US7310345B2 (en) * 2001-11-01 2007-12-18 International Business Machines Corporation Empty indicators for weighted fair queues
US6973036B2 (en) * 2001-11-01 2005-12-06 International Business Machines Corporation QoS scheduler and method for implementing peak service distance using next peak service time violated indication
US7280474B2 (en) * 2001-11-01 2007-10-09 International Business Machines Corporation Weighted fair queue having adjustable scaling factor
US7103051B2 (en) * 2001-11-01 2006-09-05 International Business Machines Corporation QoS scheduler and method for implementing quality of service with aging time stamps
US6917812B2 (en) * 2001-12-03 2005-07-12 Telefonaktiebolaget Lm Ericsson (Publ) Air interface scheduler for wireless communication networks
ES2197794B1 (es) * 2002-01-18 2005-03-16 Diseño De Sistemas En Silicio, S.A Procedimiento de transmision de datos para un sistema multiusuario de transmision digital de datos punto a multipunto.
US7266612B1 (en) * 2002-02-14 2007-09-04 At&T Corp. Network having overload control using deterministic early active drops
US6842807B2 (en) * 2002-02-15 2005-01-11 Intel Corporation Method and apparatus for deprioritizing a high priority client
US7257124B2 (en) * 2002-03-20 2007-08-14 International Business Machines Corporation Method and apparatus for improving the fairness of new attaches to a weighted fair queue in a quality of service (QoS) scheduler
US7680043B2 (en) 2002-03-20 2010-03-16 International Business Machines Corporation Network processor having fast flow queue disable process
DE10216283A1 (de) * 2002-04-12 2003-11-06 Siemens Ag Verfahren zu gemeinsamen Kontrolle der Bandbreiten einer Gruppe von einzelnen Informationsflüssen
US7260063B2 (en) 2002-10-02 2007-08-21 Ericsson Ab Frame relay frame shaping per DLCI
US7336662B2 (en) 2002-10-25 2008-02-26 Alcatel Lucent System and method for implementing GFR service in an access node's ATM switch fabric
JP2006508614A (ja) * 2002-11-27 2006-03-09 アールジービー・ネットワークス・インコーポレイテッド データパケットの動的なチャネルマッピング及び最適スケジューリングのための装置及び方法
JP4208710B2 (ja) * 2003-12-24 2009-01-14 富士通株式会社 フレーム伝送装置
US7817640B2 (en) * 2003-12-31 2010-10-19 Florida State University Fair round robin scheduler for network systems
JP2005198204A (ja) * 2004-01-09 2005-07-21 Pioneer Electronic Corp 情報配信表示システムおよび情報配信表示方法
US7876763B2 (en) * 2004-08-05 2011-01-25 Cisco Technology, Inc. Pipeline scheduler including a hierarchy of schedulers and multiple scheduling lanes
US8289972B2 (en) 2004-11-10 2012-10-16 Alcatel Lucent Gigabit passive optical network strict priority weighted round robin scheduling mechanism
US8320240B2 (en) * 2004-11-30 2012-11-27 Broadcom Corporation Rate limiting and minimum and maximum shaping in a network device
US20060168123A1 (en) * 2004-12-14 2006-07-27 Alcatel Queue and load for wireless hotspots
US20060256723A1 (en) * 2005-05-16 2006-11-16 Hellenthal Jan W Scheduling incoming packet traffic on an output link of a network device associated with a data network
US8730982B2 (en) * 2005-11-10 2014-05-20 Broadcom Corporation Scheduling of data transmission with minimum and maximum shaping of flows in a network device
US20070165647A1 (en) * 2006-01-19 2007-07-19 Tellabs Operations, Inc. Apparatus, method, and computer program for data packet scheduling
US20070183320A1 (en) * 2006-02-08 2007-08-09 Chen Jian F Deficit fair priority queuing
CN101589586B (zh) * 2007-01-22 2013-01-02 皇家飞利浦电子股份有限公司 在wlan中重新计算带宽占用时间配额以用尽带宽
US8040916B2 (en) * 2007-03-14 2011-10-18 Cisco Technology, Inc. Admission control for virtualized services in routers
US20090103438A1 (en) * 2007-10-19 2009-04-23 Aricent Inc. Grant Based Adaptive Media Access Control Scheduling
US7995597B2 (en) * 2008-10-14 2011-08-09 Nortel Networks Limited Method and system for weighted fair queuing
EP2187580B1 (en) * 2008-11-18 2013-01-16 Alcatel Lucent Method for scheduling packets of a plurality of flows and system for carrying out the method
US8570916B1 (en) * 2009-09-23 2013-10-29 Nvidia Corporation Just in time distributed transaction crediting
US8150808B2 (en) 2009-10-21 2012-04-03 Delphix Corp. Virtual database system
US9106591B2 (en) * 2009-12-24 2015-08-11 Delphix Corporation Adaptive resource management using survival minimum resources for low priority consumers
US8881212B2 (en) * 2009-12-28 2014-11-04 Verizon Patent And Licensing Inc. Home network management
US8584187B2 (en) * 2010-03-26 2013-11-12 Verizon Patent And Licensing Inc. Bandwidth management
US8930602B2 (en) * 2011-08-31 2015-01-06 Intel Corporation Providing adaptive bandwidth allocation for a fixed priority arbiter
US9021156B2 (en) 2011-08-31 2015-04-28 Prashanth Nimmala Integrating intellectual property (IP) blocks into a processor
US8874976B2 (en) 2011-09-29 2014-10-28 Intel Corporation Providing error handling support to legacy devices
US8711875B2 (en) 2011-09-29 2014-04-29 Intel Corporation Aggregating completion messages in a sideband interface
US8775700B2 (en) 2011-09-29 2014-07-08 Intel Corporation Issuing requests to a fabric
US8929373B2 (en) 2011-09-29 2015-01-06 Intel Corporation Sending packets with expanded headers
US8805926B2 (en) 2011-09-29 2014-08-12 Intel Corporation Common idle state, active state and credit management for an interface
US8713234B2 (en) 2011-09-29 2014-04-29 Intel Corporation Supporting multiple channels of a single interface
US8713240B2 (en) 2011-09-29 2014-04-29 Intel Corporation Providing multiple decode options for a system-on-chip (SoC) fabric
CA2855461C (en) 2011-11-10 2022-11-15 Adaptive Spectrum And Signal Alignment, Inc. Method, apparatus, and system for optimizing performance of a communication unit by a remote server
US9053251B2 (en) 2011-11-29 2015-06-09 Intel Corporation Providing a sideband message interface for system on a chip (SoC)
US9847944B2 (en) 2011-12-05 2017-12-19 Peter Chow Systems and methods for traffic load balancing on multiple WAN backhauls and multiple distinct LAN networks
CA3034504C (en) 2011-12-05 2021-09-07 Adaptive Spectrum And Signal Alignment, Inc. Systems and methods for traffic aggregation on multiple wan backhauls and multiple distinct lan networks
US9900903B1 (en) * 2014-01-13 2018-02-20 Marvell Israel (M.I.S.L) Ltd. Weighted periodic scheduling of a shared resource
WO2016089414A1 (en) 2014-12-04 2016-06-09 Adaptive Spectrum And Signal Alignment, Inc Method and apparatus for predicting successful dsl line optimization
US11567885B2 (en) * 2016-05-12 2023-01-31 Lg Electronics Inc. System and method for optimizing DRAM bus switching using LLC
US10911261B2 (en) 2016-12-19 2021-02-02 Intel Corporation Method, apparatus and system for hierarchical network on chip routing
US10846126B2 (en) 2016-12-28 2020-11-24 Intel Corporation Method, apparatus and system for handling non-posted memory write transactions in a fabric
US11416821B1 (en) * 2022-01-24 2022-08-16 My Job Matcher, Inc. Apparatuses and methods for determining and processing dormant user data in a job resume immutable sequential listing

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2268372B (en) * 1992-06-11 1995-11-01 Roke Manor Research Improvements in or relating to data transmission systems
JP3211833B2 (ja) * 1993-07-21 2001-09-25 富士通株式会社 Atm交換機
EP0712220A1 (en) * 1994-11-08 1996-05-15 International Business Machines Corporation Hop-by-hop flow control in an ATM network
US5946297A (en) * 1996-05-31 1999-08-31 International Business Machines Corporation Scheduling method and apparatus for supporting ATM connections having a guaranteed minimun bandwidth
US5949758A (en) * 1996-06-27 1999-09-07 International Business Machines Corporation Bandwidth reservation for multiple file transfer in a high speed communication network
US5850398A (en) * 1996-12-30 1998-12-15 Hyundai Electronics America Method of scheduling data cell transmission in an ATM network

Also Published As

Publication number Publication date
AU4241099A (en) 2000-02-24
JP2000151690A (ja) 2000-05-30
JP4394203B2 (ja) 2010-01-06
EP0977405A1 (en) 2000-02-02
AU763664B2 (en) 2003-07-31
CA2279083A1 (en) 2000-01-31
US6469982B1 (en) 2002-10-22
EP0977405B1 (en) 2005-03-09
ATE290743T1 (de) 2005-03-15
DE69924057T2 (de) 2006-04-13
DE69924057D1 (de) 2005-04-14

Similar Documents

Publication Publication Date Title
ES2235449T3 (es) Metodo, planificador, memoria intermedia inteligente, procesador y sistema de telecomunicaciones para compartir un ancho de banda disponible.
US7616567B2 (en) Shaping apparatus, communication node and flow control method for controlling bandwidth of variable length frames
US7292580B2 (en) Method and system for guaranteeing quality of service in a multi-plane cell switch
EP0986221B1 (en) Port scheduler and method for scheduling service providing guarantees and hierarchical rate limiting with or without overbooking capability
US8730982B2 (en) Scheduling of data transmission with minimum and maximum shaping of flows in a network device
US6542507B1 (en) Input buffering/output control for a digital traffic switch
US6483839B1 (en) Apparatus and method for scheduling multiple and simultaneous traffic in guaranteed frame rate in ATM communication system
US9350674B2 (en) Hierarchical rate color marker
JP6036310B2 (ja) パケット交換装置、伝送装置、及びパケットスケジューリング方法
US6385168B1 (en) Fair share bandwidth allocation algorithm and device
JPH10215257A (ja) パケット交換通信システム
US7522622B2 (en) Dynamic color threshold in a queue
CA2462793C (en) Distributed transmission of traffic streams in communication networks
CN100505688C (zh) 一种用于网络处理器的差额权重排队调度装置及调度方法
CN107113251A (zh) 使用传送网的动态带宽调度
JP2003533107A (ja) スイッチ内でパケット待ち行列を管理するための方法および装置
AU725162B2 (en) Data stream shaping
US6330222B1 (en) Traffic control apparatus and traffic control method used in exchange
JPH09153906A (ja) 伝送ビットレートを非同期転送モードで動作するデータマルチプレクス装置において使用可能なビットレート容量に整合させる方法および装置
EP2063580B1 (en) Low complexity scheduler with generalized processor sharing GPS like scheduling performance
JPH1117690A (ja) Wrr方式におけるベストエフォートサービスのトラ ヒック制御方式
JP3813700B2 (ja) パケットの時間多重連続フロー成形方法
WO2001080504A1 (en) Packet switch including usage monitor and scheduler
Zhou et al. Traffic control in high-speed ATM networks
JP2021135653A (ja) 改札制御装置及びプログラム