انجام پایان نامه

درخواست همکاری انجام پایان نامه  بانک مقالات رایگان انجام پایان نامه

سفارش پایان نامه

|

انجام پایان نامه ارشد

 پایان نامه 

پایان نامه‏ کامپیوتر

انجام پایان نامه‏ ارشد کامپیوتر

پروتکل انتقال فایل  (FTP)
پروتکل انتقال فایل که آن را ftp می نامیم ابزاریست مطمئن برای انتقال فایل بین کامپیوتر ها یی  که به شبکه اینترنت متصل هستند. خدماتی که این  پروتکل ارائه می کند عبارتند از :
•    تهیه لیستی از فایلهای موجود ازسیستیم فایل کامپوتر راه دور
•    حذف، تغییر نام و جابجا کردن فایلهای کامپیوتر راه دور
•    جستجو در شاخه های ( دایر کتوریهای) کامپیوتر راه دور
•    ایجاد یا حذف شاخه روی کامپیوتر راه دور
•    انتقال فایل ازکامپیوتر میزبان
•    انتقال فایل و ذخیره ی آن از  کامپیوتر میزبان به کامپیوتر راه دور
قابلیت هایی که پروتکل FTP عرضه می کند می تواند برای سیستم سرویس دهنده بسیار خطرناک باشد چرا که بسادگی می توان فایل های یک کامپیوتر راه دور را آلوده یا نابود کرد. فلذا در این پروتکل کاربران باید قبل ازتقاضای هر سرویسی کلمه ی عبور خود را وارد نمایند و سرویس دهنده پس از شناسایی کاربر سطح دسترسی وعملیات مجاز برای کاربر را تعیین می کند و یک نشست FTP آغاز می شود. FTP این قابلیت را ندارد که بتوان همانند پروتکل Telnet برنامه ای را برروی ماشین راه دور اجرا کرد بلکه فقط روشی سریع ساده و مطمئن برای خدمات فایل به کاربران راه دور محسوب می شود. حال باید ارتباط بین سرویس دهنده و سرویس گیرنده FTP را تشریح نماییم:
در پروتکل FTP  برای شروع یک نشست بین برنامه سرو.یس دهنده و برنامه ی سرویس گیرنده باید دو ارتباط همزمان ازنوع TCP بر قرار شود. به هر یک از این ارتباطات در ادبیات پروتکل FTP ،کانال گفته می شود. این دو کانال عبارتند از :
•    کانال داده :  یک ارتباط TCP با پورت شمارهی 20 از سرویس دهنده که روی آن داده ها ( مثلا بلوکهای یک فایل ) مبادله می شوند .
•    کانال فرمان:  یک ارتباط TCP   با پورت شمارهی 21 که روی آن فرامین لازم برای مدیریت فایلها رد و بدل می شود.
دلیل لزوم برقراری دو کانال مجزا بین سروس دهنده و سرویس گپیرنده ان است که بتوان بدون قطع جریان داده ها  فرامین را بطور همزمان مبادله کرد. بعنوان مثال  در حین اتقاال یک فایل می توان روی کانال فرمان دستور لغو عمل انتقال یا تغییر مود انتقال را صادر کرد. ذکر این نکته ضروری است که در پروکتل FTP ازسیستم spooler یا صف برای انتقال فایلها استفاده نمی کند بلکه عملیات انتقال به صورت بلادر نگ انجام می گیرد . ( سیستمهایی مثل مدیریت چاپ در پس زمینه عمل می کند یعنی وقتی پروسه ای تقاضای چاپ یک سند را می دهد سیستم عامل آن را به صف میکند تادر موقع مناسب  آنرا چاپ نماید فلذا مشخص نیست از زمان صدور فرمان چاپ چه مدت طول بکشد تا سند چاپ شود چرا که اولویت با پروسه هایی است که در پیش زمینه اجرا می شوند .)
به گونه ای که اشاره شد سرویس دهنده FTP بایستی دو پروسه همزمان ایجاد نماید که یکی وظیفه مدیریت ارتباط روی کانال فرمان را به عهده داشته و اصطلاحاً مفسر پروتکل یا پروسه PI  نامیده می شود . وظیفه پروسه دیگر مدیریت انتقال داده است وبه DTP یا پروسه انتقال داده  معروف است . پروسه PI   همیشه به پورت شماره 21 گوش میدهد و پروسه DPT به پورت شماه 20 مقید شده است.
روشهای برقراری یک نشست FTP
برقراری ارتباط بین سرویس دهنده وسرویس گیرنده FTP با دو روش امکان پذیر است :
•    روش معمولی یا NORMAL MODE
•    روش غیر فعال یا PASSIVE MODE  
در روش معمولی برای برقراری یک نشست FTP مراحل زیر انجام میشود :
1) در برنامه سمت سرویس گیرنده ( برنامه سمت مشتری ) ابتدا دو سوکت نوع TCP با شماره پورت تصادفی بالای 1024 ایجاد می شود .
2) در مرحله دوم برنامه سمت مشتری سعی می کند با استفاده ازدستور () CONNECT ارتباط یکی از سوکتهای ایجاد شده را با پورت شماره 21 ازسرویس دهنده برقرار نماید. اگر این ارتباط برقرار شود در حقیقت کانال فرمان باز شده و پروسه PI آماده تفسیر فرامین صادره ازسمت مشتری می باشد .
3) برنامه سمت مشتری با فرمان PORT به برنامه سمت سرویس دهنده شماره پورت سوکت دوم را اعلام می ماند . ( در حقیقت برنامه مشتری روی سوکت دوم عمل () Iisten انجام می دهد )
4) در ادامه برنامه سرویس دهنده سعی می کند یک ارتباط با tcp با شماره پورت اعلام شده برقرار  نماید . یکی ازنکات عجیب در این پروتکل آنست که سرویس دهنده FTP موظف است اقدام به برقراری یک ارتباط TCP  ازطریق دستور ()CONNECT با برنامه مشتری نماید در صورتی که معمولا سرویس دهنده پذیرنده ارتباط است نه شروع  کننده ارتباط.
5) برنامه سمت مشتری ارتباط TCP شروع شده ازسرویس دهنده را تصدیق کرده و یک نشست FTP آغاز می شود.
                                                              






مثالی از یک نشست FTP به روش معمولی
حال باید روش غیر فعال را در برقراری یک نشست FTP بر رسی نمایم :
1) در برنامه ی سمت مشتری ابتدا دو سوکت نوع TCP با شماره  پورت های تصادفی بالای 1024 ایجاد می شود.
2) برنامه سمت مشتری سعی می کند ارتباط TCP یکی ازسوکتهای ایجاد شده را با پورت شماره 21 ازسرویس دهنده برقرار نماید. با برقراری این ارتباط کانال فرمان باز شده و پروسه PI آماده تفسیر فرامین صادره  ازسمت مشتری خواهد شد.
3) برنامه سمت مشتری با فرمان PASV به برنامه سمت سرویس دهنده اعلام می کند که خواستار یک نشست از نوع غیرفعاال است.
4) برنامه سمت سرویس دهنده یک سوکت با شماره پورت تصادفی ( بالای 1024 ) ایجاد کرده  و شماره آنرا به برنامه مشتری اعلام می نماید .
5) برنامه سمت مشتری ارتباط سوکت دوم خود را با شماره پورت اعلام شده برقرار کرده پس ازتصدیق ارتباط نشست FTP آغاز می شود.


                                                                     






مثالی از یک نشست FTP به روش غیر فعال
در دنیای یونیکس برنامه سمت سرویس دهنده بنام FTPD و برنامه سمت مشتری بنام FTP مشهور است. دقت کنید که برخی ازسرویس دهنده ازروش غیر فعال حمایت نمی کنند و فقط روش معمولی را می پذیرند.
در برنامه FTP دو نوع فرمان تعریف شده است که گاهاً با هم اشتباه می شوند. نوع اول فرامینی هستند که روی کانال فرمان یعنی بین سرویس دهنده و سرویس گیرنده رد و بدل می شود.  این فرامین که در ادامه معرفی می شوند فرامین داخلی هستند که بین کاربر و برنامه FTP  تعریف شده و کاربر برای بکار گیری برنامه FTP باید آنها را بداند. ( همانند فرامین داخلی DOS )
فرامین داخلی FTP
اگر به مراحل برقراری نشست FTP دقت کنید، متوجه خواهید شد که در هر دو روش ابتدا کانال فرمان برقرار می شد و تا پایان نشست این کانال برقرار خواهد شد در این بخش بررسی می کنیم که روی این کانال چه فرامینی مبادله می شود. فرامین داخلی FTP   تماماً حالت متنی داشته و حداکثر چهار حرفی هستند. برخی ازفرامین دارای پارامتر هستند که این پارامتر ها نیز به صورت متنی پس از یک فاصله خالی در ادامه فرمان قرار می گیرند.  خاتمه فرمان باکدهای r/ و n/ مشخص شده است. مثلا:  
PASV/ r/ n
اولین مزیت بهره گیری ازفرامین متنی آن است که کابر می تواند سلسله فرامین را دیده و به آسانی بفهمد و این مزیت به یک کاربر حرفه ای تا حد زیادی به درک روند عملیات و اشکال زدایی کمک خواهد کرد. دومین مزیت آن است که یک متخصص می تواند براحتی ( بدون نیاز به برنامه ftp و با ابزاری مثل telnet یا برنامه نویسی سوکت ) مستقیما با سرویس دهنده ارتباط برقرار کند. مجموعه فرامین FTP با توضیح مختصر در جدول زیر  آمده است. به گونه ای که مشاهده می شود این فرامین برای سه دسته عملیات در نظر گرفته شده است:
•    فرایند برقراری و ختم یک نشست ftp ( مثل فرمان PASV، PORT ،QUIT )
•    ارسال کلمه عبور جهت تعیین جواز و سطح سرویس دهی
•    فرامین مربوط به انتقال فایل، فهرست شاخه ها و عملیات مدیریت فایلها

عملکرد  فرمان    نام فرمان
تقاضای لغو و ناتمام رها کردن دستور قبلی    ABOR
اعلام مشخصه کاربری    ACCT
تقاضای تخصیص حافظه    ALLO
تقاضای ضمیمه شدن داده های ارسالی به یک فیل موجود    APPE
تقاضای تغییر شاخه جاری به شاخه بالاتر آن    CDUP
تقاضای تغییر شاخه جاری به شاخه ای که نامش به همراه دستور درج شده است    CWD
تقاضای حذف فایلی که نامش در جلوی دستور درج شده است     DELE
تقاضای راهنمایی و اخذ اطلاعات مفید در مورد فرامین    HELP
تقاضای انتقال فهرست شاخه ها    LIST
تقاضای ایجاد یک زیر شاخه در شاخه جاری    MKD
تنظیم روش انتقال (متنی و دودویی)    MODE
تقاضای فهرست گیری از شاخه جاری    NLST
تقاضای حذف شاخه جاری    RMD
ارسال کلمه عبور    PASS
تقاضا برای برقراری یک نشست غیر فعال    PASV
اعلام شماره پورت TCP برای برقراری کانال داده    PORT
تقاضای ختم نشست    QUIT
در پاسخ به هر فرمان صادره یک کد سه رقمی برمی گردد تا وضعیت اجرای فرمان را مشخص نماید.  برنامه سمت مشتری با پردازش این کد می تواند در مورد عمل بعدی خود تصمیم بگیرد. ( تصمیماتی مثل لغو فرمان ، تلاش مجدد صدور فرمان جای گزینی یا ختم نشست ) . هر یک از ارقام صدگان، دهگان ، یکان کد بازگشتی معنای خاصی دارد بعنوان مثال اگر رقم صدگان کد 1 یا 2 یا 3 باشد فرمان ارسالی موفقیت آمیز بوده ولی اگر 4 یا 5 باشد به معنای بروز خطا تلقی می شود. در ادامه معنای متفاوت رقم صدگان و دهگان که سه رقمی باز گشتی توسط سرویس دهنده را معرفی شده است. معانی رقم سوم ( یگان ) ازکد بازگشتی در اینجا نیامده زیرا تعداد آنها در سیستمهای متفاوت با هم فرق می کنند.

معنای رقم اول کد برگشتی در پروتکل FTP
معــنا    مقدار رقم
فرمان درخواستی شروع به اجرا شد . منتظر کد برگشتی بعدی باشید .    1
فرمان کاملا اجرا شد . ارسال فرمان بعدی مجاز است .    2
فرمان اجرا شده اما به دلیل کمبود اطلاعات لازم برای اجرا، معلق مانده است .    3
فرمان پذیرفته نشد ولی اجرای مجدد آن بلامانع است .    4
فرمان پذیرفته نشد و صدور مجدد آن بی فایده خواهد بود .    5
معنای رقم دوم کد برگشتی در پروتکل FTP
معــنا    مقدار رقم
فرمان صادره بی معنا بوده و تشخیص داده نشده است .    0
کد بازگشتی کدی است در پاسخ به تقاضای اطلاعات    1
کد بازگشتی کدی است در ارتباط با مدیریت نشست    2
کد بازگشتی کدی است در ارتباط با احراز هویت کاربر.    3
بلااستفاده .    4
کد بازگشتی کدی است در ارتباط با وضعیت سرویس دهنده     5

در پروتکل FTP ، انتقال فایل می تواند در چند حالت متفاوت انجام شود . اکثر سیستمهای عامل ( مثل یونیکس ) فقط دارای دو روش انتقال هستند : روش متنی و روش دودویی .








انجام پایان نامه

انجام پایان نامه کامپیوتر، انجام پایان نامه ارشد کامپیوتر، انجام پایان نامه، پایان نامه

برای دیدن ادامه مطلب از لینک زیر استفاده نمایید

  دانلود مقاله | انجام پایان نامه

سفارش پایان نامه