Porque es la opción más simple que hace el trabajo .
El análisis de Quora User tiene fallas en un aspecto crítico: al contrario de lo que mucha gente piensa, TCP no le da a la aplicación de envío la confirmación de la recepción de datos por parte de la aplicación receptora .
Cuando la aplicación de envío entrega algunos datos al SO para ser entregados, el SO devuelve un reconocimiento de que los datos están ahora bajo su cuidado y hará todo lo posible para enviarlos, no que “ya se hayan enviado y recibido” . Si la red falla en ese punto, el envío se retrasará … o posiblemente se eliminará por completo después de un largo retraso.
- ¿Cuál es la diferencia entre un marco, un paquete y un segmento con referencia al modelo OSI?
- ¿Cómo funciona exactamente una dirección IP porque hay más de 256 ^ 4 dispositivos conectados a Internet?
- ¿A qué red corresponde el NetID en su dirección IPv4?
- ¿Cómo rastrean los propietarios de contenido una dirección IP que descarga películas?
- ¿Cómo mide el proveedor de servicios de Internet nuestro uso de Internet?
Incluso cuando los datos se han entregado a la máquina remota, la aplicación receptora puede estar en un estado que no sea “escuchar nuevos movimientos”, por lo que es posible que ni siquiera lea los datos entrantes. (Algo así sucede ocasionalmente en la Casa de Ho, cuando Quora me distrae a mitad de la conversación, para molestia considerable de mi esposa).
Esta es la razón por la cual su protocolo de juego tic-tac-toe (y realmente cualquier protocolo de aplicación que sincronice el estado entre participantes remotos) debe incluir reconocimientos a nivel de aplicación (es decir, el receptor debe enviar un mensaje de retorno, informando al remitente que el movimiento ha sido recibido y procesado ). Una vez que esto esté en su lugar, de repente te darás cuenta de que UDP es en realidad otra opción de transporte viable.
Entonces, ¿por qué elegir TCP? Porque escribir código de comunicaciones TCP es algo más fácil que UDP, ya que muchos problemas relacionados con las comunicaciones se manejan en el protocolo de transporte sin que su aplicación tenga que preocuparse por ello.