ES2336964T3 - Sistema para el control de velocidad de servicios de comunicacion de velocidad aregada. - Google Patents
Sistema para el control de velocidad de servicios de comunicacion de velocidad aregada. Download PDFInfo
- Publication number
- ES2336964T3 ES2336964T3 ES07785378T ES07785378T ES2336964T3 ES 2336964 T3 ES2336964 T3 ES 2336964T3 ES 07785378 T ES07785378 T ES 07785378T ES 07785378 T ES07785378 T ES 07785378T ES 2336964 T3 ES2336964 T3 ES 2336964T3
- Authority
- ES
- Spain
- Prior art keywords
- speed
- ports
- port
- input
- group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004891 communication Methods 0.000 title claims abstract description 20
- 238000000034 method Methods 0.000 claims abstract description 37
- 230000005540 biological transmission Effects 0.000 claims abstract description 8
- 230000002776 aggregation Effects 0.000 claims description 64
- 238000004220 aggregation Methods 0.000 claims description 64
- 238000004422 calculation algorithm Methods 0.000 claims description 26
- 238000005192 partition Methods 0.000 claims description 5
- 230000001133 acceleration Effects 0.000 claims 1
- 239000000956 alloy Substances 0.000 claims 1
- 229910045601 alloy Inorganic materials 0.000 claims 1
- 230000001934 delay Effects 0.000 claims 1
- 238000004364 calculation method Methods 0.000 description 5
- 230000003111 delayed effect Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000001010 compromised effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002040 relaxant effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/13—Flow control; Congestion control in a LAN segment, e.g. ring or bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/20—Traffic policing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/26—Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
- H04L47/263—Rate modification at the source after receiving feedback
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
- Mobile Radio Communication Systems (AREA)
- Channel Selection Circuits, Automatic Tuning Circuits (AREA)
Abstract
Un método de control de velocidad de transmisión de servicios de comunicación de velocidad agregada, que es aplicado a un grupo n de puertos en una red de comunicación, y caracterizado porque comprende las operaciones de: obtener, por cada puerto, información de velocidad de entrada de cada uno del grupo de n puertos; hacer crecer, por cada puerto, la velocidad permitida asignando un valor a la velocidad permitida que es mayor que el valor corriente de una velocidad de entrada, si la suma de las velocidades de entrada de los n puertos, s, es menor que un umbral de velocidad dado, G; y ajustar por cada puerto, la velocidad permitida, si la suma de las velocidades de entrada de los n puertos, s, es mayor o igual al umbral de velocidad dado, G, de tal modo que la suma de velocidades permitidas de los n puertos sea igual al umbral G de velocidad dado.
Description
Sistema para el control de velocidad de
servicios de comunicación de velocidad agregada.
El presente invento se refiere en general a
comunicaciones de red, y más particularmente, a un sistema versátil
para el control de velocidad de transmisión de servicios de
comunicación de velocidad de transmisión agregada.
\vskip1.000000\baselineskip
Ethernet es una de las tecnologías de Red de
Área Local (LAN) más ampliamente instaladas. Los usuarios son
atraídos por un número de ventajas de los servicios de Ethernet,
incluyendo la facilidad de uso, la efectividad de coste, la
flexibilidad, y un amplio rango de opciones de servicio, etc. Los
servicios de Ethernet han sido extendidos a áreas metropolitanas y
más allá.
Los servicios de Ethernet pueden variar de
muchas maneras. El Forum Metropolitano de Ethernet (MEF) define dos
tipos de servicios de Ethernet: servicios de E-line,
que son servicios de punto a punto; y servicios de
E-LAN, que son servicios multipunto tales que cada
instancia de servicio comparte el uso de una red física subyacente
común. El MEF especifica servicios de E-LAN de capa
1 y capa 2 distintos. Un servicio de E-LAN de capa
1 es llamado un servicio LAN de Ethernet (ELAN), y un servicio de
E-LAN de capa 2 es llamado un servicio de LAN
Virtual de Ethernet (EVLAN). El EVLAN permite a los usuarios
intercambiar tramas como si estuvieran conectados a una LAN de
medio compartido.
Dos métodos corrientemente usados para
especificar garantías de velocidad para servicios EVLAN son una
garantía puerto o puerto y una garantía por puerto. La garantía
puerto a puerto especifica un ancho de banda distinto garantizado
para el tráfico desde un puerto específico a otro puerto específico.
Esta es una garantía tradicional proporcionada en servicios de
retransmisión de tramas y de línea privada. Este método puede ser
más eficiente cuando la velocidad del tráfico de puerto a puerto es
relativamente constante.
La garantía por puerto especifica un ancho de
banda distinto garantizado para el tráfico que se origina desde
cada puerto, sin relación con los puertos de destino. Este tipo de
garantía es relativamente fácil de vigilar ya que solamente se
requiere el conocimiento del tráfico de entrada al puerto local.
El documento US 2006/0098672 describe un método
de hacer respetar la prioridad del tráfico comprometido sobre el
tráfico en exceso. Los mensajes de control de cola son generados y
trasmitidos a otras tarjetas de línea. Cuando el nivel de una cola
excede de un umbral y el control de flujo es recibido para el
destino correspondiente la cola comienza a abandonar el exceso de
tráfico y los mensajes que indican el estado de la cola son enviados
a otras tarjetas de línea. Cuando una tarjeta de enlace recibe un
mensaje de control de cola de que otra tarjeta de línea ha
comenzado a abandonar el exceso de tráfico a un destino específico,
también comienza a abandonar el exceso de tráfico a ese destino
también.
\vskip1.000000\baselineskip
El presente invento proporciona un método de
control de velocidad para un grupo de puertos en una red de
comunicación. La información de velocidad de entrada de cada uno
del grupo de n puertos es obtenida, el crecimiento es realizado
para la velocidad permitida de cada uno del grupo de puertos, si la
suma de las velocidades de entrada del grupo de puertos, es menor
que un umbral de velocidad dado; y el ajuste es realizado para la
velocidad permitida de cada uno del grupo de puertos, si la suma de
las velocidades de entrada del grupo de puertos es mayor o igual
que el umbral de velocidad dado, de tal modo que la suma de
velocidades permitidas del grupo de puertos es igual al umbral de
velocidad dado.
En una realización, para un grupo de puertos que
comparten una velocidad garantizada, cada uno de los puertos
obtiene información de la velocidad de entrada de la totalidad del
grupo de puertos; aumenta su velocidad permitida, si la suma de
las velocidades de entrada de todos los puertos es menor que la
velocidad garantizada; y ajusta su velocidad permitida, si la suma
de las velocidades de entrada de todos los puertos es mayor o igual
que la velocidad garantizada, de tal modo que la suma de las
velocidades de entrada de todos los puertos es menor o igual que la
velocidad garantizada. El presente invento proporciona además otras
realizaciones que ponen en práctica el sistema de control de
velocidad resumido anteriormente.
La siguiente descripción y dibujos explican en
detalle varias realizaciones ilustrativas del invento. Estas
realizaciones son indicativas de unas pocas de las distintas maneras
en las que el invento puede ser utilizado.
\vskip1.000000\baselineskip
\global\parskip0.930000\baselineskip
Para una comprensión más completa de la presente
exposición y sus ventajas, se ha hecho ahora referencia a la
siguiente descripción tomada en unión con los dibujos adjuntos, en
los que números de referencia similares representan partes
similares:
La fig. 1 ilustra un modelo de servicio de
velocidad agregado de acuerdo con el presente invento;
La fig. 2 ilustra el comportamiento de un
algoritmo de control de velocidad de acuerdo con el presente
invento;
La fig. 3 ilustra la operación de un algoritmo
de control de velocidad de acuerdo con el presente invento;
La fig. 4 ilustra el ancho de banda usado en un
caso "ideal" donde las velocidades ofrecidas de los puertos
cambian de una manera idéntica (al mismo tiempo), y toda la latencia
de comunicación en la misma de acuerdo con el presente invento;
La fig. 5 ilustra las capacidades de un
proveedor de servicios que proporciona márgenes de capacidad de
acuerdo con el presente invento.
La siguiente descripción es presentada para
permitir que un experto en la técnica haga uso del invento. Los
principios generales descritos aquí pueden ser aplicados a
realizaciones y aplicaciones distintas de las detalladas más abajo
sin salir del espíritu y marco del presente invento como se ha
definido aquí. El presente invento no está destinado a ser limitado
a las realizaciones mostradas, sino que ha de ser acordado el marco
más amplio consistente con los principios y características
descritos aquí.
Los siguientes términos son usados en la
descripción del presente invento a continuación:
Ajuste: Un método de asignación de velocidad
permitida usado cuando la suma de las velocidades de entrada
medidas es suficientemente elevada de lo que el crecimiento
continuada de velocidades podría dar como resultado al agotamiento
de la capacidad asociada con el grupo de agregación.
Grupo de agregación: El conjunto de puertos que
comparten una velocidad garantizada.
Entrada: La dirección desde un usuario de un
servicio a un proveedor del servicio.
Puerto: La interconexión por la que un usuario
accede a los servicios de una red de proveedores de servicios.
Ejemplos son un puerto de Puente de Borde de Proveedor (PEB) 802.1ad
o una interconexión de Red de Usuarios (Uni) del Forum
Metropolitano de Ethernet (MEF).
Puerto "voraz": Un puerto cuya velocidad de
entrada es reducida cuando a) la suma corriente de velocidades de
entrada es mayor que la permitida; y b) la estrategia para reducir
velocidades es reducir la velocidad permitida del puerto (o
puertos) con la velocidad de entrada corriente más elevada.
Puerto no "voraz": Un puerto que no es
"voraz".
Puerto local: Un término usado en algunas
descripciones para hacer referencia a un puerto particular, del
conjunto de puertos en un grupo de agregación. Por ejemplo, de un
puerto local puede decirse que "un valor de velocidad recibido es
guardado en una agrupación R mantenida por el puerto local".
Red de Proveedores de Servicios (SPN): Una red
que ofrece servicios de conectividad a los clientes, por ejemplo
una Red Puenteada de Proveedor (PBN) 802,1ad o un Foro Metropolitano
de Ethernet (MEN).
Crecimiento: Un método de asignación de
velocidad permitida en el que la velocidad permitida es asignada a
un valor que es mayor que el valor corriente de una velocidad de
entrada medida.
Mensaje de Velocidad: Un mensaje distribuido
periódicamente desde un puerto asociado con un grupo de agregación,
a todos los otros puertos asociados con ese grupo de agregación, que
lleva el valor de la velocidad de entrada medida (y posiblemente
alisado o filtrado) por ese puerto.
Instancia de servicio: Una instancia del
servicio de conectividad ofrecida por una Red de Proveedores de
Servicios. La conectividad es permitida solamente entre puertos
asociados con la misma instancia de servicio. Ejemplos son una Red
de Área Local Virtual de Servicio (SVLAN) 802,1ad o una Conexión
Virtual de Ethernet (EVC) de MEF.
La notación usada en el presente invento ha sido
descrita a continuación. Por conveniencia de notación, el símbolo
\sum representa \sum\limits^{n}_{i=0} a menos que se
especifique de otro modo. I(i,t) indica el valor de I
asociado con el puerto i al final del intervalo de tiempo t.
\global\parskip1.000000\baselineskip
Otros identificadores son como sigue:
A_{i} (velocidad permitida): La velocidad
máxima a la que el tráfico desde un usuario es admitido a una red
de proveedores de servicios en el puerto i de un grupo de
agregación. I_{i} siempre \leq A_{i}. O_{i} > A_{i}
implica que l_{i} = A_{i}.
B: La cantidad mínima por la que el valor de
A_{i} para el siguiente intervalo de tiempo debería exceder del
valor corriente de I_{i} cuando se realiza el crecimiento de
velocidades permitidas.
C (capacidad comprometida): Capacidad
comprometida por un proveedor de servicios para usar por un grupo de
agregación en un enlace dentro de una Red de Proveedores de
Servicios. Un compromiso de capacidad asegura que una garantía de
servicio especificada es satisfecha en todos los instantes. El
proveedor de servicios puede comprometer menos ancho de banda que
C, y asumir un riesgo de que la garantía no será satisfecha en
todos los
instantes.
instantes.
d_{ij} (retraso): Período de tiempo, medido en
segundos, que comienza cuando un puerto i ha medido su velocidad de
entrada I_{i} para el intervalo de tiempo más reciente, y que
termina cuando un puerto j hace referencia al valor R_{i}
correspondiente al calcular S.
D (retraso): El valor máximo de d_{ij} sobre
todos los pares de puertos (i,j) en un grupo de agregación.
F (suma de velocidades ofrecidas): La suma de
los valores de velocidad (O_{i}) ofrecida sobre todos los puertos
i.
G (velocidad garantizada): Un valor
aprovisionado de tal modo que \sumI_{i} \geq G cuando las
velocidades de entrada han alcanzado un estado estacionario. Es una
velocidad agregado garantizada para un grupo de agregación.
I_{i} (velocidad de entrada): Velocidad real
(medida) de tráfico introducido por el puerto i de un grupo de
agregación. La velocidad puede ser filtrada por un filtro pasa bajos
o alisada para conseguir estabilidad.
M_{low} (margen bajo): Un valor destinado a
proporcionar un margen o cojín para asegurar que S \geq G después
de la restricción de velocidad.
M_{high} (margen alto): Un valor destinado a
proporcionar un margen o cojín para asegurar que el compromiso de
capacidad del proveedor de servicios excede del requisito de
capacidad calculada.
O_{i} (velocidad ofrecida): Una velocidad de
tráfico presentada por un usuario a un proveedor de servicios en el
puerto i de un grupo de agregación.
n (número de puertos): Número de puertos
asociado con un grupo de agregación.
Q: Número de puertos en un grupo de agregación
para los que Ri excede de una velocidad permitida X máxima
calculada.
R_{i}: Valor de I_{i} más recientemente
recibido por un puerto local en un mensaje de velocidad desde el
puerto i. R_{i} tiene asignado el valor corriente de
I_{local}.
S: La suma de R_{i} sobre todos los puertos i
en un grupo de agregación.
S_{max}: El valor máximo alcanzado por S.
t: Un cómputo del número de intervalos de tiempo
transcurridos de duración T.
T: Un intervalo de tiempo fijo entre
transmisiones de un valor de I_{i} por puerto i de un grupo de
agregación. Un nuevo cálculo de la velocidad permitida es también
realizado en este límite de tiempo.
X: El mayor valor de A_{i} que puede ser
asignado a cualquier puerto i en un grupo de agregación después de
un ajuste de velocidad.
\vskip1.000000\baselineskip
Con referencia ahora a la fig. 1, se ha
ilustrado un ejemplo de un modelo (100) de servicio de velocidad
agregada. Una red (110) de proveedor de servicios ofrece servicios
de comunicación de velocidad agregada a un cliente (120). El
cliente (120) está asociado con 7 puertos, puerto (131)-(137), para
acceder a la Red (110) de Proveedores de Servicios. Los 7 puertos
comparten una velocidad garantizada G, formando un grupo de
agregación. Pueden usarse algoritmos de control de velocidad para
controlar la velocidad de entrada de cada puerto dentro del grupo
de agregación para asegurarse de qué un servicio de velocidad
agregada proporcionado por la Red (110) de Proveedores de Servicios
cumple con un Acuerdo del Nivel de Servicios (SLA). La red (110) de
proveedores de servicios, puede tener una topología arbitraria. Los
puertos en un grupo de agregación comparten capacidad del grupo de
agregación
equitativamente.
equitativamente.
Un servicio de velocidad agregada puede ser
caracterizado por una velocidad garantizada, G, una cantidad de
incremento de velocidad, B, permitida durante cada intervalo de
tiempo t, y la duración del intervalo de tiempo, T. Un SLA puede
especificar que el modelo de servicio de velocidad agregada
garantiza que:
- 1)
- la velocidad de entrada total, \sumI_{i}, es mayor o igual que G, o,
- 2)
- cualquier puerto que tiene una velocidad ofrecida, O_{i}, mayor o igual a la velocidad de entrada corriente, I_{i}, puede aumentar su velocidad de entrada en al menos B durante el siguiente intervalo de tiempo, t.
\vskip1.000000\baselineskip
En una realización, cada puerto mide I_{i}
durante el intervalo de tiempo corriente t. A la terminación del
intervalo de tiempo t, un puerto i, tal como el puerto (131),
distribuye un mensaje de velocidad que, que contiene el valor
I_{i} de velocidad de entrada medido (y posiblemente alisado y/o
filtrado), junto con la identidad del puerto, i. El mensaje de
velocidad puede ser distribuido por medio de retransmisión,
multidifusión y unidifusión.
Un puerto asociado con un grupo de agregación
que comprende n puertos recibe mensajes de velocidad originados por
cada uno de los otros puertos dentro del grupo de agregación. El
retraso de tiempo entre el envío de un mensaje de velocidad por un
puerto i y la recepción de ese mensaje en otro puerto j es como
máximo de D segundos. Un puerto j, tal como el puerto (137),
mantiene una agrupación R de n elementos que contienen los valores
de velocidades recibidos más recientemente recibidos desde los otros
n-1 puertos. Un puerto, por ejemplo el puerto j
(137) no se envía mensajes de velocidad a sí mismo. En vez de ello,
el elemento j de la agrupación R en el puerto j (137) contiene la
velocidad de entrada más reciente medida en el puerto j. Cuando se
hace referencia a un puerto particular como el puerto j (137), el
puerto puede ser llamado un puerto local. Un puerto local puede
determinar por sí mismo una velocidad permitida para el siguiente
intervalo de tiempo usando una velocidad de entrada medida en el
puerto local y una información de velocidad recibida desde otros
puertos de un grupo de agregación. La velocidad permitida y la
velocidad de entrada de un puerto local pueden ser representadas
por A_{local} e I_{local} respectivamente.
Recibiendo mensajes de velocidad distribuidos
por todos los demás puertos del grupo de agregación, cada puerto
puede obtener una información de velocidad de entrada de todos los
demás puertos, y usar métodos de control de velocidad para
controlar su velocidad permitida para el siguiente intervalo de
tiempo. La suma de las velocidades de entrada más recientemente
recibidas es calculada al final de cada intervalo de tiempo, t, y en
cada puerto, i, del grupo de agregación, como:
S =
\sumR_{i}
Después del cálculo de S al final de un
intervalo t, es calculado A_{local}. Por ello, cada puerto dentro
de un grupo de agregación, recibe información de velocidad de
entrada desde todos los otros puertos dentro del grupo de
agregación mediante mensajes de velocidad, y luego calcula una
velocidad permitida. Puede usarse uno de los métodos de cálculo,
dependiendo de los valores relativos de S y G.
Si (S<G), entonces es realizado el
crecimiento; de otro modo, si (S\geqG), es realizado el
ajuste.
En una realización, el valor de A_{local} para
el siguiente intervalo de tiempo, t, puede ser calculado en dos
etapas en el caso de crecimiento. La primera etapa es:
A_{local} = I_{local} +
B.
Es decir, un puerto, i, que envía la velocidad
I_{i} durante el intervalo de tiempo t, puede ser restringido por
A_{i} = I_{i} + B durante el intervalo de tiempo t+1. B puede
ser definido en un Acuerdo de Nivel de Servicio. En ausencia de
retraso, este método de crecimiento asegura que (\sumI_{i} <
G + nB) para el intervalo de tiempo t+1, ya que \sumI_{i} <
G en el intervalo de tiempo t, y cada uno de los n puertos puede
aumentar sus velocidades de entrada en no más de B.
La segunda etapa es:
(S+nB) es el mayor valor que S puede alcanzar en
el siguiente intervalo de tiempo. Si este valor es menor que G, A
puede ser además incrementado por (G-(S+nB))/(nD), sin peligro de
que el tráfico exceda de C durante el siguiente retraso D.
Una realización alternativa de crecimiento en el
presente invento omite la segunda etapa de crecimiento. En este
caso, la velocidad permitida en cada puerto es incrementada en una
cantidad fija B por intervalo de tiempo t, sin relación a la
capacidad adicional que puede estar disponible. Esta técnica es
llamada crecimiento "lineal" para distinguirla de crecimiento
"acelerado", que incluye tanto la primera como la segunda
etapas de crecimiento. El crecimiento lineal converge más
lentamente a velocidades máximas que el crecimiento acelerada. La
validación del servicio es, sin embargo, simplificada, ya que el
incremento de velocidad esperado durante períodos de crecimiento es
constante.
En el caso de ajuste, una realización es
calcular un valor máximo de velocidad permitida X de tal modo
que
G = \sumR_{i}(para
R_{i}<X) + \sumX(para
R_{i}\geqX)
La expresión "\sumX(para
R_{i}\geqX)" anterior tiene el mismo significado que
"Q*X", donde Q es el número de puertos en un grupo de
agregación que tiene la propiedad de que I_{i}\geqX.
Si el valor de X ha sido determinado,
entonces
A_{local} =
MIN(I_{local}, X) +
B.
Una realización de un método para calcular X
clasifica los elementos R1 a Rn de una agrupación R en orden
descendente (R1 es el mayor); donde la agrupación R consiste de
R_{i} de todos los n puertos dentro de un grupo de agregación.
Entonces se progresa en la agrupación R desde el mayor al menor
elemento. En cada operación, todos los elementos que tienen valores
de velocidad mayores que un elemento corriente (es decir, elementos
que tienen un valor de índice menor en la agrupación) son
sustituidos por el valor del elemento corriente. El progreso es
interrumpido cuando la suma de todos los elementos en una agrupación
R es menor o igual que la velocidad agregada G. cuando esto ocurre,
los elementos con índices menores que el índice corriente
representan puertos "voraces" cuyas velocidades permitidas son
reducidas.
La anterior realización de algoritmo puede ser
puesta en práctica usando un seudo-código con las
siguientes formas:
\vskip1.000000\baselineskip
Las velocidades en los elementos 1 a
(i-1) de la agrupación representan los puertos
"voraces". Los puertos "voraces" comparten igualmente el
ancho de banda restante cuando las velocidades en los elementos de
la agrupación i a n son sustraídos de la velocidad agregada G, y X
es calculada como:
X = \sumR_{j}(para j=i a
n))/(j-1).
Una segunda realización de un método para
calcular X clasifica los elementos R1 a Rn de una agrupación R en
orden descendente (R1 es el mayor); y suma todos los valores de R.
Las dos operaciones (clasificación y suma) anteriores pueden ser
realizadas incrementalmente cuando son recibidos mensajes de
velocidad. Entonces se progresa en la agrupación R desde el
elemento de mayor valor (i=1) al elemento de menor valor (i=n). En
cada escalón, todos los elementos con índices menores que i son
reemplazados lógicamente por el valor del elemento corriente
(R_{i}) (no es necesario actualizar físicamente estos elementos de
la agrupación). La suma de elementos 1 a (i-1) es
calculada como (i-1)*R_{i}. La suma de elementos i
a n es mantenida como sumAtOrAboveI en cada escalón disminuyendo el
sumAtOrAboveI por R_{i}. La progresión es interrumpida cuando el
valor de ((i-1)*R_{i} + + sumAtOrAboveI) es menor
o igual a la velocidad garantizada G. Cuando esto ocurre, elementos
con índices menores que el índice corriente representan puertos
"voraces" cuyas velocidades permitidas son reducidas.
La realización de un algoritmo puede ser puesta
en práctica usando un seudo-código con las
siguientes formas:
Las velocidades de transmisión en elementos 1 a
(i-i) de la agrupación representan los puertos
"voraces". Los puertos "voraces" comparten igualmente el
ancho de banda restante cuando las velocidades de los elementos de
la agrupación i a n son sustraídas de la velocidad garantizada G, y
X es calculado como:
X = (G –
sumAtOrAbovel)/(i-1).
Una tercera realización de un método para
calcular X divide el espacio de posibles valores de X en particiones
iguales, y determina si un valor deseado de X se encuentra en la
parte superior o en la parte inferior. El procedimiento continúa de
forma recurrente sobre una parte seleccionada hasta que la suma de
velocidades obtenida usando el valor corriente de X es
aproximadamente igual G. El algoritmo funciona de una manera similar
a una búsqueda binaria.
Un seudo-código para poner en
práctica el algoritmo puede ser el siguiente:
Los puertos "voraces" comparten un ancho de
banda restante después de que las velocidades de los puertos no
"voraces" son sustraídas de la velocidad agregada, y X es
calculado como:
X =
(G-\sumR_{i}(para
R_{i}<X))/Q.
Una cuarta realización de un método para
calcular X está ilustrada por el siguiente
seudo-código. Esta realización no requiere una
clasificación de valores de agrupación.
Los algoritmos anteriores de control de
velocidad incluyen el criterio para evaluar el valor de X;
G=\sumR_{i}(para R_{i}
< X)+\sumX(para R_{i} \geq
X);
o
G=\sumR_{i}(para R_{i}
< X)+\sumX(para R_{i} \geq
X);
El algoritmo de control de velocidad incluye los
algoritmos específicos descritos antes y variaciones de estos
algoritmos que constituyen una realización de los conceptos
esenciales de los algoritmos.
El comportamiento del algoritmo de control de
velocidad está ilustrado en la fig. 2 para un caso de un cliente
que tiene un grupo de agregación de diez puertos, con una distancia
de trayecto máxima entre puertos de 1000 Km, y una velocidad de
transmisión garantizada de 1 Gbps. La transmisión de velocidad y el
cálculo de velocidad permitida son realizados cada 10 ms. La
velocidad de entrada en cada puerto se permite que aumente 10 Mbps
en cada intervalo de 10 ms. La capacidad total requerida para
satisfacer la garantía de velocidad es 1,3 Gbps. Esto puede ser
comparado al compromiso de al menos 5 Gbps requerido si la velocidad
de 1 Gbps es garantizada en cada puerto concurrentemente. En la
fig. 2, la curva (210) muestra el tráfico de entrada de un primer
archivo transferido desde un primer puerto, la curva (220) muestra
el tráfico de entrada de un segundo archivo transferido desde un
segundo puerto. La suma real del tráfico de entrada está mostrada
por la curva (230). La curva (240) es la suma del tráfico de
entrada como se ha mostrado a partir de mensajes de velocidad
retrasados.
Los resultados de la simulación mostrados en la
fig. 3 ilustran la operación de un algoritmo de control de
velocidad en un caso simple, en el que un grupo de agregación
contiene diez puertos miembros. En este ejemplo, el puerto 2, es
decir, la curva (310) comienza enviando un archivo, después de algún
tiempo Puerto 9, es decir, la curva (320) comienza a enviar un
archivo, y después de algún tiempo más, el puerto 2 termina de
enviar el archivo. La curva (330) muestra la suma de tráfico de
entrada del puerto 2 y del puerto 9. El valor máximo de la curva
(330) indica la capacidad C requerida para soportar la velocidad
garantizada G. Cuando solamente está enviando un puerto, la curva
(330) coincide con la velocidad del único puerto que envía. Cuando
dos puertos envían a la vez, la suma del tráfico de entrada - curva
(330) excede de la velocidad garantizada debido al retraso
experimentado por un puerto al recibir la información de velocidad
desde otros puertos.
Las figs. 4 y 5 ilustran que la suposición de
que los puertos operan en "al mismo tiempo" (es decir, sus
actividades están sincronizadas respectivamente entre sí)
proporciona un resultado conservador, o en el peor de los casos
para el valor de D. Relajando esta suposición y viendo la actividad
del puerto como asíncrona, puede solamente reducir el valor de D.
La fig. 4 muestra un caso "ideal" en el que ocurren cambios en
la velocidad permitida en el mismo instante en cada puerto, y toda
la latencia de comunicación entre puertos es la misma. Hay cuatro
puertos llamados A(410), B(420), C(430) y
D(440). Los mensajes de velocidad son mostrados solamente
desde A(410) a otros puertos, que incluyen mensajes de
velocidad (460), (470) y (480). Los parámetros son los siguientes:
G = 12, B = 2, n = 4, nB = 8, D = 2, (n-1)BD
= 12, y G + nB + (n-1)BD = 32. La fig. 4
muestra que cada puerto tiene un velocidad de entrada máxima de 8
y una suma de velocidad de entrada de 32.
Pero en realidad, como se ha mostrado en la fig.
5, los puertos son asíncronos y toda la latencia de comunicación
difiere entre pares de puertos. En la fig. 5, hay aún cuatro puertos
llamados A(510), B (520), C(530) y D(540). Los
mensajes de velocidad son mostrados sólo desde A a otros puertos,
incluyendo mensajes de velocidad (560), (570) y (580). La fig. 5
muestra que tres puertos tienen una velocidad de entrada de 8 y uno
tiene una velocidad de entrada de 6. En este caso, la capacidad
requerida C es reducida. Esto es mejor (es decir se requiere menos
capacidad) que el escenario en el peor de los casos ilustrado en la
fig. 4.
Los algoritmos de control de velocidad y el SLA
pueden ser usados para determinar la capacidad necesaria en el peor
de los casos para soportar velocidades garantizadas en un sistema
que proporciona servicios de velocidad agregada.
En ausencia de retraso, el uso de uno de los
algoritmos de control de velocidad anteriores asegura que los
valores de velocidad permitidas para el siguiente intervalo de
tiempo son asignados en cada puerto de tal modo que \sumA_{i}
\leq S+nB, donde S es el valor de \sumR_{i} asociado con un
intervalo de tiempo corriente. El valor de S puede no ser permitido
que aumente más allá del valor de G. Por tanto, en ausencia de un
retraso (es decir, D=0), la capacidad requerida en un enlace dentro
de una red que está en el trayecto de datos de todas las
comunicaciones entre miembros del grupo (es decir un punto de corte
en un gráfico de red) no es mayor que G+nB.
En presencia de un retraso (D>0), los
mensajes de velocidad de n-1 puertos están
retrasados. Un mensaje de velocidad en un puerto local (zona del
cálculo de velocidad) no está retrasado cuando no se ha enviado un
mensaje físico. Para cada puerto alejado, una velocidad de entrada
puede ascender en B en cada intervalo de tiempo T. Hay D/T
intervalos de tiempo de duración T durante un retraso de tiempo D. D
puede ser calculado como la mitad del retraso del viaje de ida y
vuelta entre dos puertos. Durante el retraso D, la velocidad en un
puerto alejado puede ascender a BD/T. Por tanto el valor de S
(basado en velocidades recibidas) subestima el valor de
\sumI_{i} por (n-1)BD/T. De ahí se
desprende que la capacidad requerida en el enlace es G+nB +
(n-1)BD/T.
Es importante observar que la capacidad es
calculada para el peor de los casos en el que todo el tráfico pasa
sobre un enlace objeto. Si el tráfico es transportado en diversos
trayectos, el requisito de capacidad calculado anteriormente puede
ser reducido, dependiendo del conocimiento de la distribución del
tráfico a través de los diversos trayectos.
Puede ser un problema que las condiciones de red
transitorias (por ejemplo un cambio en la posición física de un
puerto que no ha sido reflejada en el valor de D) pueden dar como
resultado un fallo para proporcionar la velocidad agregada
contraída.
Con referencia ahora a la fig. 6, se indica el
requisito de capacidad total en presencia del retraso D, y
(n-1)BD/T indica la capacidad requerida
específicamente por la presencia del retraso. S_{max} indica el
requisito de capacidad cuando el retraso es cero, y nB es el aumento
en la velocidad de entrada permitida durante el intervalo de tiempo
corriente. G indica una velocidad garantizada. A fin de reducir la
probabilidad de que los cambios transitorios en una red de
proveedores de servicios puedan causar que la capacidad sea
excedida debido a fluctuaciones en la capacidad requerida, un
proveedor de servicios puede comprometer capacidad adicional
M_{low} y/o M_{high} para proporcionar una región de tampón
entre la velocidad garantizada nominal especificada en el contrato
del cliente y la garantía que es realmente impuesta por el proveedor
de servicios. Si M_{low} > 0, un algoritmo de control de
velocidad puede ser modificado de modo que todo los casos de G son
cambiados a (G + M_{low}). El requisito de capacidad puede ser
cambiado a
(G + M_{low}) + nB + (n'1)BD/T + M_{high}.
(G + M_{low}) + nB + (n'1)BD/T + M_{high}.
Los métodos de control de velocidad en el
presente invento pueden ser aplicados de una manera totalmente
independiente de un modelo de servicio de velocidad agregada o
cualquier velocidad garantizada específica. Un puerto puede mostrar
por algunos medios sin especificar (por ejemplo una notificación de
congestión), que es deseable reducir (o aumentar) la cantidad
agregada de tráfico de entrada de red. El valor de G en los
algoritmos de control de velocidad puede ser ajustado a un valor
inferior (o superior) que la suma corriente de velocidades de
entrada de un valor de G previamente usado. El efecto es reducir (o
aumentar) equitativamente las velocidades de entrada de modo que,
por ejemplo, puertos que envían a velocidades bajas no
experimentarían reducción de la velocidad en respuesta a una
congestión ya que tales puertos es improbable que sean responsables
de esa congestión.
La descripción previa de las realizaciones
descritas es proporcionada para permitir a los expertos en la
técnica hacer uso del presente invento. Distintas modificaciones de
estas realizaciones serán fácilmente evidentes para los expertos en
la técnica y los principios genéricos definidos aquí pueden ser
aplicados a otras realizaciones sin salir del marco del invento.
Así el presente invento no se pretende que esté limitado a las
realizaciones mostradas aquí sino que ha de estar de acuerdo con el
marco más amplio consistente con los principios y nuevas
características descritas aquí.
Claims (30)
1. Un método de control de velocidad de
transmisión de servicios de comunicación de velocidad agregada, que
es aplicado a un grupo n de puertos en una red de comunicación, y
caracterizado porque comprende las operaciones de: obtener,
por cada puerto, información de velocidad de entrada de cada uno del
grupo de n puertos; hacer crecer, por cada puerto, la velocidad
permitida asignando un valor a la velocidad permitida que es mayor
que el valor corriente de una velocidad de entrada, si la suma de
las velocidades de entrada de los n puertos, s, es menor que un
umbral de velocidad dado, G; y ajustar por cada puerto, la velocidad
permitida, si la suma de las velocidades de entrada de los n
puertos, s, es mayor o igual al umbral de velocidad dado, G, de tal
modo que la suma de velocidades permitidas de los n puertos sea
igual al umbral G de velocidad dado.
2. El método de control de velocidad según la
reivindicación 1, que comprende además que cada uno del grupo de n
puertos distribuye un mensaje de comunicación que contiene
información de velocidad de entrada del puerto de distribución.
3. El método de control de velocidad según la
reivindicación 1, en el que el grupo de n puertos forma un grupo de
agregación, y el umbral de velocidad dado es una velocidad
garantizada compartida de manera equitativa por el grupo de n
puertos.
4. El método de control de velocidad según la
reivindicación 3, en el que los n puertos del grupo de agregación
comparten la velocidad garantizada de manera equitativa.
5. El método de control de velocidad según la
reivindicación 3, que comprende además que cada puerto en el grupo
de agregación distribuye un mensaje de velocidad a otros puertos del
grupo de agregación que contiene información de velocidad de
entrada del puerto de distribución.
6. El método de control de velocidad según la
reivindicación 5, en el que el mensaje de velocidad comprende un
valor de velocidad de entrada y la identidad del puerto de
distribución.
7. El método de control de velocidad según la
reivindicación 3, en el que la operación de aceleración comprende,
para un puerto local en el grupo de agregación, establecer la
velocidad permitida del puerto local para el siguiente intervalo de
tiempo para que sea igual a la suma de la velocidad de entrada del
puerto local medida durante el intervalo de tiempo corriente, y una
cantidad, B, en la que B es una cantidad de incremento de velocidad
por intervalo de tiempo t de duración T.
8. El método de control de velocidad según la
reivindicación 7, que comprende además una operación de aumentar la
velocidad permitida del puerto local en una cantidad (G-(S+nB)/nD)
si (s+nB<G), en la que D es el valor máximo de los retrasos
entre dos puertos cualesquiera del grupo de agregación.
9. El método de control de velocidad según la
reivindicación 3, en el que la operación de ajuste comprende además
las operaciones, para un puerto local en el grupo de agregación de:
determinar una velocidad permitida máxima X, de tal modo que X
satisface G=\sumR_{i}(para
R_{i}<X)+\sumX(para R_{i}\geqX), o
G=\sumR_{i}(para R_{i}<X)+\sumX(para
R_{i}\geqX), en el que R_{i} es la velocidad de entrada del
puerto i (i=1,...n) en el grupo de agregación, obtenida en un
mensaje de velocidad distribuido por el puerto i; y asignar a la
velocidad permitida del puerto local un valor de
(MIN(I_{local},X)+B), en el que B es una cantidad de
incremento de velocidad por intervalo de tiempo t de duración T, e
I_{local} es la velocidad de entrada del puerto local para el
intervalo de tiempo corriente.
10. El método de control de velocidad según la
reivindicación 9, en el que la operación de determinar X comprende
además: determinar puertos "voraces"; y calcular X de tal modo
que X es la velocidad permitida asignada para cada puerto
"voraz", quedando sin cambios las velocidades permitidas de
puertos no "voraces", y la suma de las velocidades permitidas
de todos los puertos en el grupo de agregación es igual a G.
11. El método de control de velocidad según la
reivindicación 10, en el que los puertos "voraces" son
determinados por un algoritmo que comprende las operaciones de:
formar una agrupación R usando velocidades de entrada distribuidas
R_{i}(i=1,...n) del puerto i en el grupo de agregación;
clasificar la agrupación R en orden descendente; progresar en la
agrupación R desde el elemento mayor al elemento menor; reemplazar
todo los elementos que tienen valores de velocidad de entrada
mayores que el elemento corriente con el valor de velocidad de
entrada del elemento corriente; repetir las dos operaciones previas
hasta que la suma de todos los elementos en una agrupación R sea
menor o igual a la velocidad garantizada G; y determinar que los
puertos "voraces" son los que tienen un índice menor que el
índice del elemento corriente en la agrupación R.
12. El método de control de velocidad según la
reivindicación 10, en el que los puertos "voraces" son
determinados por un algoritmo que comprende las operaciones de:
formar una agrupación R usando velocidades de entrada distribuidas
R_{i}(i=1,...n) del puerto i en el grupo de agregación;
clasificar la agrupación R en orden descendente; progresar en la
agrupación R desde el elemento mayor al elemento menor; sumar todos
los elementos de la agrupación R que tienen un índice mayor que el
índice del elemento corriente, dando como resultado sumAtOrAbovel;
repetir las dos operaciones previas hasta que
(sumAtOrAbovel+k*elemento corriente) sea menor o igual a la
velocidad garantizada G, en el que k es el número de elementos que
tiene un índice menor o igual que el índice del elemento corriente;
y determinar que los puertos "voraces" son aquellos puertos que
tienen un índice menor o igual que el índice del elemento
corriente.
13. El método de control de velocidad según la
reivindicación 10, en el que los puertos "voraces" son
determinados por un algoritmo que comprende las operaciones de:
dividir el espacio de valores posibles de X en dos particiones
iguales; determinar en qué partición se encuentra un valor deseado
para X; repetir las dos operaciones previas hasta que
\sumR_{i}(para R_{i}<X)+\sumX(para
R_{i}\geqX) sea aproximadamente igual a la velocidad
garantizada G; y determinar que los puertos "voraces" son
aquellos que tienen una velocidad de entrada mayor o igual a X.
14. El método de control de velocidad según la
reivindicación 10, en el que los puertos "voraces" son
determinados por un algoritmo que comprende las operaciones de:
determinar el valor máximo de las velocidades de entrada para
puertos en el grupo de agregación; asignar el valor máximo a X;
reemplazar la velocidad de entrada del puerto que tiene un valor
máximo por 0; almacenar el número de los puertos que tienen una
velocidad de entrada igual a 0, representado por Q; repetir las
tres operaciones previas hasta que ((G - suma de todas las
velocidades de entrada)/Q) sea menor o igual a X; y determinar que
los puertos "voraces" son los que tienen velocidades de entrada
iguales
a 0.
a 0.
15. El método de control de velocidad según la
reivindicación 3, en el que la capacidad en el peor de los casos
requerida para soportar comunicaciones entre puertos del grupo de
agregación es (G+nB), en ausencia de retraso, en la que B es una
cantidad de incremento de velocidad por intervalo de tiempo t de
duración T.
16. El método de control de velocidad según la
reivindicación 3, en el que la capacidad en el peor de los casos
requerida para soportar comunicaciones entre puertos del grupo de
agregación es ((G+nB)+(n-1)BD/T) en
presencia del retraso D, en el que B es una cantidad de incremento
de velocidad por intervalo de tiempo t de duración T.
17. El método de control de velocidad según la
reivindicación 3, en el que una capacidad adicional M_{low} o
M_{high} es proporcionada.
18. Un sistema para control de velocidad de
servicios de comunicación de velocidad agregada, que comprende: al
menos un grupo de agregación, que comprende n puertos que comparten
una velocidad garantizada G; caracterizado porque cada
puerto del grupo de agregación está adaptado para obtener
información de velocidad de entrada de todos los demás puertos en
el grupo de agregación; hacer crecer la velocidad permitida siendo
adaptado para asignar un valor a la velocidad permitida que es
mayor que el valor corriente de una velocidad de entrada si la suma
de la velocidad de entrada de todos los puertos en el grupo de
agregación, S, es menor que la velocidad garantizada G; y ajustar
la velocidad permitida de modo que la suma de velocidades permitidas
de todos los puertos en el grupo de agregación para el siguiente
intervalo de tiempo es igual a G, si la suma de la velocidad de
entrada de todos los puertos en el grupo de agregación, S, es mayor
o igual a la velocidad garantizada G.
19. El sistema según la reivindicación 18, en el
que puertos del grupo de agregación comparten la velocidad
garantizada del grupo de agregación de manera equitativa.
20. El sistema según la reivindicación 18, en el
que cada puerto en el grupo de agregación está adaptado además para
distribuir un mensaje de velocidad que contiene una información de
la velocidad de entrada del puerto de distribución.
21. El sistema según la reivindicación 20, en el
que el mensaje de velocidad comprende un valor de velocidad de
entrada e identidad del puerto de distribución.
22. El sistema según la reivindicación 18, en el
que cada puerto en el grupo de agregación está adaptado para hacer
crecer la velocidad permitida añadiendo una cantidad B a su
velocidad de entrada corriente, de modo que la suma de velocidades
permitidas de todos los puertos en el grupo de agregación es igual a
la velocidad garantizada G, en que B es una cantidad de incremento
de velocidad por intervalo de tiempo t de duración T.
23. El sistema según la reivindicación 18, en el
que cada puerto en el grupo de agregación está adaptado a la ajustó
la velocidad permitida usando un método que comprende las
operaciones de, para un puerto local en el grupo de agregación:
determinar una velocidad permitida máxima X, de tal modo que X
satisfaga G=\sumR_{i}(para R_{i}<X) +
\sumX(para R_{i}\geqX), o G=\sumR_{i}(para
R_{i}<X) + \sumX(para R_{i}\geqX), en el que
R_{i} es la velocidad de entrada del puerto i (i=1,...n) en el
grupo de agregación, obtenida en un mensaje de velocidad
distribuido por el puerto i; y asignar a la velocidad permitida del
puerto local un valor de (MIN)(I_{local},X)+B, en que B es una
cantidad de incremento de velocidad por intervalo de tiempo t de
duración T, y I_{local} es la velocidad de entrada del puerto
local para el intervalo de tiempo corriente.
24. El sistema según la reivindicación 21, en el
que la operación de determinar X comprende además: determinar
puertos "voraces"; y calcular X de tal modo que X es la
velocidad permitida asignada a cada puerto "voraz", las
velocidades permitidas de puertos no "voraces" quedan sin
cambios, y la suma de las velocidades permitidas de todos los
puertos en el grupo de agregación es igual a G.
25. El método de control de velocidad según la
reivindicación 24, en el que los puertos "voraces" son
determinados por un algoritmo que comprende las operaciones de:
formar una agrupación R usando velocidades de entrada distribuidas
R_{i}(i=1,...n) del puerto i en el grupo de agregación;
clasificar la agrupación R en orden descendente; progresar en la
agrupación R desde el elemento mayor al elemento menor; reemplazar
todo los elementos que tienen valores de velocidad de entrada
mayores que el elemento corriente por el valor de la velocidad de
entrada del elemento corriente; repetir las dos operaciones previas
hasta que la suma de todos los elementos en una agrupación R sea
menor o igual a la velocidad garantizada G; y determinar que los
puertos "voraces" son los que tienen un índice menor que el
índice del elemento corriente en la agrupación R.
26. El sistema según la reivindicación 24, en el
que los puertos "voraces" son determinados por un algoritmo
que comprende las operaciones de: formar una agrupación R usando
velocidades de entrada distribuidas R_{i}(i=1,...n) del
puerto i en el grupo de agregación; clasificar la agrupación R en
orden descendente; progresar en la agrupación R desde el elemento
mayor al elemento menor; sumar todos los elementos de la agrupación
R que tienen un índice mayor que el índice del elemento corriente,
dando como resultado sumAtOrAbovel; repetir las dos operaciones
previas hasta que (sumAtOrAbovel+k*elemento corriente) sea menor o
igual a la velocidad garantizada G, en el que k es el número de
elementos que tiene un índice menor o igual que el índice del
elemento corriente; y determinar que los puertos "voraces" son
aquellos puertos que tienen un índice menor o igual que el índice
del elemento corriente.
27. El sistema según la reivindicación 24, en el
que los puertos "voraces" son determinados por un algoritmo
que comprende las operaciones de: dividir el espacio de valores
posibles de X en dos particiones iguales; determinar en qué
partición se encuentra un valor deseado para X; repetir las dos
operaciones previas hasta que \sumR_{i}(para
R_{i}<X)+\sumX(para R_{i}\geqX) sea
aproximadamente igual a la velocidad garantizada G; y determinar
que los puertos "voraces" son aquellos que tienen una velocidad
de entrada mayor o igual a X.
28. El sistema según la reivindicación 24, en el
que los puertos "voraces" son determinados por un algoritmo
que comprende las operaciones de: determinar el valor máximo de las
velocidades de entrada para puertos en el grupo de agregación;
asignar el valor máximo a X; reemplazar la velocidad de entrada del
puerto que tiene un valor máximo por 0; almacenar el número de los
puertos que tienen una velocidad de entrada igual a 0, representado
por Q; repetir las tres operaciones previas hasta que ((G - suma de
todas las velocidades de entrada)/Q) es menor o igual a X; y
determinar que los puertos "voraces" son los que tienen
velocidades de entrada iguales a 0.
29. El sistema según la reivindicación 18, en el
que la capacidad requerida en el peor de los casos para soportar
comunicaciones entre puertos del grupo de aleación es (G+nB), en
ausencia de retraso, en la que B es una cantidad de incremento de
velocidad por intervalo de tiempo t de duración T.
30. El sistema según la reivindicación 18, en el
que la capacidad requerida en el peor de los casos para soportar
comunicaciones entre puertos del grupo de agregación es
(G+nB)+(n-1BD/T) en presencia del retraso D, en el
que B es una cantidad de incremento de velocidad por intervalo de
tiempo t de duración T.
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US82020206P | 2006-07-24 | 2006-07-24 | |
| US820202P | 2006-07-24 | ||
| US11/622,646 US7817550B2 (en) | 2006-01-13 | 2007-01-12 | System for rate-control of aggregate-rate communication services |
| US622646 | 2007-01-12 | ||
| PCT/CN2007/070350 WO2008014712A1 (en) | 2006-07-24 | 2007-07-24 | System for rate-control of aggregate-rate communication services |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| ES2336964T3 true ES2336964T3 (es) | 2010-04-19 |
| ES2336964T5 ES2336964T5 (es) | 2014-05-22 |
Family
ID=38996885
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| ES07785378.6T Active ES2336964T5 (es) | 2006-07-24 | 2007-07-24 | Sistema para el control de velocidad de servicios de comunicación de velocidad agregada |
Country Status (6)
| Country | Link |
|---|---|
| US (1) | US7817550B2 (es) |
| EP (1) | EP1958344B2 (es) |
| AT (1) | ATE449469T1 (es) |
| DE (1) | DE602007003307D1 (es) |
| ES (1) | ES2336964T5 (es) |
| WO (1) | WO2008014712A1 (es) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7813279B2 (en) * | 2006-01-13 | 2010-10-12 | Futurewei Technologies, Inc. | System for rate management of aggregate-rate communication services |
| US7881192B2 (en) * | 2006-01-13 | 2011-02-01 | Futurewei Technologies, Inc. | System for providing aggregate-rate communication services |
| US8842536B2 (en) * | 2010-12-23 | 2014-09-23 | Brocade Communications Systems, Inc. | Ingress rate limiting |
| US9197705B2 (en) * | 2013-04-12 | 2015-11-24 | Samsung Electronics Co., Ltd. | Method and apparatus for supporting driving using wireless communication network and system thereof |
| EP3494949A1 (en) * | 2017-12-06 | 2019-06-12 | Li Shizhen (Guangzhou) Health Technology Co., Ltd. | Intelligent moxybustion device |
| US11411925B2 (en) | 2019-12-31 | 2022-08-09 | Oracle International Corporation | Methods, systems, and computer readable media for implementing indirect general packet radio service (GPRS) tunneling protocol (GTP) firewall filtering using diameter agent and signal transfer point (STP) |
| US11553342B2 (en) | 2020-07-14 | 2023-01-10 | Oracle International Corporation | Methods, systems, and computer readable media for mitigating 5G roaming security attacks using security edge protection proxy (SEPP) |
| US11751056B2 (en) | 2020-08-31 | 2023-09-05 | Oracle International Corporation | Methods, systems, and computer readable media for 5G user equipment (UE) historical mobility tracking and security screening using mobility patterns |
| US11832172B2 (en) | 2020-09-25 | 2023-11-28 | Oracle International Corporation | Methods, systems, and computer readable media for mitigating spoofing attacks on security edge protection proxy (SEPP) inter-public land mobile network (inter-PLMN) forwarding interface |
| US11825310B2 (en) | 2020-09-25 | 2023-11-21 | Oracle International Corporation | Methods, systems, and computer readable media for mitigating 5G roaming spoofing attacks |
| US11622255B2 (en) | 2020-10-21 | 2023-04-04 | Oracle International Corporation | Methods, systems, and computer readable media for validating a session management function (SMF) registration request |
| US11528251B2 (en) * | 2020-11-06 | 2022-12-13 | Oracle International Corporation | Methods, systems, and computer readable media for ingress message rate limiting |
| US11770694B2 (en) | 2020-11-16 | 2023-09-26 | Oracle International Corporation | Methods, systems, and computer readable media for validating location update messages |
| US11818570B2 (en) | 2020-12-15 | 2023-11-14 | Oracle International Corporation | Methods, systems, and computer readable media for message validation in fifth generation (5G) communications networks |
| US11812271B2 (en) | 2020-12-17 | 2023-11-07 | Oracle International Corporation | Methods, systems, and computer readable media for mitigating 5G roaming attacks for internet of things (IoT) devices based on expected user equipment (UE) behavior patterns |
| US11700510B2 (en) | 2021-02-12 | 2023-07-11 | Oracle International Corporation | Methods, systems, and computer readable media for short message delivery status report validation |
| US11516671B2 (en) | 2021-02-25 | 2022-11-29 | Oracle International Corporation | Methods, systems, and computer readable media for mitigating location tracking and denial of service (DoS) attacks that utilize access and mobility management function (AMF) location service |
| US11689912B2 (en) | 2021-05-12 | 2023-06-27 | Oracle International Corporation | Methods, systems, and computer readable media for conducting a velocity check for outbound subscribers roaming to neighboring countries |
| US12015923B2 (en) | 2021-12-21 | 2024-06-18 | Oracle International Corporation | Methods, systems, and computer readable media for mitigating effects of access token misuse |
Family Cites Families (36)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6850540B1 (en) | 1999-10-28 | 2005-02-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Packet scheduling in a communications system |
| US4827477A (en) * | 1987-05-15 | 1989-05-02 | Grumman Aerospace Corporation | Bus interface unit |
| ZA946674B (en) | 1993-09-08 | 1995-05-02 | Qualcomm Inc | Method and apparatus for determining the transmission data rate in a multi-user communication system |
| US5535193A (en) | 1995-02-09 | 1996-07-09 | Wandel & Goltermann Technologies, Inc. | Multiport analyzing with time stamp synchronizing |
| US5748901A (en) | 1996-05-21 | 1998-05-05 | Ramot University Authority Ltd. | Flow control algorithm for high speed networks |
| US6665733B1 (en) | 1996-12-30 | 2003-12-16 | Hewlett-Packard Development Company, L.P. | Network communication device including bonded ports for increased bandwidth |
| US5914945A (en) | 1996-12-31 | 1999-06-22 | Northern Telecom Limited | Method and system for bandwidth allocation for multimedia services under aggregate traffic conditions |
| FR2762735B1 (fr) | 1997-04-23 | 1999-06-11 | France Telecom | Procede d'ordonnancement de paquets a pertes equitables |
| GB2342825A (en) | 1998-10-16 | 2000-04-19 | 3Com Technologies Ltd | Controlling traffic flow in a local area network partitioned into virtual networks |
| US6515969B1 (en) | 1999-03-01 | 2003-02-04 | Cisco Technology, Inc. | Virtual local area network membership registration protocol for multiple spanning tree network environments |
| AU2001236303A1 (en) | 2000-02-25 | 2001-09-03 | Telefonaktiebolaget Lm Ericsson (Publ) | Flow control between transmitter and receiver entities in a communications system |
| US6985447B2 (en) | 2000-10-20 | 2006-01-10 | Nortel Networks Limited | Label switched traffic routing and signaling in a label switched communication packet network |
| US7284047B2 (en) * | 2001-11-08 | 2007-10-16 | Microsoft Corporation | System and method for controlling network demand via congestion pricing |
| KR100891798B1 (ko) | 2002-01-14 | 2009-04-07 | 삼성전자주식회사 | 이동통신 시스템에서 역방향 부가 채널의 호 할당 제어 방법 |
| CA2470637C (en) | 2002-02-01 | 2011-03-29 | Tellabs Operations, Inc. | Method and apparatus for multi-layer network in sonet/sdh |
| US20030163593A1 (en) | 2002-02-25 | 2003-08-28 | William March Rice University | Method and system for implementing a fair, high-performance protocol for resilient packet ring networks |
| US7102997B2 (en) | 2002-03-04 | 2006-09-05 | Fujitsu Limited | Aggregate rate transparent LAN service for closed user groups over optical rings |
| US7292580B2 (en) * | 2002-06-10 | 2007-11-06 | Lsi Corporation | Method and system for guaranteeing quality of service in a multi-plane cell switch |
| US7372814B1 (en) | 2003-02-27 | 2008-05-13 | Alcatel-Lucent | Network system with color-aware upstream switch transmission rate control in response to downstream switch traffic buffering |
| US7215644B2 (en) | 2003-03-19 | 2007-05-08 | Alcatel Lucent | Inter-domain constraint-based shortest path first technique for supporting hierarchical routing in interconnected multi-domain optical transport networks |
| WO2004086704A1 (ja) | 2003-03-26 | 2004-10-07 | Nippon Telegraph And Telephone Corporation | Gmpls+ip/mplsノードおよびip/mplsノード |
| CN1319326C (zh) | 2003-04-01 | 2007-05-30 | 华为技术有限公司 | 一种基于承诺接入速率的带宽统计复用方法 |
| JP2006523980A (ja) * | 2003-04-17 | 2006-10-19 | トムソン ライセンシング | データ要求装置、データ送信装置、およびそのプロセスならびに対応する製品 |
| KR100573177B1 (ko) | 2003-07-31 | 2006-04-25 | 에스케이 텔레콤주식회사 | CDMA 1xEV-DO 이동 통신 시스템에서 역방향링크율을 제어하는 방법 및 시스템 |
| US7774506B2 (en) | 2003-08-19 | 2010-08-10 | Cisco Technology, Inc. | Systems and methods for alleviating client over-subscription in ring networks |
| CN1333605C (zh) | 2003-08-22 | 2007-08-22 | 华为技术有限公司 | 一种控制第三代移动通信系统业务传输速率的方法 |
| US7355969B2 (en) * | 2003-10-07 | 2008-04-08 | Alcatel | Line card port protection rate limiter circuitry |
| CN1320803C (zh) | 2003-11-06 | 2007-06-06 | 北京邮电大学 | 无源光网络上行带宽的动态分配控制方法 |
| US7551599B2 (en) | 2004-03-29 | 2009-06-23 | Corrigent Systems Ltd. | Layer-3 network routing with RPR layer-2 visibility |
| JP2005340937A (ja) | 2004-05-24 | 2005-12-08 | Fujitsu Ltd | Mplsネットワーク及びその構築方法 |
| US7492779B2 (en) | 2004-11-05 | 2009-02-17 | Atrica Israel Ltd. | Apparatus for and method of support for committed over excess traffic in a distributed queuing system |
| CN100521720C (zh) | 2004-11-18 | 2009-07-29 | 华为技术有限公司 | 一种基于流量/时长和业务质量的分组预付费业务实现方法 |
| US7903638B2 (en) | 2005-02-09 | 2011-03-08 | Alcatel Lucent | Communication link bonding apparatus and methods |
| US7813279B2 (en) | 2006-01-13 | 2010-10-12 | Futurewei Technologies, Inc. | System for rate management of aggregate-rate communication services |
| US7881192B2 (en) | 2006-01-13 | 2011-02-01 | Futurewei Technologies, Inc. | System for providing aggregate-rate communication services |
| US7515535B2 (en) | 2006-05-10 | 2009-04-07 | Cisco Technology, Inc. | Technique for efficiently managing bandwidth for multipoint-to-multipoint services in a provider network |
-
2007
- 2007-01-12 US US11/622,646 patent/US7817550B2/en active Active
- 2007-07-24 ES ES07785378.6T patent/ES2336964T5/es active Active
- 2007-07-24 AT AT07785378T patent/ATE449469T1/de not_active IP Right Cessation
- 2007-07-24 EP EP07785378.6A patent/EP1958344B2/en active Active
- 2007-07-24 WO PCT/CN2007/070350 patent/WO2008014712A1/en not_active Ceased
- 2007-07-24 DE DE602007003307T patent/DE602007003307D1/de active Active
Also Published As
| Publication number | Publication date |
|---|---|
| WO2008014712A1 (en) | 2008-02-07 |
| DE602007003307D1 (de) | 2009-12-31 |
| US20070165527A1 (en) | 2007-07-19 |
| ES2336964T5 (es) | 2014-05-22 |
| ATE449469T1 (de) | 2009-12-15 |
| EP1958344A4 (en) | 2008-12-03 |
| EP1958344B2 (en) | 2014-02-12 |
| EP1958344A1 (en) | 2008-08-20 |
| EP1958344B1 (en) | 2009-11-18 |
| US7817550B2 (en) | 2010-10-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2336964T5 (es) | Sistema para el control de velocidad de servicios de comunicación de velocidad agregada | |
| US11677667B2 (en) | System and method for efficient network isolation and load balancing in a multi-tenant cluster environment | |
| US10218642B2 (en) | Switch arbitration based on distinct-flow counts | |
| Manfredi et al. | Mobility and congestion in dynamical multilayer networks with finite storage capacity | |
| ES2817054T3 (es) | Captura de datos | |
| US20190245771A1 (en) | Transmitting bgp message | |
| US6859435B1 (en) | Prevention of deadlocks and livelocks in lossless, backpressured packet networks | |
| US9391913B2 (en) | Express virtual channels in an on-chip interconnection network | |
| US20100246397A1 (en) | Network having multiple QoS levels | |
| US20140286349A1 (en) | Communication device and packet scheduling method | |
| US8331241B2 (en) | Routing control method, communication apparatus and communication system | |
| JP2013197823A (ja) | 負荷分散ポリシング機能を含むポリサ | |
| US20150006755A1 (en) | Inter-device policing on network interface devices in lag configuration | |
| Yeung et al. | Competition for shortest paths on sparse graphs | |
| JP2007528636A (ja) | ノンブロッキングで決定論的マルチレートマルチキャストパケットスケジューリング | |
| US7944829B2 (en) | Mechanism for managing access to resources in a heterogeneous data redirection device | |
| US7231471B2 (en) | System using fairness logic for mediating between traffic associated with transit and transmit buffers based on threshold values of transit buffer | |
| US9240960B2 (en) | Port scheduling for a network device | |
| Zukerman et al. | A protocol for eraser node implementation within the DQDB framework | |
| JP3623420B2 (ja) | トラヒック制御方法 | |
| ES2352524T3 (es) | Sistema para la gestión de tasas de servicios de comunicaciones de tasa global. | |
| US20240031302A1 (en) | Guaranteed-latency networking | |
| US9973437B2 (en) | Apparatus to achieve quality of service (QOS) without requiring fabric speedup | |
| Pappu et al. | Distributed queueing in scalable high performance routers | |
| Nakayama et al. | Rank-based low-latency scheduling for maximum fronthaul accommodation in bridged network |