1 / 40

مهندسی فناوری اطلاعات

مهندسی فناوری اطلاعات. ارائه دهنده دکتر سيد امين حسيني hosseini@um.ac.ir E.mail: Home page: http://hosseini.staffcms.um.ac.ir. فصل 8. پروتکل های لایه کاربرد: Telnet ، FTP. پروتکل Telnet. به طور خلاصه : پروتکلی است که می توان بوسیله آن دستوراتی روی کامپیوتر راه دور اجرا کرد

kendis
Download Presentation

مهندسی فناوری اطلاعات

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. مهندسی فناوری اطلاعات ارائه دهنده دکتر سيد امين حسيني hosseini@um.ac.irE.mail: Home page:http://hosseini.staffcms.um.ac.ir

  2. فصل 8 • پروتکل های لایه کاربرد: Telnet،FTP

  3. پروتکلTelnet • به طورخلاصه: پروتکلی است که می توان بوسیله آن دستوراتی روی کامپیوتر راه دور اجرا کرد • برنامه Telnetیک ترمینال مجازی با مشخصه های ترمینال حقیقی سرویس دهنده ،بر روی ماشین کاربر شبیه سازی می نماید. به این ترمینال شبیه سازی شده اختصارا“NVT (Network virtual terminal) گفته می شود.

  4. پروتکلTelnet • برنامه telnet فرامین صادر شده از کاربر را دریافت وآنرا به نحو مناسبی به سمت کامپیوتر راه دور هدایت می کند،پس از تفسیر واجرای دستور نتیجه را به برنامه telnetکامپیوتر کاربر باز می گرداند.

  5. نشستTelnet: • منظور از یک «نشست Telnet»برقراری موفق یک اتصال TCPبا پورت 23از ماشین سرویس دهنده است به گونه ای که ماشین سرویس دهنده ضمن پذیرش این اتصال و احراز هویت کاربر آماده پذیرش فرمانهای صادره از کاربر و اجرای آنها شود.

  6. برنامهTelnetدر دو قسمت سازماندهی میشود • پروسه سرویس دهندهTelnet:این برنامه بر روی کامپیوتر سرویس دهنده نصب و اجرا می شود،موظف است تقاضاهای ورودی برای برقراری یک نشست را بپذیرد و به برنامه مشتری سرویس بدهد.این برنامه در محیط یونیکس به نامtelnetd :(telnet deamon) شناخته می شود.

  7. برنامهTelnetدر دو قسمت سازماندهی میشود • پروسه مشتریTelnet:این برنامه بر روی کامپیوتر کاربران نصب می شودو منطبق بر سخت افزار و سیستم عامل ماشین کاربر است.وظیفه دارد مراحل یک یک نشست را برقرار کند ویک ترمینال مجازی به گونه ای شبیه سازی نماید که فرامین صادره از کاربر منطبق و سازگار با ماشین سرویس دهنده باشد.این برنامه بطورعامtelnetنامیده شده است.

  8. جریان عبور داده ها بین پروسه های مبدأومقصد درtelnet terminal telnet telnetd Application Client Machine Terminal driver Tcp Server Machine Tcp Pscudo TTY internet

  9. سیستم عامل مبتنی بر پنجره • کاربر بجای صدور فرامین در خط فرمان، در یک محیط گرافیکی(شامل پنجره،منو،آیکون و نظایر آن) ازسیستم سرویس دریافت نماید.

  10. سیستم عامل مبتنی بر پنجره: • شرایط برقراری ارتباط با یک سیستم عامل مبتنی بر پنجره: • باید سرویس دهنده مورد نظر کاربر چنین سرویسی را فراهم آورده باشد. • برنامه telnetبر روی ماشین کاربر باید چنین قابلیتی را داشته باشد. • طرفین بر روی پارامترهای استاندارد توافق کنندتا بتوانند فرامین مربوط با پنجره را تحلیل کرده وخروجی لازم را نشان بدهد.

  11. اجرای برنامهtelnet • در این حالت باید ابتدا اسم برنامه ونام ماشین سرویس دهنده نوشته شود،در غیر این صورت برنامه منتظر می ماند تا فرامین داخلی telnet را اجرا نمایید. Merlin>telnet tpci_hpws4 Trying……………………….. Connected to tpci_hpws4. Escape character is ‘^]’. HP_UX tpci_hpws4 A.09.01 A9000/720(ttys2) Login:tparker password:********

  12. چند نکته • با فشاردادن کلیدهایctrl+] برنامه به حالت «فرامینکاربری» رفته و هر فرمانی که صادر می شود به جای ارسال به سرویس دهنده به صورت محلی و توسط برنامه telnet تحلیل خواهد شد. • برای ختم یک نشست telnetاز کلیدهای ctrl+Dاستفاده می شود و معادل با عمل خروج از سیستم یا logoutاست. • ttys2:قراردادی برای نحوه مبادله متنی کاربر و ماشین راه دور است. (Text teletype simulation)

  13. فرامینTelnet • فرامین استاندارد جهت محاوره(مشهور به فرامین داخلی): این فرمین دارای قالب استاندارد و جهانی هستند،بین سرویس دهنده telnetدر ماشین راه دور وبرنامه مشتری مبادله می شود،کاربر دخالتی در مبادله ای فرامین ندارد و فقط می تواند مبادله آنها را ببیند،ای فرامین در پروتکل telnetاستانداردسازی شده است. • فرامین کاربری:این فرامین یکسری از دستورات کاربری در محیط telnetهستندو با صدور آنها کاربر می تواند با برنامه telnetدر ماشین خود محاوره داشته باشدوحالات مختلف ترمینال خود را تنظیم نماید.

  14. کد ممیزه فرمان • برای تمایز بین داده ها و فرامین تعریف شده است و به گونه ای است که درون متن داده ها پیدا نمی شود. • هر فرمان ابتدا با کاراکتر کد 255(Escape code)شروع وسپس کد فرمان ونهایتا”در صورت لزوم کد انتخاب قرار می گیرد. • هر فرمان جمعا”سه بایت است که مقادیر عددی هر یک از آنها برای طرف مقابل ارسال می شود.«کد انتخاب می تواند در برخی از فرامین وجود نداشته باشد».

  15. قالب فرامین استاندارد درtelnet IACCOMMAND CODEOPTION CODE

  16. اصلی ترین کدهای فرمان • این 4 کد برای توافق و هماهنگی سرویس دهنده و برنامه telnetروی ماشین محلی کاربرد دارند. • Willبا کد251:با این کد یکی از طرفین می تواند عملی را به طرف مقابل تقاضا بدهد. • Won’tبا کد252:با این کد یکی از طرفین تقاضای عدم انجام یا لغو عمل را می نماید • Do:به معنای پذیرش تقاضای داده شده یا اعلام یک عمل انجام شده می باشد. • Don’t:به معنای عدم پذیرش تقاضای داده شده یا اعلام لغو یک عمل می باشد.

  17. اصلی ترین کدهای فرمان • (killprocess)Interrupt process:تقاضای قطع دائم یا موقت(تعلیق)آن. • Abort Output(Ao):تقاضای اجرا پروسه تا تکمیل نهایی بدون ارسال خروجی آن برای ترمینال. • Break(BRK): تقاضای قطع برنامه،(معادل Ctrl+Break)

  18. اصلی ترین کدهای فرمان • Are you There(AYT) :پرس وجو در خصوص آنکه طرف مقابل هنوز فعال است یا نشست را ترک کرده است. • Erase Line(EL):تقاضای حذف آخرین سطر از بافر طرف مقابل. • Erase Character(EC): تقاضای حذف آخرین کاراکتر از بافر طرف مقابل. • RCVD Will Echo : ازطرف مقابل دریافت شد. Echo تقاضای فعال شدن حالت

  19. TN3270 • سرویس دهنده TELNETبا قابلیت تغییر مجموعه کد با نام TN3270ارائه شده است. • عدد3270 اشاره به الگویی برای کدگذاری استریمهای داده دارد که با نام 3270 SNA Data Streamتوسط IBM از قبل برای شبکه SNAاستانداردسازی شده بود.

  20. TN3270 • TN3270پروتکلی است که برای انتقال استریمهای 3270بر روی شبکه TCP/IPتدوین وپیاده سازی شده است. • درTN3270برخلاف telnet(که داده ها را به صورت خط به خط ارسال میکند ) استریمهای داده پس از کدگذاری بصورت بلوکی ارسال می شوند.

  21. پروتکل انتقال فایل (FTP) • ابزاریست مطمئن برای انتقال فایل بین کامپیوترهایی که به شبکه اینترنت متصل هستند.

  22. خدمات پروتکل • تهیه لیستی ازفایل های موجود ازسیستم فایل کامپیوتر راه دور. • حذف،تغییر نام وجابجا کردن فایل های کامپیوتر راه دور. • جستجو در شاخه های (دایرکتوریهای)کامپیوتر راه دور.

  23. خدمات پروتکل • ایجاد یا حذف شاخه روی کامپیوتر راه دور. • انتقال از کامپیوتر راه دور به کامپیوتر میزبان(Download) • انتقال فایل وذخیره آن از کامپیوتر میزبان به کامپیوتر راه دور(upload)

  24. ارتباط بین سرویس دهنده ومشتری • در پروتکل FTPبرای شروع یک نشست باید دواتصال(کانال ( همزمان از نوع TCPبرقرار شود: • کانالداده:یک اتصال با پورت شماره 20از سرویس دهنده که روی آن داده ها مبادله می شوند. • کانال فرمان:یک اتصال TCPبا پورت شماره 21که روی آن فرامین لازم برای مدیریت فایلها رد وبدل می شوند.

  25. ارتباط بین سرویس دهنده ومشتری FTP • در پروتکل ftpهمه عملیات انتقال فایل در «پیش زمینه»foregroundانجام می شود. • پروسه مفسرپروتکل(PI):وظیفه مدیریت ارتباط روی کانال فرمان را به عهده دارد.همیشه به پورت شماره 21 گوش می دهد. • پروسه انتقال داده(DTP):وظیفه مدیریت انتقال داده ها را بر عهده دارد.همیشه به پورت شماره 20 گوش می دهد.

  26. روشهای برقراری یک نشست : روشمعمولی • در برنامه سمت مشتری ابتدا دو سوکت نوع TCPبا شماره پورت تصادفی بالای 1024 ایجاد می شود. • برنامه سمت مشتری با استفاده از دستور(Connect)سعی دارد تا اتصال یکی از سوکت های ایجاد شده را با پورت 21از سرویس دهنده برقرار نماید. • برنامه سمت مشتری با فرمان «PORT X»،به برنامه سمت سرویس دهنده شماره پورت سوکت دوم را اعلام مینماید، (برنامه مشتری روی سوکت دوم عمل listen()انجام میدهد.) • سرویس دهنده سعی در برقراری یک اتصال TCPبا شماره پورت اعلام شده از مشتری را دارد. • برنامه سمت مشتری اتصال TCP شروع شده از سرویس دهنده را تصدیق کرده و یک نشست FTPآغاز می شود.

  27. روشهای برقراری یک نشست : روش غیر فعال • در برنامه سمت مشتری دو سوکت نوع TCPبا شماره پورت تصادفی بالای 1024ایجاد می شود. • برنامه سمت مشتری اتصال TCP یکی از سوکت های اجرا شده را با پورت شماره 21از سرویس دهنده برقرار مینماید. • برنامه سمت مشتری با فرمان PASV به برنامه سمت سرویس دهنده اعلام می کند که خواستار نشست از نوع غیر فعال است.

  28. روشهای برقراری یک نشست : روش غیر فعال • برنامه سمت سرویس دهنده یک سوکت با شماره پورت تصادفی ایجاد کرده و شماره آن را به ماشین مشتری اعلام مینماید. • برنامه سمت مشتری اتصال سوکت دوم خودرا با شماره پورت اعلام شده برقرار کرده ،پس از تصدیق اتصال نشستFTP آغاز می شود.

  29. فرامینFTP • فرامین داخلی FTP: فرامین داخلی FTP تماما’’ حالت متنی داشته و حداکثر 4حرفی هستند. • برخی از فرامین دارای پارامتر هستند که این پارامترها نیز به صورت متنی پس از یک فاصله خالی در ادامه فرمان قرار می گیرند. • خاتمه هر فرمان و آرگومانهایش با جفت کد \r(معادل با کد carriage return) و \n (معادل با کد new line)مشخص می شود. • PASV\r\n:یک فرمان معتبر ftp

  30. مجموعه فرامین ftpبرای سه دسته عملیات • فرایندبرقراری و ختم یک نشست ftp(مثل فرمان PASV،PORT،QUIT) • ارسال کلمه عبور جهت تعیین جواز وسطح سرویس دهی • فرامین مربوط به انتقال فایل،فهرست گیری از شاخه ها و فایل ها وعملیات مدیریت فایل. در پاسخ به هر فرمان صادره یک کد سه رقمی بر میگردد.برنامه سمت مشتری با پردازش این کد می تواند در مورد عمل بعدی خود تصمیم بگیرد. در پروتکل ftpانتقال فایل در چند حالت متفاوت انجام می شود. : حالت متنی و روش دودویی

  31. فرامین کاربری برنامهFTP • کاربر برای استفاده از FTPباید از این فرامین اطلاع داشته باشد. • برنامه های FTP در سمت کاربر بر 2نوع هستند: • برنامه هایی که در خط فرمان اجرا می شوندو کاربر مجبوراست فرامین استفاده از برنامهFTPرا حفظ باشد. • برنامه هایی که دارای ظاهر گرافیکی هستند و کاربر از طریق آیکون ها یا منو ها فرمان مورد نظر خود را اجرا می کند. تذکر:برای بکارگیری برنامه FTP در خط فرمان لازم است ضمن درج نام برنامه ،نام ماشینی که سرویس FTPمی دهد به عنوان پارامتر ورودی ،جلوی نام FTPدرج شده باشد.

  32. عملLogin: • در صورت برقراری ارتباط بین برنامه کاربر وسرویس دهنده ftpباید اعتبار کاربر برای سرویس دهنده مشخص شود،هنگامی که که کاربر معتبر شناخته شدید به شما اجازه ورود به سیستم ftpداده خواهد شد به این عمل اصطلاحا’’loginگفته می شود. • پروسه ای که اعتبار کاربران را از لحاظ مجوز عبور و سطح دسترسی ،کنترل مینماید«پروسه ورود »(login processنامیده می شود.) • تذکر:با اضافه کردن گزینه d-در هنگام فراخوانی و اجرای برنامه ftpمی توان عمل اشکال زدایی انجام داد. با این گزینه تمام فرامینی داخلی که بین برنامه ftp وسرویس دهنده مبادله می شوندقابل مشاهده خواهند بود.

  33. فرایند برقراری یک نشست ftpاز دیدگاه کاربر • Login:تعیین شناسه کاربری وکلمه عبور و تایید آنها توسط سرویس دهنده. • Define directory:تعیین شاخه ای که پس از برقراری ارتباط به صورت پیش فرض برای شروع عملیات کاربر در نظر گرفته می شود. • Define file transfer mode:تعیین روش انتقال(متنی یا دودویی). • Start data transfer:امکان صدور فرمان و انتقال فایل را برای کاربر فراهم می آورد. • Stop data transfer:ارتباط را خاتمه می دهد.

  34. انتقال با واسطه در پروتکلFTP: • FTP این امکان را فراهم می سازد که نظارت بر انتقال فایلها از طریق ماشین سومی که بین برنامه مشتری و سرویس دهنده قرار گرفته است ،انجام شود.این رویه به عنوان «انتقال با واسطه» (THIRD PARTY TRANSFER)شناخته شده است وصدور مجوز دسترسی به سیستم فایل موجود در ماشین سرویس دهنده و نظارت بر فرامین صادره از طریق این ماشین انجام میگیرد. • استفاده از یک سیستم واسطه سرعت انتقال را افزایش می دهد.

  35. دسترسی بی نام بهFTP • روش راحت تری برای ایجاد دسترسی عمومی به یک مجموعه فایل یا دایرکتوری وجود دارد که «FTPبی نام »خوانده می شود. • با FTP بی نام دیگر نیازی به داشتن مجوز روی یک ماشین نیست.FTP این کار را با فعال کردن حالت «ورود بی نام»توسط یک کلمه عبور بنام «مهمان یاGUEST»یا کلمه عبور پوچ (یک رشته خالی انجام می دهد.)

  36. سرویس دهنده های FTP • بسیاری از ماشینهای unixبصورت پیش فرض به عنوان سرویس دهنده ftp عمل می کنند. • برای ارائه امکانات سرویس دهنده ftp،باید هنگام بوت شدن سیستم عامل ،ftp daemonاجرا شده باشد.

  37. دسترسی به سرویس FTPتوسط تعریف فهرست کاربران که در بسته FTP SERVERقرار دارد کنترل می شود ومی توان با رجوع به منوی userکاربران را تعریف و مجوزهای دسترسی آنها به سیستم فایل را تنظیم کرد.

More Related