Una respuesta un poco larga. De hecho, la respuesta es que simplemente la idea del transporte RTP es muy diferente a la del TCP.
Se diferencian por varias razones, en las que puedo pensar en este momento:
- RTP no es un protocolo de capa 4. Un paquete RTP debe estar encapsulado por TCP o (en la mayoría de los casos) UDP. De hecho, RTP puede considerarse como una capa superior en términos de pila OSI. Un protocolo de capa superior NO conocerá el encabezado del paquete de un protocolo de capa inferior: el encabezado TCP o UDP se eliminará cuando el resto del paquete se pase al proceso RTP. Por lo tanto, no tiene oportunidad de ver qué número de secuencia estaba usando TCP o UDP. Recuerde, el paquete está siendo formado por RTP primero, luego se pasa a TCP / UDP. RTP no tiene oportunidad de saber de antemano qué número de secuencia utilizará Layer-4.
- Incluso si es posible, no solo copiaría el número de secuencia TCP o UDP. La forma en que TCP maneja el número de secuencia no es la forma en que RTP quiere que sea. En RTP, la secuencia aumenta en uno para cada contenido de datos. TCP maneja toda la numeración de manera bastante diferente. En RTP, el proceso de transmisión no se preocupa por la pérdida de paquetes, pero solo quiere detectarlo. El manejo se deja a la aplicación. Una aplicación de video puede repetir la última imagen en ausencia de un nuevo paquete, o una aplicación de audio puede generar un ruido de confort, etc. De hecho, no necesita algoritmos complejos para calcular el número de secuencia (como en TCP), solo necesita Una simple. Y en TCP, la diferencia entre dos paquetes consecutivos no es la misma en todos los casos, ajusta el tamaño de la ventana y la ventana de congestión y, por lo tanto, la diferencia numérica de dos paquetes consecutivos puede variar bastante. TCP conoce la longitud del paquete, etc. para manejarlo. Pero RTP no (como está en la capa superior).
- La mayoría de los casos RTP se transfiere usando UDP, ya que tiene sus propias subcapas para manejar otras cosas como secuenciación, sincronización, etc. En el encabezado UDP no hay ningún número de secuencia …
- La longitud de seq en el encabezado RTP es de 16 bits, donde TCP usa 32 bits.
- ¿Qué significa el sistema abierto en un modelo OSI?
- ¿Alguien puede rastrear mi identificación a través de una aplicación de chat como Viber? ¿Y cuánto tiempo desaparece la dirección IP si no inicio sesión?
- ¿Qué es la interconexión de código abierto (OSI)? ¿Qué son las capas?
- Cómo acceder a mi teléfono móvil a través de Internet usando la dirección IP
- ¿Qué es el modelo OSI y el modelo TCP?