2012-09-27 21 views
5

que estaba leyendo de Interconexión en red de Kurose, y al leer en el capítulo TCP sobre las diferencias entre TCP y Retroceso N encontré algo que no entiendo totalmente. El libro dice lo siguiente acerca de algunas de las diferencias entre los dos protocolos:.Las diferencias entre TCP y Retroceso N

"buffer de muchas implementaciones TCP recibidos correctamente pero segs fuera de orden más bien que deseche

también, supongamos que un segs seqof 1 , 2, ... N, se reciben correctiva en orden, ACK (n), n < N, se pierde, y restantes N-1 acks llegan al remitente antes de sus respectivos tiempos de espera TCP retransmitir más uno seg, es decir, seg n , en lugar de pkts, n, n + 1, ..., N TCP ni siquiera retransmitir seg n si ACK (n + 1) llegó antes de tiempo de espera para la seg n"

entiendo el almacenamiento temporal de los segmentos fuera de orden, pero no entienden el otro comportamiento, y creo que es porque no entienden completamente Retroceder N. Siguiendo ese ejemplo, si ACK (n + T) llega antes de Retroceso N tiempo de espera, el protocolo seguiría como si seg n su recepción efectiva, que es el caso, debido a las ACKS acumulativos ... así, Retroceso N sería no retransmitir ese segmento ya sea .. .. ¿O me estoy perdiendo algo?

+0

Hola, ¿ya has recibido la respuesta? También estoy confundido al leer esta parte del texto. – Perqin

Respuesta

0

ACK(n) reconoce llegada de toda la corriente hasta n. Así ACK(n+1) dice que todo lo que hasta n+1 ha llegado, incluyendo n.

+0

Pero, en Go Back N es lo mismo que en TCP ... ACK (n + 1) dice que todo hasta n + 1 ha llegado a ... o quizás me falta algo, pero en cuanto lo leo lo usa ACKS acummulativo también. – Lucia

+0

@Lucia Ciertamente. ¿El libro dice algo diferente? No hay nada que sugiera eso en lo que has citado. – EJP

0

La cita dice que el ACK (n) se perdió, no el segmento de orden n se perdió. En tal caso, no es necesario retransmitir nada, porque ACK (n + x) significa que todo hasta n + x se recibió con éxito.

9

que estaba viendo la respuesta de esta pregunta y después de encontrar que pensé que a pesar de que esto es viejo, que podría ayudar a alguien, así que copiar un fragmento de Kurose-Ross Redes informáticas - Un enfoque de arriba hacia abajo:

¿TCP es un GBN o un protocolo SR? Recordemos que los reconocimientos TCP son acumulativos y correctamente recibidos pero segmentos fuera de orden no se Acked individualmente por el receptor. En consecuencia, el emisor TCP sólo tiene que mantener el número de secuencia más pequeña de un byte transmitido, pero no reconocida (SendBase) y el número de secuencia del siguiente byte que se envía (NextSeqNum). En este sentido, TCP se parece mucho a un protocolo de estilo GBN. Pero hay algunas diferencias notables entre TCP y Go-Back-N. Muchas implementaciones de TCP almacenan en búfer correctamente los segmentos recibidos pero fuera de servicio [Stevens 1994]. Considere también lo que sucede cuando el emisor envía una secuencia de segmentos 1, 2,. . . , N, y todos los segmentos llegan en orden sin error al receptor. Supongamos además que el acuse de recibo para el paquete n < N se pierde, pero los acuses de recibo N - 1 restantes llegan al remitente antes de sus respectivos tiempos de espera. En este ejemplo, GBN sería retransmitir no sólo paquete n, pero también todos los paquetes subsiguientes n + 1, n + 2, . . . , N. TCP, por otro lado, retransmitiría a lo sumo un segmento, a saber, el segmento n. Además, TCP ni siquiera retransmitiría el segmento n si el acuse de recibo para el segmento n + 1 llegó antes del tiempo límite para el segmento n.

Mi conclusión: en la práctica TCP es una mezcla entre ambos GBN y SR.

0

que estaba confundido por la declaración del libro también, pero creo que he encontrado la respuesta:

Ten en cuenta también lo que ocurre cuando el emisor envía una secuencia de segmentos 1, 2,. . . , N y todos los segmentos llegan en orden sin error al receptor. Supongamos además que se pierde el acuse de recibo del paquete n < N, pero los acuses de recibo N - 1 restantes llegan al remitente antes de sus respectivos tiempos de espera. En este ejemplo, GBN retransmitiría no solo el paquete n, sino también todos los paquetes subsiguientes n + 1, n + 2,. . . , N. TCP, por otro lado, retransmitiría a lo sumo un segmento, a saber, el segmento n. Además, TCP ni siquiera retransmitirá el segmento n si el acuse de recibo para el segmento n + 1 llegó antes del tiempo límite para el segmento n.

En realidad, en el ejemplo anterior, a pesar de que el paquete ACK para n+1 llega al remitente antes de su tiempo de espera, uno tiene que ser consciente de que el temporizador para el paquete n podría haber agotado el tiempo antes de que la llegada. Por lo tanto, dado que el paquete n expiró y el GBN no ha visto ACK(n+1) o ACK(n+2) ... hasta el momento, activará la retransmisión de todos los paquetes después de n.

Sin embargo, para TCP, el remitente solo enviaría el paquete n nuevamente en este momento específico.

P.S. esta pregunta ha sido muy antigua. Pero, de todos modos, con suerte eso podría ayudar a cualquiera.

0

ver estos enlaces, es fácil de entender acerca de GBN y SR:

Retroceso N protocolo (GBN): enter link description here

protocolo selectivo (SR): https://www.youtube.com/watch?v=Cs8tR8A9jm8

en GBN y protocolo SR, el receptor debe enviar un mensaje ACK para todos los segmentos que ha recibido en la ventana deslizante.

en protocolo TCP, el receptor no envía un mensaje ACK para todos los segmentos que ha recibido en la ventana deslizante. el receptor solo envía ACK para obtener los próximos segmentos que espera. significa que se enviarán menos mensajes ACK al remitente. por lo tanto, es bueno para reducir la congestión de la red.

En casos anormales, algunos segmentos se pierden (por congestión de red o error de bit), el tiempo de transmisión TCP es mayor que GBN y SR porque el receptor no puede enviar 2 mensajes ACK al mismo tiempo.

en mi opinión, perder segmento raramente sucede. de modo que el protocolo TCP optimiza para casos normales en lugar de casos anormales. en casos normales, TCP es mejor que GBN y SR

Cuestiones relacionadas