Te doy la bienvenida a proyecto on line, ahora vas a hallar la solucíon a lo que estabas buscando.
Solución:
Cada extremo de una conexión TCP establece un número de secuencia inicial para los paquetes que envía y envía este número en el paquete SYN que envía como parte del establecimiento de una conexión.
No hay requisito para que cada extremo siga un procedimiento particular al elegir el número de secuencia inicial. El sistema operativo es libre de usar cualquier mecanismo que desee, pero generalmente es mejor si elige un número aleatorio, ya que es más seguro.
Desde ese punto de partida, cada paquete enviado por cualquiera de los extremos contiene dos números de secuencia: uno para especificar en qué parte del flujo se encuentra el paquete y un número de secuencia ACK que indica la cantidad de bytes. recibió. Ambos números se compensan con el número de secuencia inicial.
Por supuesto, lea todo sobre esto en Wikipedia: busque el “número de secuencia” en esa página para obtener todos los detalles sangrientos.
En 4.4BSD (y la mayoría de las implementaciones derivadas de Berkeley), cuando se inicializa el sistema, el número de secuencia de envío inicial se inicializa en 1. Esta práctica viola los requisitos del host RFC. (Un comentario en el código reconoce que esto es incorrecto). Esta variable luego se incrementa en 64 000 cada medio segundo y volverá a 0 aproximadamente cada 9,5 horas. (Esto corresponde a un contador que se incrementa cada 8 microsegundos, no cada 4 microsegundos). Además, cada vez que se establece una conexión, esta variable se incrementa en 64.000.