Передача файлів і віддалений доступ до файлів
Мета роботи.
Набуття практичних навиків передавання файлів з одного комп’ютера на інший; доступ до файлів; ознайомлення з принципом взаємодії типу клієнт-сервер в відповідному програмному забезпеченні.
7.1 Короткі теоретичні відомості
Служба передачі файлів дозволяє передавати копію файла з одного комп’ютера на інший. В набір протоколів ТСР/ІР входять два протокола служби передачі файлів – FTP та TFTP. Протокол FTP має більш широкі функціональні можливості, оскільки підтримує інтерактивний командний інтерфейс, який дозволяє отримувати список вмісту каталога, встановлювати режим передачі для текстових та двійкових файлів. Протокол TFTP надає тільки простіші функції служби передачі файлів; він може використовуватися для передачі копії файлів від одного учасника з’єднання до іншого в любому напрямку.
Хоча і протокол FTP, і протокол TFTP основані на моделі взаємодії типу клієнт/сервер, в них використовуються різні транспортні протоколи: для обміну даними між клієнтом і сервером TFTP використовується протокол UDP, а для клієнта і сервера FTP використовується протокол ТСР. Завдяки використанню UDP, протокол TFTP особливо зручний в якості протокола початкового завантаження апаратних пристроїв, оскільки все програмне забезпечення TFTP, UDP та ІР можна розмістити в одному ПЗУ (постійно запам’ятовуючому пристрої).
Клієнт FTP відкриває керуюче з’єднання з сервером, по якому передаються запити і отримує відповідь. Користувач викликає на своєму комп’ютері додаток FTP, який інтерпретує команди, які вводить користувач. Після того, як користувач вводить команду open і вказує відалений комп’ютер, цей локальний додаток стає клієнтом FTP, в якому використовується протокол ТСР для встановлення з’єднання з сервером FTP на вказаному комп’ютері. Клієнтська та серверна програми використовують протокол FTP для обміну даними через керуюче з’єднання. Це значить, що клієнт не передає безпосередньо на сервер код комбінації клавіш, введений користувачем. Команду введену користувачем, інтерпретує клієнтська програма. Якщо команда потребує взаємодії з сервером, клієнтська програма формує запит з використанням протокола FTP, а потім передає запит на сервер. Сервер для передачі відповіді використовує протокол FTP. Керуюче з’єднання використувується для передачі команд і отримання відповідей. Дані через керуюче з’єднання не передаються. При виконанні кожного запиту на передачу файлу сервер формує ще одне з’єднання – з’єднання передачі даних. Його використовують для відправлення одного файла і закривають з’єднання. Щоб передати ще один файл, клієнт та сервер відкривають нове з’єднання передачі файлів. Для запобігання конфлікту між керуючим з’єднанням та з’єднанням передачі файлів в програмі FTP для кожного з них використовуються різні номери портів протокола. Керуюче з’єднання залишається відкритим на протязі всього сеансу, тоді як з’єднання передачі файлів часто появляється і зникає.
Служба доступу до файлів дозволяє додатку читати або коректувати деякі фрагменти файла на віддаленому комп’ютері, не вимагаючи від клієнтської програми копіювати весь файл. Служба доступу до файлів дозволяє також здійснювати сумісний доступ до файлів.
Механізм доступу до файлів, який використовується в наборі протоколів ТСР/ІР, відомий під назвою NFS (Network File System – мережева файлова система). Система NFS дозволяє додатку відкрити файл на віддаленому комп’ютері, перейти в певну позицію всередині файла і виконати запис даних, починаючи з цієї позиції. Клієнтське програмне забезпечення передає на сервер дані і запит на запис їх в файл. Сервер поновлює файл і повертає підтвердження. По мережі передаються тільки дані, призначені для запису, це зменшує навантаження по мережі. На відміну від клієнтського програмного забезпечення передачі файлів, система NFS об’єднана з файловою системою комп’ютера. Завдяки такому об’єднанню, для роботи з файлами на віддаленому комп’ютері можуть використовуватися різні прикладні програми; при виконанні в прикладній програмі операції з файлом клієнтське програмне забезпечення NFS обмінюється даними з програмним забезпеченням віддаленого комп’ютера.
Все це розглядається з припущенням, що користувач зареєстрований на обох комп’ютерах під своїм ім’ям та із своїм паролем на цьому комп’ютері. Доволі часто сервер FTP налаштовується таким чином, що з’єнатися з ним можна не тільки під своїм ім’ям, але й під умовним іменем anonimous – анонім. У такому випадку для користувача стає доступною не вся файлова система комп’ютера, а лише деякий набір файлів на сервері, які складають вміст серверу anonimous FTP – публічного файлового архіву. Отже, якщо користувач хоче надати у вільне користування файли з інформацією, програмами і т.д., то йому достатньо організувати на власному комп’ютері, включеному в Internet, сервер anonimous FTP. Перелік інформації, яка міститься на таких серверах включає всі аспекти життя: від звичайних текстів до мультимедіа.
Не дивлячись на розповсюдження, у FTP є багато недоліків. Програми-клієнти FTP не завжди зручні і прості у користуванні. Користувач не завжди може зрозуміти, який файл перед ним, чи той що необхідно, чи ні. Окрім того, не існує простого і універсального засобу для пошуку на серверах FTP, – хоча для цього і існує спецальний сервіс archi, але це незалежна програма, вона не універсальна і не завжди її можна ефективно застосовувати. Програми FTP доволі старі і деякі з їх особливостей, які були необхідними при їх створенні, не зовсім зрозумілі й необхідні сьогодні. Наприклад, для передачі файлів існує два режими – бінарний та текстовий і, якщо користувач неправильно обрав режим передачі, то файл, який необхідно передати, може мати пошкодження. Сервери FTP нецентралізовані, – звідси випливають ще деякі проблеми. Але не дивлячись на все це, сервери anonimous FTP сьогодні – це стандартний шлях організації публічних файлових архівів