Čo je to TFTP?
TFTP je skratka pre Trivial File Transfer Protocol. Tento protokol sa používa, keď používatelia potrebujú kopírovať svoje súbory. Inými slovami, umožňuje užívateľovi ukladať a pristupovať k svojim súborom zo vzdialeného hostiteľa. Používa sa hlavne pre zavádzací systém. Aby sme pochopili tento koncept, urobme jednoduchý príklad: Predpokladajme, že máte zavedený bezdiskový systém alebo smerovač, pre ktorý musíte stiahnuť bootstrap súbory a konfiguračné súbory. V takom prípade potrebujete protokol na rýchle kopírovanie týchto súborov. Tu TFTP prichádza do obrazu. Je určený na kopírovanie týchto typov súborov.
TFTP vyžaduje iba IP (internetový protokol) a UDP (protokol užívateľských dát). TFTP vykonáva dve operácie, a to čítanie a zápis. V operácii čítania kopíruje súbory zo servera SIDE a klienta SIDE, zatiaľ čo v operácii zápisu pracuje presne oppoSIDE, kopíruje súbory zo strany klienta na stranu servera.
TFTP používa služby UDP na dobre známom porte 69.
Typy správ TFTP
Existuje päť typov správ TFTP. Nižšie je uvedený zoznam
- RRQ
- WRQ
- DATA
- ACK
- CHYBA
1) Správa RRQ
RRQ je skratka pre správu s požiadavkou na čítanie. Klient ju používa na vytvorenie pripojenia na čítanie údajov zo servera SIDE. Správa RRQ má tri polia OpCode, Názov súboru a Režim. OpCode má veľkosť 2 bajtov, obsahuje 1 na zobrazenie správy RRQ. Názov súboru definuje názov súboru. Režimy definujú režim prenosu. Režim prenosu môže byť netascii pre súbor ASCII alebo oktet pre binárne súbory. Formát správy RRQ je uvedený nasledovne.
2) Správa WRQ
WRQ je skratka pre správu s požiadavkou na zápis. Klient to používa na vytvorenie pripojenia na zápis údajov zo servera SIDE. Správa WRQ má rovnaké polia ako RRQ, iba rozdiel spočíva v tom, že OpCode obsahuje 2 na zobrazenie správy WRQ. Tu vidíme formát správy WRQ.
3) DATA správa
Klient aj server používajú dátové správy na odosielanie dátových blokov. Dáta obsahujú tri polia - OpCode, Číslo bloku a Dáta. OpCode obsahuje 3 na zobrazenie dátových správ. Číslo bloku je 2-bajtové pole obsahujúce číslo bloku. Všetky bloky sú postupne očíslované od 1. Klient a server používajú toto pole na posielanie dát postupne, takže prijímač kombinuje celú správu pomocou tohto čísla bloku. Dáta sú 512 bajtov. Dáta môžu byť prenášané vo forme netascii (súbor ASCII) alebo oktetu (binárny súbor). Formát správy DATA je uvedený nasledovne.
4) Správa ACK
ACK je skratka pre správu s potvrdením. Klient aj server používajú túto ACK na potvrdenie prijatia dátového bloku. Táto správa má 4 bajty. Obsahuje dve polia - OpCode a Block number. OpCode obsahuje 4 na zobrazenie správy ACK. Číslo bloku je dvojbajtové pole, ktoré obsahuje počet prijatých dátových blokov. Správa ACK môže byť tiež odpoveďou na správu WRQ, ktorá je odoslaná serverom klientovi, čo naznačuje, že server je pripravený prijímať údaje od klienta. Formát správy ACK je uvedený nasledovne.
5) CHYBA správa
Klient a server používajú správu ERROR, keď nie je možné nadviazať spojenie medzi klientom a serverom alebo keď sa pri prenose údajov vyskytla chyba. Odošle negatívnu odpoveď na správu RRQ alebo správu WRQ. Táto správa obsahuje tri polia - Oe, číslo chyby a údaje o chybe. OpCode obsahuje 5 na zobrazenie správy ERROR. Číslo chyby je 2 bajty, ktoré obsahujú číslo chyby a ich význam. Formát správy ERROR je uvedený nasledovne.
Nižšie je uvedený zoznam chýb s ich významom
0 - Neurčené
1 - Súbor nebol nájdený
2 - Porušenie prístupu
3 - Disk je plný alebo bola prekročená kvóta
4 - Nelegálna prevádzka
5 - Neznáme číslo portu
6 - Súbor už existuje
7 - Žiadny takýto užívateľ
Pole s údajmi o chybách obsahuje údaje o chybách v textovom formáte. Je to 1-bajtové pole a ukončené 0s.
Pripojenia TFTP
Na nadviazanie spojení používa TFTP správu RRQ, správu WRQ, správu ACK a správu ERROR. Kým ukončí pripojenie, TFTP použije správu DATA.
1) Vytvorenie spojenia
Proces vytvorenia spojenia na čítanie súborov sa líši od zápisu súborov.
- Čítanie: Klient odošle správu RRQ na vytvorenie pripojenia na čítanie. Táto správa obsahuje názov súboru a režim prenosu súboru. Po nadviazaní spojenia server odošle kladnú odpoveď správou DATA, ak je server schopný preniesť súbor. Ak to neodošle, pošlite zápornú odpoveď so správou CHYBA.
- Zápis: Klient odošle správy WRQ na vytvorenie spojenia na zápis. Táto správa obsahuje názov súboru a režim prenosu súboru. Po nadviazaní spojenia server odošle kladnú odpoveď so správou ACK, ak je server schopný kopírovať súbor. Ak to neodošle, pošlite zápornú odpoveď so správou CHYBA.
Tu je znázornenie operácie čítania a zápisu
2) Ukončenie pripojenia
Po prenose súboru musí byť pripojenie ukončené. TFTP nepoužíva na ukončenie spojenia špeciálnu správu. Ukončenie sa uskutoční odoslaním posledného dátového bloku, ktorý je menej ako 512 bajtov.
Odporúčané články
Toto je sprievodca TFTP, videli sme, čo je TFTP, rôzne typy správ v TFTP, spojenia, ako sa nadviazali spojenia TFTP a ukončenie, čo uľahčilo pochopenie pojmov. Dúfam, že vám tento článok pomôže. Viac informácií nájdete aj v nasledujúcom článku -
- FTP vs TFTP
- Príkazy FTP
- Programovanie verzus vývoj webových aplikácií
- Druhy webhostingu