Sobre TCP/IP

IP es como el servicio postal del internet.

Cuando se envía data sobre IP, esta se divide y se envía como múltiples packets.

Un packet se conforma de dos secciones: header y data.

No se garantiza que los packets lleguen al destino, estos a veces se pierden en la red.

Si envías 5 packets a la vez, no hay garantía de que lleven al destino al mismo tiempo ni en el mismo orden.

IP is a best-effort protocol.

TCP fue creado para resolver las limitaciones de IP.

TCP tiene dos garantías: a) entrega confiable de los paquetes, b) entrega de los paquetes en orden.

TCP usa números en secuencia para mantener el correcto orden de la información transmitida y de esta forma volver a armar los paquetes en el destino.

TCP es un connection-oriented protocol. Para interactuar primero se debe establecer una conexión. Un programa toma el rol de server y el otro el rol de client.

Una vez que se establece la conexión se crea un two-way channel, ambos el cliente y servidor pueden recibir y enviar información.

TCP is a bidirectional communication protocol, meaning both the client and server can send and receive data.

TCP Handshake, es un proceso de 3 pasos para establecer la conexión entre cliente y servidor.