Presentation is loading. Please wait.

Presentation is loading. Please wait.

FTP - File Transfer Protocol TFTP – Trivial FTP

Similar presentations


Presentation on theme: "FTP - File Transfer Protocol TFTP – Trivial FTP"— Presentation transcript:

1 FTP - File Transfer Protocol TFTP – Trivial FTP

2 مرور کلی File Transfer Protocol (RFC 959) چرا FTP؟ اتصالات FTP
Trivial File Transfer Protocol (RFC 1350) TFTP و قالب پیغامهای TFTP’s مقایسه ی FTP و TFTP

3 چرا به سرویس FTP نیاز هست؟
مقصود: انتقال فایل بین دو کامپیوتر اهداف سرویس FTP پشتیبانی از اشتراک فایل (داده و برنامه) تشویق به استفاده غیر مستقیم و ضمنی از کامپیوترهای راه دور جداسازی کاربران از تنوع روشهای ذخیره ی فایل در میزبانها انتقال مطمئن و کارآی داده

4 مشکلات انتقال فایل به نظر می‌رسد انتقال فایل ساده باشد.
سیستمهای ناهمگون در موارد زیر با هم تفاوت دارند: سیستم عامل مجموعه ی کاراکترها قواعد نامگذاری ساختار دایرکتوریها ساختار و قالب فایلها FTP باید این مشکلات را حل کند.

5 ۲ اتصال FTP * Insulates users from “raw” FTP commands
* Persistent command and reply connection Non-persistent data connection client * Routes “raw” FTP commands * Receives server’s replies *Server uses port 20 for data connections Server is listening on port 21 for connection requests User Interface server User Protocol Interpreter Control Connection Server Protocol Interpreter 21 User Data Transfer Function Data Connection Server Data Transfer Function 20

6 ۲ اتصال FTP: برقراری ftp> open strauss.udel.edu Control Connection
Connected to strauss.udel.edu 220 strauss FTP server ready. 530 Please login with USER and PASS client 331 Password req for haggerty. Password: User Interface 230 User haggerty logged in. ftp> USER haggerty PASS mypass server User Protocol Interpreter Server Protocol Interpreter Control Connection User Data Transfer Function Data Connection Server Data Transfer Function

7 ۲ اتصال FTP: انتقال داده Control Connection Data Connection client
ls client.txt -rw-r--r-- haggerty client.txt User Interface 226 Closing Data Connection PORT 192,168,100,173,19,137 150 Data Connection will be open shortly LIST client.txt 200 Port Command Sucessful server User Protocol Interpreter User Protocol Interpreter Server Protocol Interpreter Server Protocol Interpreter Control Connection Passive open on Port 5001 User Data Transfer Function Data Connection Server Data Transfer Function Establish Data Connection

8 ۲ اتصال FTP: بستن ارتباط Control Connection Data Connection bye client
User Interface 221 Service Closing QUIT server User Protocol Interpreter Server Protocol Interpreter Control Connection User Data Transfer Function Data Connection Server Data Transfer Function

9 FTP Connections

10 اتصال TCP Client Server ftp> open server SYN SYN|ACK ACK
220 Service Ready ACK ftp> USER haggerty ACK 331 User OK,password? ACK ftp> PASS mypass ACK 230 User login OK ACK

11 انتقال داده در TCP Client Server ACK 200 Command Successful
PORT 192,168,0,173,19,137 ACK 200 Command Successful NLST client.txt ACK SYN SYN-ACK ACK 150 Data Connection will be open shortly ACK NAME LIST FIN FIN-ACK Control connection Data Connection ACK 226 Closing Data Connection ACK

12 دستورات مشتری در FTP (توسط واسط کاربر صادر می‌شوند)
توضیح get filename گرفتن فایل از خدمتگزار mget filename* گرفتن چندین فایل از خدمتگزار* put filename کپی فایل محلی به خدمتگزار mput filename* کپی چندین فایل محلی به خدمتگزار* open server ورود به خدمتگزار bye / close / exit خروج از خدمتگزار ls / dir گرفتن لیست فایلها در دایرکتوری جاری خدمتگزار lcd تغییر دایرکتوری محلی cd تغییر دایرکتوری کامپیوتر راه دور rhelp / remotehelp گرفتن لیست دستوراتی که خدمتگزار می‌پذیرد در این حالت، مفسر پروتکل کاربر چندین دستور به خدمتگزار خواهد فرستاد.

13 دستورات A-PDU FTP دستور توضیح LIST [filelist ] USER username
گرفتن لیست فایلها یا دایرکتوریها (ls / dir) USER username فرستادن اسم کاربری به خدمتگزار PASS password فرستادن رمز عبور به خدمتگزار PORT h1,h2,h3,h4,p1,p2 شماره ی پورت و آدرس IP مشتری RETR filename دریافت filename STOR filename ذخیره ی filename TYPE (ascii, image) تعیین نوع فایل

14 نمونه ای از جوابهای FTP 120 سرویس به زودی آماده خواهد بود
سرویس به زودی آماده خواهد بود تایید دستور تایید ورود کاربر تایید اسم کاربر، نیاز به وارد کردن رمز عبور سرویس موجود نیست کاربر وارد سیستم نشده است. عمل درخواست شده متوقف شد، از میزان تخصیص مجاز تخطی شده است.

15 خلاصه ی اتصالات FTP FTP از دو اتصال استفاده می‌کند: کنترل (اتصال دائم)
خدمتگزار پورت شناخته شده ی ۲۱ را به صورت منفعل باز می‌کند. مشتری از یک پورت موقت استفاده می‌کند و به صورت فعال به خدمتگزار وصل می‌شود. در نهایت، خدمتگزار اتصال کنترلی را می بندد. داده (اتصال بی دوام) مشتری یک پورت موقت را به صورت منفعل باز می‌کند. مشتری شماره ی پورت انتخاب شده را از طریق دستور PORT به خدمتگزار اعلام می‌کند. خدمتگزار شماره پورت را دریافت می‌کند و به صورت فعال و با استفاده از پورت شناخته شده ی ۲۰ به پورت موقتی مشتری وصل می شود.

16 ادامه اتصال داده این روش همیشه کار نمی کند. چرا؟
روش جایگزین استفاده از دستور PASV است. مشتری دستور PASV را به خدمتگزار می‌فرستد. خدمتگزار یک پورت موقت را انتخاب و به صورت منفعل باز می‌کند. خدمتگزار آدرس IP خود و پورت انتخاب شده را در پاسخ می‌فرستد. (کد ۲۲۷) مشتری به صورت فعال به پورت موقت خدمتگزار وصل می‌شود. در نهایت فرستنده ی داده پورت را می‌بندد.

17 مدل استاندارد ارتباط A Control B Data

18 مدل جایگزین ارتباط Control A Control B C Data

19 Trivial FTP (TFTP) فقط برای نوشتن/خواندن فایل در/به خدمتگزار استفاده می‌شود. نمی توان از دایرکتوریها لیست گرفت. برای راه اندازی دستگاههای بدون دیسک مناسب است. ایستگاههای کاری ترمینالهای X ساده و کم حجم: ۵ قالب پیغام روی UDP اجرا می‌شود. طوری طراحی شده است که در ROM جا شود. از پروتکل توقف و انتظار استفاده می‌کند. هیچگونه مکانیسم پیش بینی شده ای برای امنیت (ورود به سیستم) ندارد. TFTP uses the services of UDP on well known port 69.

20 قالبهای پیغام در TFTP RRQ: client to establish a connection for reading data from the server. WRQ: write data from the client to the server DATA: All data bytes are exactly 512 bytes long except the last block which is between 0 and 511 bytes…EOF indicator – if data is in exact multiples of 512, sender must send one extra block of zero bytes. DATA can be in NVT ASCII or octet (binary format) ACK: Block number is a 2byte field containing the number of the block received

21 برقراری ارتباط در TFTP

22 مثالی از یک جلسه ی TFTP

23 مقایسه ی FTP و TFTP FTP از امنیت حداقلی برخوردار است و دارای یک رویه برای ورود کاربر است. TFTP هیچ رویه ای برای ورود کاربر ندارد. FTP با استفاده از TCP یک سرویس قابل اعتماد ارائه می‌دهد. TFTP باید مشکل ارسال مجدد را خودش حل کند، زیرا از UDP استفاده می‌کند. FTP از دو اتصال استفاده می‌کند. TFTP از یک اتصال (توقف و انتظار) استفاده می‌کند. FTP دستورات متعددی دارد. TFTP فقط قادر به نوشتن/خواندن فایل در/از خدمتگزار است. Slide from William Boyer


Download ppt "FTP - File Transfer Protocol TFTP – Trivial FTP"

Similar presentations


Ads by Google