¿Cómo se realiza el marcado probabilístico con la detección temprana aleatoria?

7

Actualmente estoy estudiando para mi examen de Redes de Computadoras.

No puedo entender lo siguiente.

Cuando la longitud promedio actual de la cola se encuentra entre un umbral mínimo y un umbral máximo, el algoritmo de detección temprana aleatoria marca cada paquete que recibe con una probabilidad (de caída o notificación de congestión explícita).

Entiendo que cada paquete se marca cuando el AQL es mayor que max_threshold (es decir, p es 1), pero no puedo entender en el primer caso cómo se usa la probabilidad calculada para decidir si un paquete se marcará o no.

Por ejemplo, si se calcula que p_b es 0.7 para un paquete, ¿significa que el paquete no se marcará en absoluto?

Como referencia, aquí está el algoritmo RED en pseudocódigo, como se propuso por primera vez en http://www.cs.princeton.edu/courses/archive/fall06/cos561/papers/red.pdf :

Initialization:
avg ← 0
count ← −1

for each packet arrival calculate the new average queue size avg: 
    if the queue is nonempty
        avg ← (1 − w_q)*avg + w_q*q     
    else
        m← f(time−q time) 
        avg←(1−w )^m*avgq 

    if min_th ≤ avg < max_th
        increment count

        calculate probability pa:
            pb ← maxp(avg − minth)/(maxth − minth) pa ←pb/(1−count·pb)
        with probability pa:
            mark the arriving packet count ← 0

    else if maxth ≤ avg
        mark the arriving packet count ← 0
    else count ← −1

when queue becomes empty
q_time ← time
Riccardo Angius
fuente

Respuestas:

6

Piense en ROJO como una curva arbitraria en un sistema de coordenadas.

Y es la probabilidad de caída X es lo congestionado que está (por ejemplo, cuán llenos están los amortiguadores de salida)

El operador podría agregar 5 puntos allí

  1. X = 40%, Y = 0%
  2. X = 50%, Y = 5%
  3. X = 60%, Y = 20%
  4. X = 70%, Y = 40%
  5. X = 90%, Y = 100%

Luego dibujarías líneas a los puntos para formar la curva, para obtener Y exacta (probabilidad de caída) para cada X (demanda / congestión).

La implementación exacta de cómo producir un número aleatorio para el porcentaje no es muy interesante, podría ser que hagas un número aleatorio del 1-100 y si Y == 5, entonces para los números aleatorios 1-5 caes, para 6-100 no te caigas

WRED es exactamente lo mismo, solo hay diferentes curvas para diferentes clases de QoS.

Puede que esta no sea una respuesta académica como es de esperar, y tampoco puedo recomendar un libro muy académico para QoS. QoS es muy muy específico de implementación. TM (Traffic Manager) son las piezas más complejas de un enrutador moderno.

ytti
fuente
No tenía por qué ser académico en absoluto, obtuve todos los detalles en el libro del profesor pero, por muy poco interesante que fuera, me faltaba esa pieza para visualizar de manera exhaustiva cómo funciona todo. Muchas gracias.
Riccardo Angius