Кіріспе
Желілік инженериядағы хабарламалардың уақыт шегі Time to live (TTL) немесе hop limit – компьютерде немесе желідегі деректердің өмір сүру ұзақтығын немесе мерзімін шектейтін механизм. TTL деректерге тіркелген немесе ішкі құрылымына енгізілген санаушы немесе уақыт белгісі түрінде іске асырылуы мүмкін. Белгіленген оқиға саны немесе уақыт кезеңі өткеннен кейін деректер жойылады немесе жаңадан тексеріледі. Компьютерлік желілерде TTL дерек пакеттерінің үздіксіз айналып жүруін қамтамасыз етеді. Компьютерлік қолданбаларда TTL көбінесе өнімділікті арттыру және деректерді кэштеуді басқару үшін пайдаланылады.
Time to live (TTL) or hop limit is a mechanism which limits the lifespan or lifetime of data in a computer or network. TTL may be implemented as a counter or timestamp attached to or embedded in the data. Once the prescribed event count or timespan has elapsed, data is discarded or revalidated. In computer networking, TTL prevents a data packet from circulating indefinitely. In computing applications, TTL is commonly used to improve the performance and manage the caching of data.
IP-пакеттер
Интернет протоколы бойынша TTL 8 биттік өріс болып табылады. IPv4 тақырыбында TTL – 20 октеттің 9-шысы. IPv6 тақырыбында бұл 40 октеттің 8-шісі. TTL ең жоғары мәні 255 – бір октеттің ең жоғары мәні. Ұсынылатын бастапқы мән – 64. Өмір сүру уақытының мәні IP-датаграмманың Интернет жүйесінде болуы мүмкін уақыттың жоғарғы шегі ретінде қарастырылуы мүмкін. TTL өрісін датаграмманы жіберуші орнатады, ал маршрут бойындағы әрбір маршрутизатор оны мақсатына қарай азайтады. Егер TTL өрісі датаграммасы өзінің мақсатына жеткенге дейін нөлге жетсе, онда датаграмма жойылды және Интернет-бақылау хабарламасы протоколы (ICMP) қателік датаграммасы (11 – Уақыт асып кетті) жіберушіге қайтарылады. TTL өрісінің мақсаты – Интернет жүйесінде жеткізілмейтін датаграмманың айналып жүруіне және осылайша жүйенің «өлімсіздермен» толып кетуіне жол бермеу. Теориялық тұрғыдан алғанда, IPv4 бойынша өмір сүру уақыты секундтармен өлшенсе де, датаграмманы өткізген әрбір хост TTL-ді кем дегенде бір бірлікке азайтуы керек. Іс жүзінде TTL өрісі әрбір секірісте бірге азаяды. Осы практиканы ескере отырып, IPv6-да өріс «hop limit» деп аталады.
DNS жазбалары
TTL-дер домендік атаулар жүйесінде (DNS) де кездеседі, онда оларды белгілі бір ресурс жазбасы үшін авторитетті атау сервері орнатады. Кэштеу (рекурсивті) атау сервері ресурс жазбасын авторитетті атау серверінен сұрағанда, ол бұл жазбаны TTL-де көрсетілген уақытқа (секундтарда) кэштейді. Егер түйінді шешуші TTL мерзімі біткенге дейін кэштеуші атау серверінен дәл сол жазбаны сұраса, кэштеуші сервер оны авторитетті атау серверінен қайта алудың орнына кэштелген ресурс жазбасымен жауап береді. NXDOMAIN (әлі жоқ домен) жауаптарының TTL, SOA жазбасының MINIMUM өрісінің ең төменгі мәні мен SOA-ның өзінің TTL-інің ең төменгісінен белгіленеді және шешушінің теріс жауабын қанша уақыт сақтауға болатынын көрсетеді. Ұзындығы қысқа TTL-дер авторитетті атау серверінде жүктемені арттыруы мүмкін, бірақ веб-серверлер немесе MX жазбалары сияқты маңызды қызметтердің мекенжайын өзгерткенде пайдалы болуы мүмкін, сондықтан қызмет ауыстырылғанға дейін DNS әкімшісі оларды көбінесе төмендетеді, бұл ықтимал бұзылыстарды азайтуға көмектеседі. Өлшем бірлігі – секунд. DNS үшін бұрынғы кең таралған TTL мәні 86400 секунд, яғни 24 сағат болатын. 86400 TTL мәні, егер DNS жазбасы авторитетті атау серверінде өзгертілсе, әлемдегі DNS серверлері клиенттің соңғы жаңартуынан кейін 24 сағатқа дейін ескі мәнді көрсетуі мүмкін екенін білдіреді. Апаттық қалпына келтіру (DR) жүйесінің бөлігі болып табылатын жаңа DNS әдістерінде кейбір жазбалар қасақана түрде өте төмен TTL-мен орнатылуы мүмкін. Мысалы, 300 секундтық TTL негізгі жазбалардың 5 минут ішінде толуына көмектеседі, осылайша жазбалар бүкіл әлемде жылдам жойылады. Бұл әкімшілерге жазбаларды уақтылы түрде өңдеуге және жаңартуға мүмкіндік береді. TTL мәндері «жазба бойынша» болады және бұл мәнді нақты жазбаларға орнату кейде әлемдегі барлық стандартты DNS жүйелерінде автоматты түрде орындалады. Дегенмен, кейбір кэштеу DNS-серверлері авторитетті жазбаларға қарамастан өздерінің TTL-дерін орнатады, сондықтан TTL мерзімі өткеннен кейін барлық төменгі DNS-серверлерінде жаңа жазбалар бар екеніне кепілдік беру мүмкін емес.
HTTP-тің түрі
Өмір сүру мерзімі жазбаның қандай күні мен уақытта жарамсыз болары арқылы да көрсетілуі мүмкін. HTTP жауаптарындағы Expires: тақырыбы, сұраныстар мен жауаптардағы Cache Control: max age тақырып өрісі және HTTP cookie-лердегі expires өрісі осылайша өмір сүру мерзімін көрсетеді.