1 / 28

Комп'ютерні мережі

Комп'ютерні мережі. Лекція 1 7 Протоколи прикладного рівня Telnet, FTP. План лекції. Telnet FTP. Telnet. Telnet — це протокол взаємодії, який підтримує двосторонній обмін окремими символами (байтами) і віртуальні термінали

Télécharger la présentation

Комп'ютерні мережі

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. Комп'ютерні мережі Лекція 17 Протоколи прикладного рівня Telnet, FTP

  2. План лекції • Telnet • FTP Лекція 17

  3. Telnet • Telnet — це протокол взаємодії, який підтримує двосторонній обмін окремими символами (байтами) і віртуальні термінали • КлієнтTelnet — це програма, яка підтримує інтерфейс командного рядка і систему команд деякого стандартного терміналу, або багатьох різних стандартних терміналів (VT52, VT100, ANSIта інших) • Сервер Telnetза стандартом займає 23-й TCP порт • Telnet — дуже старий протокол, він розроблявся ще наприкінці 60-х років минулого століття Лекція 17

  4. Стандарт протоколу Telnet – RFC 854–861 • RFC-0854, Telnet Protocol Specification / J. Postel, J.K. Reynolds. – May 1983 • RFC-0855, Telnet Option Specifications / J. Postel, J.K. Reynolds. – May 1983 • RFC-0856, Telnet Binary Transmission / J. Postel, J. Reynolds. – May 1983 • RFC-0857, Telnet Echo Option / J. Postel, J. Reynolds. – May 1983 • RFC-0858, Telnet Suppress Go Ahead Option / J. Postel, J. Reynolds. – May 1983 • RFC-0859, Telnet Status Option / J. Postel, J. Reynolds. – May 1983 • RFC-0860, Telnet Timing Mark Option / J. Postel, J. Reynolds. – May 1983 • RFC-0861, Telnet Extended Options: List Option / J. Postel, J. Reynolds. – May 1983. Лекція 17

  5. Сучасні розширення протоколу Telnet • RFC-1184, Telnet Linemode Option. / D.A. Borman – October 1990 • RFC-2941, Telnet Authentication Option / T. Ts'o, Ed., J. Altman. – September 2000 • RFC-2942, Telnet Authentication: Kerberos Version 5 / T. Ts'o. – September 2000 • RFC-2943, TELNET Authentication Using DSA / R. Housley, T. Horting, P. Yee. – September 2000 • RFC-2944, Telnet Authentication: SRP / T. Wu. September 2000 • RFC-2945, The SRP Authentication and Key Exchange System / T. Wu. – September 2000 • RFC-2946, Telnet Data Encryption Option / T. Ts'o. – September 2000 • RFC-2947, Telnet Encryption: DES3 64 bit Cipher Feedback / J. Altman. – September 2000 • RFC-2948, Telnet Encryption: DES3 64 bit Output Feedback / J. Altman. – September 2000 • RFC-2949, Telnet Encryption: CAST-128 64 bit Output Feedback / J. Altman. – September 2000 • RFC-2950, Telnet Encryption: CAST-128 64 bit Cipher Feedback / J. Altman. – September 2000 Лекція 17

  6. Як працює Telnet • Протокол Telnetвикористовує принцип “команди у потоці даних” (in-band signaling) • Будь-який байт даних, крім 0xFF, інтерпретується як дані • Байт 0xFF (мнемонічне позначення IAC) означає, що за ним іде байт-команда • Деякі команди мають опції, які теж займають один байт • Деякі опції, в свою чергу, вимагають передачі параметрів у один чи кілька байтів • Параметри передаються з використанням спеціальних команд: • Початок підопції (IAC SB) • Кінець підопції (IAC SE) • Для узгодження опцій використовуються команди WILL, WONT, DO і DONT Лекція 17

  7. Деякі найуживаніші команди Лекція 17

  8. Деякі найуживаніші команди (2) Лекція 17

  9. Деякі найуживаніші команди (3) Лекція 17

  10. Значення деяких опцій Лекція 17

  11. Чотири режими передавання даних Telnet • Напівдуплексний режим • Символьний режим • Рядковий режим (kluge line mode) • Лінійний режим (line mode) Лекція 17

  12. Напівдуплексний режим • Передбачає передавання даних в один бік • Кожна зі сторін закінчує передачу командою GA • За стандартом клієнт повинен за умовчанням знаходитись саме у цьому режимі • В наш час цей режим практично не застосовується Лекція 17

  13. Символьний режим • Передбачає, що кожний введений символ невідкладно доставляється одержувачу • Повноцінний дуплексний режим • Перехід з напівдуплексного в символьний режим здійснюється командами <IAC DO 0x3> або <IAC WILL 0x3> • тобто одна із сторін або просить іншу відключити команду GA, або сама її відключає і про це інформує іншу сторону • Ефективність символьного режиму • В мережах TCP/IP передача окремих символів є занадто ресурсномістким завданням: обов’язкові заголовки TCP й IP по 20 байтів кожний додаються до єдиного байта даних • Для підвищення ефективності символьного режиму застосовують алгоритм Нагла: після відправлення пакета даних і до одержання підтвердження про його доставку (на рівні TCP) всі символи, що їх намагається передати Telnet, накопичуються у буфері, а потім вони відсилаються одним TCP-пакетом. Цей алгоритм реалізовується на рівні, нижчому за протокол Telnet, і є для останнього абсолютно прозорим Лекція 17

  14. Приклад взаємодії за протоколом Telnet S: IACDO 0x3 ; сервер пропонує клієнту перейти у символьний режим C:IACWILL 0x3 ; клієнт підтверджує і переходить у символьний режим S:IACDO 0x1 ; сервер пропонує клієнту ввімкнути ехо-відображення ; введених символів C: IAC WILL 0x1 ; клієнт підтверджує і вмикає ехо-відображення введених ; символів S: login: ; сервер передає рядок “login:” C: <username> ; клієнт надсилає на сервер рядок, введений користувачем S: password: ; сервер передає рядок “password:” S: IAC DONT 0x1 ; сервер вимагає від клієнта вимкнути ехо-відображення ; введених символів C: IAC WONT 0x1 ; клієнт підтверджує і вимикає ехо-відображення введених ; символів C: <password> ; клієнт надсилає на сервер рядок, введений ; користувачем, причому користувач не бачить на ; екрані символи, які він вводить Лекція 17

  15. Рядковий режим • Цей режим не передбачався розробниками, але виник у результаті помилки • У рядковому режимі передають цілий рядок символів в одному пакеті • Якщо у символьному режимі із включеним ехо або відключити ехо, або запросити включення GA, то інша сторона переходить в рядковий режим • Таке може відбутися, наприклад, при введені пароля — сервер виводить запрошення і просить клієнта відключити ехо, клієнт при цьому надсилає весь пароль у одному пакеті • Якщо ж локальне ехо було відключено, тоді сервер відключає ехо на своєму боці, і клієнт передає пароль по одному символу в пакеті. Лекція 17

  16. Лінійний режим • Це порівняно недавно розроблений режим • Описаний в RFC-1184 • У цьому режимі можливе шифрування даних Лекція 17

  17. FTP – File Transfer Protocol • Обмін даними в FTP здійснюється з використанням транспортного протоколу TCP • Обмін побудований за принципом технології “клієнт-сервер” • У протоколі FTP значну увагу було приділено узгодженню обміну даними між комп’ютерами різної архітектури • З погляду FTP, обмін може бути потоковий або блоковий, з кодуванням у проміжні формати або без нього, текстовий або двійковий • При текстовому обміні усі дані перетворюються в ASCII (7 біт) • Виняток становлять лише дані мейнфреймів IBM, які за умовчанням передаються в кодуванні EBCDIC • Протокол FTP описаний у RFC 959 Лекція 17

  18. FTP – RFC • RFC-0959, File Transfer Protocol / J. Postel, J. Reynolds. – October 1985. • RFC-1579, Firewall-Friendly FTP / S. Bellovin. – February 1994. • RFC-2228, FTP Security Extensions / M. Horowitz, S. Lunt. – October 1997. • RFC-2428, FTP Extensions for IPv6 and NATs / M. Allman, S. Ostermann, C. Metz. – September 1998. • RFC-2640, Internationalization of the File Transfer Protocol / B. Curtin. – July 1999. • RFC-2773, Encryption using KEA and SKIPJACK / R. Housley, P. Yee, W. Nace. – February 2000. • RFC-3659, Extensions to FTP / P. Hethmon. – March 2007. Лекція 17

  19. Модель протоколу FTP Лекція 17

  20. Канали обміну між клієнтом і сервером • Протокол FTP встановлює два окремих канали обміну між клієнтом (в термінах протоколу FTP — користувачем) і сервером • Канал керування • Призначений для керування обміном в стандарті протоколу Telnet • TCP-з’єднання ініціюється інтерпретатором протоколу користувача • Інтерпретатор протоколу користувача у відповідності з командами, що надходять від інтерфейсу користувача, генерує команди FTP і передає їх на сервер. Відповіді сервера надсилаються користувачу також каналом керування. • Користувач може встановити контакт з інтерпретатором протоколу сервера й іншими засобами, відмінними від інтерпретатора користувача • Команди FTP дозволяють задати параметри каналу передачі даних і самого процесу передачі. Вони також визначають характер роботи з віддаленою та локальною файловими системами. • Канал передавання даних • Сесія керування ініціює канал передавання даних тоді, коли це необхідно • Обмін даними ініціює сервер згідно з параметрами, узгодженими в сесії керування • Канал даних встановлюється для того ж хосту, що й канал керування • Канал даних може бути використаний як для приймання, так і для передавання даних Лекція 17

  21. Передавання даних між двома серверами Лекція 17

  22. Основні команди протоколу Лекція 17

  23. Основні команди протоколу (2) Лекція 17

  24. Основні команди протоколу (3) Лекція 17

  25. Основні команди протоколу (4) Лекція 17

  26. Основні відповіді сервера Лекція 17

  27. Основні відповіді сервера (2) Лекція 17

  28. Основні відповіді сервера (3) Лекція 17

More Related