Кіріспе

TFTP-ның бастапқы нұсқаларындағы желілік протоколдағы қателік – Sorcerer's Apprentice syndrome (SAS). Бұл қателік Гётенің 1797 жылғы «Der Zauberlehrling» поэмасынан (1940 жылғы «Фантазия» анимациялық фильмінің «Солдат шәкірті» бөлімі арқылы кеңінен танымал болған) аталған, себебі оның жұмыс істеу механизмі сиқыршының шәкіртіне оқитын апатқа ұқсас: мәселе пакеттердің әрқайсысының тоқтаусыз көбейіп, өсіп бара жатуына әкелді. Бұл мәселе интернет желісінің белгілі бір қателік режиміне байланысты туындады, және TFTP протоколын жасаушылардың қателігінен осы қателік режимі протокол жасалған кезде ескерілмеді; осы қателік режимі TFTP механизмдерімен өзара әрекеттесіп, SAS-ты құрады.

Техникалық негіздер

TFTP қарапайым синхронды жұмыс істейді: кез келген уақытта тек бір ғана пакет жолданып тұрады, және екі тараптың бірі алған әрбір пакетке жауап ретінде бір пакет жіберіледі (өткізу аяқталғанға дейін). TFTP спецификациясында кез келген пакет қабылданғанда, алушы тиісті жауап пакетін жіберуге міндетті екені көрсетілген. Осылайша, деректер блогын қабылдау растау жіберуді тудырады, ал растауды қабылдау келесі деректер блогын жіберуді тудырады. TFTP, сенімсіз желіде жұмыс істеуге арналған барлық протоколдар сияқты, тайм-ауттарды да қамтиды. Пакетті жібергеннен кейін, жауап күтіледі, сондықтан таймер іске қосылады. Егер таймер бітіп, жауап келмесе, белгілі бір әрекет орындалады; әдетте бастапқы пакет қайта жіберіледі.

Шешім

SAS-ты түзету үшін TFTP ережесіне өзгеріс енгізіліп, осылайша қайталау айналымы тоқтатылды.