En la quinta edicion del libro Kurose, en la pagina 220 dice que GBN usa un único temporizador que solo se inicia cuando envia un paquete en la posicion base o cuando recibe un ACK, pero en la pagina 222, el esquema mostrado da a entender que existe un temporizador por paquete. Cual es la correcta?
Re: Cuantos temporizadores tiene el emisor GBN?
¿Te referís al esquema que muestra un posible escenario de intercambio de mensajes ?
Cuando el timer salta se reenvían varios paquetes: todos los enviados que aún no fueron reconocidos (paquetes 2, 3, 4 y 5)
El emisor GBN tiene un solo timer, que sería el del paquete más viejo no reconocido. Pero, eventualmente, ante un time out se reenvían varios paquetes.
Saludos.
Re: Cuantos temporizadores tiene el emisor GBN?
Según la maquina de estados de la pagina 220 sucede esto cuando ser recibe un ACK:
rdt_recibir(pqtrcb) && nocorrupto(pqtrcb)
base=obtenernumack(pqtrcb)+1
If(base==signumsec)
detener_temporizador
else
iniciar_temporizador
Este código indica que cuando se recibe el ACK 0 y el ACK 1 el temporizador se debería iniciar (el único temporizador), pero en la imagen que subiste el temporizador del paquete 2 no se reinicia, da a entender que el paquete 2 tiene su propio temporizador. No se si esta mal el libro o que es un poco ambiguo como fue expresado en la imagen.
Re: Cuantos temporizadores tiene el emisor GBN?
En el caso planteado debería reiniciarse el timer cuando llega ACK0 y otra vez cuando llega ACK1.