Primer parcial 2017 - Problema 1

Primer parcial 2017 - Problema 1

de Juan Ramirez -
Número de respuestas: 2

Estaba estudiando la FSM del receptor y vi algo que me llamó la atención:


Se agregó un timer que al expirar activa el reenvío del ACK. Por lo que pude entender, sustituye la transición ocasionada por recibir un paquete corrupto (ya se maneja el caso de recibir un paquete con seq# correcto e incorrecto).


La pregunta es: Por qué se tomó este camino? No entiendo por qué sería necesario un timer en receptor si el emisor ya está controlando esos casos. Tampoco veo que exista algún evento en el que le interese esperar, es decir, la letra no dice nada de que deba existir cierto throughput, o que deba existir una especie de keep alive por parte del receptor.


También son confusos los estados, entiendo que debería esperar por paquetes con seq# 0 o 1, pero no por ACKs.


Agrego letra del ejercicio y captura de la solución:

Considere un escenario donde un host A envía paquetes simultáneamente a dos hosts B y C
mediante un canal de broadcast. Dicho canal puede perder o corromper paquetes (por ejemplo, un
paquete enviado por A puede ser recibido correctamente por B pero no por C). Diseñe un
protocolo basado en el rdt 3.0 visto en el curso que permita la transferencia de datos confiable
desde a A a B y C, de forma tal que A no acepte nuevos datos de la capa superior hasta
asegurarse que tanto B como C han recibido correctamente el paquete actual.

Receptor solución examen 2017

En respuesta a Juan Ramirez

Re: Primer parcial 2017 - Problema 1

de Alfredo Jose Espasandin Mederos -

Me sumo a la duda. No veo por qué no usar la FSM del receptor de rdt 3.0 (que es la misma que rdt 2.2)


En respuesta a Alfredo Jose Espasandin Mederos

Re: Primer parcial 2017 - Problema 1

de Matias Richart -

Buenas!

Disculpen la demora en responder. Se nos pasó con la vorágine del parcial.

Estuve repasando la letra de ese parcial y la solución propuesta y tienen razón.

La verdad no recuerdo porque se planteó esa solución y comparto que no tiene mucho sentido. Usar el receptor del RDT 3.0 sería correcto.

Saludos