Time+to+Live(+TTL)

1. **INTRODUCCIÓN**
 * {$page} **

El TTL como tal es un campo en la estructura del paquete del protocolo IP. Sin este campo, paquetes enviados a través de rutas no existentes, o a direcciones erróneas, estarían vagando por la red de manera infinita, utilizando ancho de banda sin una razón positiva.
 * Tiempo de Vida ** o **Time To Live** (**TTL**) es un concepto usado en redes de computadores para indicar por cuántos nodos puede pasar un paquete antes de ser descartado por la red o devuelto a su origen.


 * 2. DESARROLLO**

El campo Período de vida tiene 1 byte de tamaño y se usa para indicar cuántos enlaces puede atravesar este datagrama de IP antes de que un enrutador lo descarte. El campo Período de vida, TTL (Time to Live), se diseñó como un contador de tiempo, para indicar el número de segundos que el datagrama podía estar vivo en la Internet. Un enrutador de IP tenía que realizar un seguimiento del momento en que recibía el datagrama y el momento en que lo reenviaba. El TTL se decrementaba en el número de segundos que el paquete pasaba en el enrutador.

Sin embargo, el estándar más moderno (RFC 1812) especifica que los enrutadores decrementen el TTL en uno cuando reenvíen un datagrama de IP. Por tanto, el TTL es una cuenta inversa de enlaces. El host emisor fija el valor inicial de TTL, que actúa como una cuenta máxima de enlaces. El valor máximo limita el número que puede atravesar el datagrama y previene que esté indefinidamente dando vueltas.

Algunos aspectos adicionales del campo TTL son:


 * Los enrutadores decrementan el TTL de los paquetes recibidos antes de consultar la tabla de enrutamiento. Si el TTL es 0, ese paquete se descarta y se envía un mensaje de ICMP Período expirado-TTL expirado en tránsito (Time Expired-TTL Expired In Transit) de vuelta al host emisor.
 * Los hosts de destino no comprueban el campo TTL.
 * Los hosts emisores deben enviar los datagramas de IP con un TTL mayor que 0. El valor exacto del campo TTL para los datagramas de IP enviados es el predeterminado del sistema operativo o el que especifique la aplicación. El valor máximo de TTL es 255.
 * Un valor recomendado es el doble del diámetro del conjunto de redes. El diámetro es el número de enlaces entre los dos nodos más alejados del conjunto de redes.
 * TTL es independiente de la métrica del protocolo de enrutamiento como la cuenta de saltos del Protocolo de información de enrutamiento (RIP) o el costo del Primero, el camino más corto abierto (OSPF).

Se puede referir erróneamente a TTL como un contador de saltos cuando de hecho es un contador de enlaces. La diferencia es sutil pero importante. Una cuenta de saltos es el número de enrutadores que se cruzan para llegar a un destino.

Una cuenta de enlaces es el número de enlaces del Nivel de interfaz de red que se cruzan para llegar a un destino. La diferencia entre cuenta de saltos y cuenta de enlaces es 1.

Por ejemplo, si los hosts A y B están separados por cinco enrutadores, la cuenta de saltos es de 5, pero la cuenta de enlaces es de 6. Un datagrama de IP enviado desde el host A hasta el host B con un TTL de 5 será descartado por el quinto enrutador. Un datagrama de IP enviado desde el host A hasta el host B con un TTL de 6 llegará al host B.

** Configuración de TTL con PING **
Se puede usar la utilidad PING con la opción <-i> para establecer el valor de TTL en un mensaje de eco de ICMP. Su sintaxis es:

PING -i [valor TTL] [dirección de IP o nombre de host]

El valor de TTL se expresa en decimal. Por ejemplo, para hacer un ping a 192.168.1.4 con un campo TTL con el valor 7, use el siguiente comando:

PING -i 7 192.168.1.4

El valor predeterminado de TTL para los mensajes de eco de ICMP que envía PING es de 32.

[]
 * 3. REFERENCIAS BIBLIOGRAFICAS**

(Estudiante: Nombre_Completo ) en fecha fecha de la edición
 * Seguimiento de aportes: (*) Esto es para hacer un seguimiento de los aportes, copiar la linea siguiente cada ves que se edite, no borrar las existentes.**


 * AUTOR:** {$creator}

//Esta pagina fue editada {$pagerevisions} veces. La ultima modificación fue realizada por//

//user:{$revisioneditor} el {$revisiondate}//