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.
- Step 1: SYN
- Step 2: SYN-ACK
- Step 3: ACK