Segmento UDP

UDP Servicios
TCP Servicios
Demultiplexing
Es un proceso que se da en el receptor, mediante el cual se envía la data desde la capa de transporte al correspondiente socket.
Multiplexing
El proceso en el emisor, de recolectar chunks de diferentes sockets y encapsular cada uno con un header para crear segmentos y pasarlos a la capa de transporte.
Por que usar UDP?
UDP Checksum
Brinda detección de errores. Se realiza haciendo el complemento a 1 de la suma de todas las palabras de 16 bits del segmento UDP. El resultado se pone en el campo cheksum del header.

Calculo del checksum (UDP)

rdt 1.0

rdt 2.0

rdt 2.1


rdt 2.2


rdt 3.0

Pipelined Reliable Data Transfer Protocols
Go-back-N


Selective Repeat


Conexión TCP - Características
MSS
Maximum Segment Size: es la mayor cantidad de data que se puede meter en un segmento. Se calcula teniendo en cuenta el tamaño del frame mas grande que puede enviar el host actual (MTU, Maximum Transmission Unit). Para asegurarse que el segmento TCP entre en un único frame al encapsularse dentro del datagrama IP.
La data a enviar se parte en MSS y se mete dentro de un segmento TCP.
Segmento TCP
Header Length (4 bits): Especifíca el largo del header en cantidad de palabras de 32 bits. El header puede variar debido al campo Options. Normalmente está vacío, y el tamaño del header es de 20 bytes.
ACK (1 bit): si esta en 1 indica que es un ACK.
RST (1 bit) SYN (1 bit) FIN (1 bit): se usan para configurar la conexión.
Numeros de secuencia y de ack: El número de secuencia es el número de byte dentro del stream de bytes, del primer byte del segmento (data).
El ACK es el número de secuencia del próximo byte que se está esperando.

Telnet (TCP, 23)

Cuando se dice que un ACK es piggybacked?
cuando ademas del ACK lleva datos en el segmento.
Estimación del RTT

Fast Retransmission
Cuando se reciben tres ACK duplicados, se reenvía el segmento correspondiente a ese ACK para evitar que salte el timeout.
TCP solo re-transmite si hubo timeout o tres ACK duplicados.
TCP es Go-back N o Selective Repeat?
Se parece a GBN porque mantiene una base y un nextSeqNum, pero TCP no retransmite todos los paquetes sin ACK si se pierde un ACK. Ademas tiene buffer en el receptor como Selective Repeat. Por lo tanto es un híbrido entre Go-back N y Selective Repeat.
TCP permite que lleguen segmentos desordenados, porque tiene buffer de recepción. Ademas si se da un timeout solo retransmite el segmento que ocasionó el timeout.