TFTP va SFTP protokollari

|
TFTP va SFTP protokollari
|
bet | 12/18 | Sana | 20.05.2024 | Hajmi | 212,5 Kb. | | #245157 |
Bog'liq 5-musTFTP va SFTP protokollari.
FTP protokolida ikkita "kichik birodarlar" mavjud: SFTP - Simple FTP va TFTP - Trivial FTP.
TFTP - eng oddiy fayl uzatish protokoli. U UDP transport protokoli ustida ishlaydi va faqat eng asosiy fayl uzatish operatsiyalarini, ya'ni fayllarni yozish va o'qishni ta'minlaydi. TFTP oddiy va ishlatish uchun qulay protokol bo'lib ishlab chiqilgan. U katalog ro'yxatiga ruxsat bermaydi va hech qanday autentifikatsiyaga ega emas, lekin u barcha Internet standartlariga muvofiq 8 bitli ma'lumotlarni uzatishi mumkin.
Ma'lumotlarni uzatish UDP orqali amalga oshirilganligi sababli, TFTP protokoli ma'lumotlarni ishonchli etkazib berishning o'ziga xos usullarini - tasdiqlash paketlarini, ma'lumotlar bloklarini raqamlash va tasdiqlash paketlarini va boshqalarni amalga oshiradi. Hammasi TCP protokoli emulyatsiyasining soddalashtirilgan versiyasiga juda o'xshaydi.
TFTP faqat beshta buyruq bilan ishlaydi:
O'qish so'rovi (RRQ) - o'qish so'rovi.
Write so'rovi (WRQ) - yozish so'rovi.
Ma'lumotlar (DATA) - ma'lumotlar paketi.
Acknowledgement (ACK) - tan olish.
Xato (ERROR) - xato.
Ma'lumotlarni uzatish jarayoni faylni o'qish yoki yozish uchun TFTP mijozining serverga so'rovi bilan boshlanadi. Ulanish so'rovlardan biriga yozish yoki o'qish uchun tayyorligi tasdiqlovini olgandan keyin o'rnatiladi.
Ulanishni ochishda tomonlarning har biri (tasodifiy) o'ziga xos identifikatorni tanlaydi - TID, u ishlatiladi va ulanish porti sifatida UDP. Har bir yuborilgan paket ulanishning har bir tomoniga mos keladigan ikkita TID bilan bog'langan. Dastlabki so'rov TF TP ulanishining tashabbuskori tomonidan ulanish portini ko'rsatadigan UDP port 69 (boshlash porti) orqali yuboriladi. Keyingi almashinuv allaqachon ma'lumotlarni uzatishda ishtirokchilar tomonidan tanlangan portlar orqali amalga oshirilmoqda.
Agar server so'rovga ruxsat bersa, almashinuv ochiladi va ko'rsatilgan fayl uzatiladi (512 bayt bloklarda). Uzatilgan ma'lumotlarning har bir paketida bitta blok (512 bayt) va uzatiladigan oqimdagi blok raqami mavjud. Har bir blokning maqsadli xostga kelishi qabul qilingan blokning raqami bilan ACK (tasdiqlash) paketi bilan tasdiqlanishi kerak. Tasdiqlash paketini olgandan keyingina keyingi ma'lumotlar paketi yuboriladi.
Agar paket uzunligi 512 baytdan kam bo'lsa, bu aloqa kanalini yopish uchun signal bo'lib xizmat qiladi. Agar uzatish paytida paket yo'qolsa, ma'lum vaqtdan keyin server ushbu ma'lumotlar paketini qayta yuboradi.
Yomon paketlar yuborilishiga sabab bo'ladigan uchta holat mavjud:
Tasdiqlanmagan so'rov, masalan, fayl topilmadi, kirish huquqi yo'q va hokazo.
Yaroqsiz paket formati, masalan, almashtirish xatosi yuz berdi.
Kerakli resursga kirishni yo'qotish.
Ko'p sonli xato xabarlari bilan ulanish tomonlardan birining tashabbusi bilan yopilishi mumkin.
TFTP tranzaksiya sxemasi quyidagicha:
A xost B hostiga WRQ so'rovini yuboradi. Manba porti TIDA, maqsad porti 69. Paket fayl nomi, uzatish turini o'z ichiga oladi.
B xost A hostiga ACK (blok raqami - 0) yuboradi. Manba porti TIDB, maqsad porti TIDA.
A xost (TIDA orqali TIDB ulanishi orqali) DATA buyrug'i va ma'lumotlar blokini yuboradi. Paketda blok raqami ham mavjud.
SFTP fayl uzatish protokoli foydalanuvchi FTP kabi murakkab va noqulay emas, balki TFTP ga qaraganda biroz moslashuvchan va ishonchli protokolga muhtoj bo'lgan hollarda mashhurdir.
SFTP foydalanuvchi autentifikatsiya mexanizmlarini, fayllarni uzatishni, kataloglarni ko'rib chiqishni, joriy katalogni o'zgartirishni, fayllar nomini o'zgartirish va o'chirishni qo'llab-quvvatlaydi. Foydalanuvchi masofaviy FTP server bilan bajaradigan ko'pgina operatsiyalar uchun ushbu xizmat etarli. SFTP 8-bitli ma'lumotlar oqimini uzatishi mumkin va TFTP kabi buyruqlar va ma'lumotlar uchun faqat bitta ulanish kanalidan foydalanadi. TFTP-dan farqli o'laroq, SFTP TCP ning 115-portida ishlaydi.
SFTP buyruqlari oldingi buyruqdan ishlov berish javobini olgandan keyin birma-bir yuboriladi. Barcha buyruqlar to'rtta ASCII belgisidan va buyruqni argumentlardan ajratib turadigan bo'sh joy belgisidan iborat. Server javobi javob kodi va matnli xabardan iborat. Har bir buyruq va javob belgi bilan tugashi kerak ("\ 0" C da qatorni tugatish bilan bir xil). SFTP ma'lumotlarni uzatishni boshqarish uchun faqat 11 ta asosiy buyruq va faqat 4 ta javob kodidan foydalanadi (belgilar: "+" - muvaffaqiyatli, "-" - xatolar, "!" - diqqat, "" - boshqa).
SFTP buyruqlari o'xshash FTP buyruqlari bilan deyarli bir xil sintaksis va maqsadga ega.
Quyidagi SFTP stsenariysida SFTP serveri - "MIT-XX" ulanishni kutmoqda. SFTP serveriga ulangan "MKL" (parol "foo") foydalanuvchisi "LIST F PS:" buyrug'i bilan "PS" katalogidan standart formatdagi fayllar ro'yxatini so'radi, so'ngra kengaytirilgan formatdagi fayllar ro'yxatini so'radi. "LIST V PS:" buyrug'i bilan bir xil katalog. Keyin foydalanuvchi "Small.File" nomli faylga so'rov tuzdi - "RETR SMALL.FILE" buyrug'i. Bunga javoban server o'z hajmini - 69 ni qaytardi va uni jo'natishga tayyorladi. Shundan so'ng foydalanuvchi faylni SEND buyrug'i bilan o'qiydi. DONE buyrug'i ulanishni yopdi.
Legend: S - SFTP serveri, U - SFTP foydalanuvchisi.
S: + MIT-XX SFTP xizmati
U: USER MKL
S: + MKL yaxshi, parolni yuboring
U: PASS foo
S:! MKL tizimga kirdi
U: LIST F PS:
S: + PS:
Kichik. Fayl
U: LIST V PS:
S: + PS:
Kichik.Fayl 1 69 (7) P775240 2-94-avgust 20:08 MKL
U: RETR SMALL.FILE
S: 69
U: YUBORISH
S: Bu kichik fayl, fayl tugatuvchi nullsiz yuboriladi.
U: BAJARILDI
S: + MIT-XX yopilish aloqasi
Taqdim etilgan stsenariydan ko'rinib turibdiki, SFTP oddiy "so'rov-javob" sxemasi bo'yicha tuzilgan oddiy protokol bo'lib, minimal buyruqlar to'plamiga ega bo'lib, ma'lumotlarni diskda uzatish va joylashtirishni boshqarish uchun barcha kerakli operatsiyalarni bajarishga imkon beradi. .
SFTP bitta foydalanuvchi va bitta server bilan ishlash juda qoniqarli va ulardan foydalanish va dasturlash oson.
|
| |