TFTP (Trivial File Transfer Protocol) е приложен мрежов протокол, позволяващ двустранен трансфер на файлове. Тъй като е опростен (не поддържа работа с директории, автентикация на потребителите и някои други възможности на FTP), TFTP изисква много малко количество памет. Затова е удобен за съхранение или възстановяване и актуализиране на операционните системи на рутерите и други управляеми мрежови устройства. Работи върху транспортния протокол UDP. Също така е и елемент от протокола за мрежово зареждане на операционни системи Preboot Execution Environment (PXE), където е имплементиран във фирмуера (програмното осигуряване, което е за писано в ROM / NVRAM паметта на мрежовата карта на компютърната система. ТFTP е дефиниран за първи път през 1980 г. от IEN 133. От 1992 г., той е дефиниран в IETF RFC 1350. След това са въведени известни разширения, които са документирани в по-късни RFC-та. Поддръжката на TFTP се появява за първи път в ОС BSD v.4.3.

Поради липса на мерки за сигурност е опасно TFTP да се използва върху Internet. Следователно TFTP е подходящ предимно за частни, локални мрежи.

Повърхностен преглед редактиране

TFTP е опростен протокол за предаване на файлове, имплементиран върху протокола UDP и номер на порт 69.

Комуникацията се инициира от клиента, който подава заявка за четене или запис на файл върху сървър. Ако сървъра удовлетвори заявката, връзката е отворена и започва изпращане на файла на блокове с фиксирана дължина от 512 байта. Всеки пакет с данни съдържа един блок и трябва да бъде потвърден посредством потвърждаващ пакет преди следващият пакет да бъде изпратен. Пакет с дължина по-малка от 512 байта сигнализира за край на трансфера. Ако бъде загубен пакет, получателя ще чака до изтичане на интервал от време (timeout) и ще предаде отново последния, изпратен от него пакет (който може да съдържа данни или потвърждение). По този начин ще сигнализира на изпращащата страна да предаде отново изгубения пакет. Така всяка от страните трябва да пази само последния изпратен пакет, т.к. с изчакването за потвърждение преди предаване е гарантирано, че всички предходни пакети са получени. И двете машини, участващи в трансфера са и получатели и предаватели. Едната изпраща пакети с данни и получава потвърждения, а другата – предава потвърждения и получава данни. Използването на порт 69 не е задължително. Трансфера започва на този порт, но може да продължи на портове, избрани по случаен принцип. ...