Книжная полка Сохранить
Размер шрифта:
А
А
А
|  Шрифт:
Arial
Times
|  Интервал:
Стандартный
Средний
Большой
|  Цвет сайта:
Ц
Ц
Ц
Ц
Ц

Сетевые службы FTP и DNS

Покупка
Основная коллекция
Артикул: 778172.01.99
Учебное пособие разработано на основе материалов лекций и лабораторных занятий по курсам «Прикладные протоколы Интернета» и «Информационные сети», проводимых на факультете Автоматики и вычислительной техники ФГБОУ ВО «НГТУ». Пособие, прежде всего, предназначено для подготовки специалистов и бакалавров по направлениям «Информатика и вычислительная техника» и «Программная инженерия». Кроме того, изложенный материал может быть успешно использован в процессе подготовки к олимпиадам и конкурсам в области сетевых информационных технологий.
Мищенко, П. В. Сетевые службы FTP и DNS : учебное пособие / П. В. Мищенко. - Новосибирск : Изд-во НГТУ, 2018. - 66 с. - ISBN 978-5-7782-3731-5. - Текст : электронный. - URL: https://znanium.com/catalog/product/1866924 (дата обращения: 23.07.2024). – Режим доступа: по подписке.
Фрагмент текстового слоя документа размещен для индексирующих роботов. Для полноценной работы с документом, пожалуйста, перейдите в ридер.
Министерство науки и высшего образования Российской Федерации 

НОВОСИБИРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ 
__________________________________________________________________________ 
 
 
 
 
 
П.В. МИЩЕНКО 
 
 
 
СЕТЕВЫЕ СЛУЖБЫ FTP И DNS 
 
Утверждено Редакционно-издательским советом университета 
в качестве учебного пособия 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
НОВОСИБИРСК 
2018 

УДК 004.722(075.8) 
М 717 
 
 
Рецензенты: 
д-р техн. наук, профессор М.Г. Гриф 
канд. техн. наук, доцент А.А. Якименко 
 
 
 
 
 
Мищенко П.В. 
М 717      Сетевые службы FTP и DNS: учебное пособие / П.В. Мищенко. – Новосибирск: Изд-во НГТУ, 2018. – 66 с. 

ISBN 978-5-7782-3731-5 

Учебное пособие разработано на основе материалов лекций и лабораторных занятий по курсам «Прикладные протоколы Интернета» и 
«Информационные сети», проводимых на факультете Автоматики и 
вычислительной техники ФГБОУ ВО «НГТУ». 
Пособие, прежде всего,  предназначено для подготовки специалистов и бакалавров по направлениям «Информатика и вычислительная 
техника» и «Программная инженерия». Кроме того, изложенный материал может быть успешно использован в процессе подготовки к 
олимпиадам и конкурсам в области сетевых информационных технологий. 
 
 
 
 
 
 
УДК 004.722(075.8) 
 
ISBN 978-5-7782-3731-5 
© Мищенко П.В., 2018 
 
© Новосибирский государственный 
 
технический университет, 2018 

ВВЕДЕНИЕ  
 
Вычислительные сети передачи данных наглядно демонстрируют 
результат интенсивного развития компьютерных технологий и в современном мире являются главным средством коммуникации. Создание вычислительных сетей вызвано потребностью в совместном использовании данных на удаленных устройствах.  На сегодняшний день  
их основным назначением остается совместное использование ресурсов и осуществление связи как в пределах одной организации, так и 
вне ее. Под разделяемыми ресурсами могут подразумеваться приложения, данные и периферийные устройства. 
Архитектура локальных или глобальных сетей может включать в 
себя такие базовые компоненты и технологии как: серверы, коммутаторы, концентраторы, маршрутизаторы, компьютеры и другие средства связи между устройствами. Таким образом, вычислительная сеть 
представляет собой комплекс распределенной компьютерной техники, 
соединенной между собой системой передачи данных, содержащей 
телекоммуникационное оборудование и каналы связи.  
В основу работы большинства современных сетей положен стек 
TCP/IP — набор сетевых протоколов передачи данных, полностью реализующих функциональные возможности модели OSI. Главной идеей 
стека является создание механизма межсетевого обмена, за который и 
отвечает семейство протоколов передачи данных, используемые для 
связи компьютеров и другого оборудования в сети.  
Решение сетевой задачи передачи данных начинается с работы 
протокола прикладного уровня. Далее данные последовательно проходят по всему стеку и достигают физического уровня, который управляет их непосредственной передачей по физическому каналу связи. Абонент, принимающий данные, обрабатывает их аналогичным образом: 
передавая вверх по стеку до прикладного уровня.  

Общее количество прикладных протоколов велико и продолжает расти. Ориентиром протоколов прикладного уровня служат конкретные прикладные задачи. Они определяют как процедуры по организации взаимодействия определенного типа между прикладными процессами, так и 
форму представления информации в рамках взаимодействия. В процессе 
обучения технологиям вычислительных сетей вызывает затруднения 
практическая часть исследования телекоммуникационных систем: построение топологии сети, настройка интерфейсов оборудования, анализ 
взаимодействия сетевых протоколов. Причинами этому являются высокая 
стоимость оборудования, размещение сетевых устройств и организация 
рабочих мест обучающихся. Принимая во внимание факты, приведенные 
выше, возросла тенденция к появлению программного обеспечения, которое позволяет проводить моделирование процессов настройки и функционирования телекоммуникационных систем.  
Благодаря симуляторам компьютерных сетей эксперименты в этой 
области можно проводить гораздо удобнее и экономнее, чем на реальном оборудовании. На базе кафедры Вычислительной техники Новосибирского государственного технического университета существует Лаборатория сетевых средств и технологий, оснащенная оборудованием 
«CISCO». В лаборатории студенты начинают работу с виртуальным 
оборудованием, которое реализовано в программном обеспечении Cisco. 
Cisco Packet Tracer – симулятор сети передачи данных, который предоставляет возможность студентам проводить эксперименты с сетью и 
оценивать вероятные сценарии. Являясь неотъемлемой частью комплексной среды обучения Сетевой академии, Packet Tracer предоставляет функции моделирования, визуализации, авторской разработки, а также облегчает процесс изучения сложных технологических основ.   
Учебное пособие посвящено вопросам функционирования сетевых 
служб FTP и DNS, изучению особенностей работы с прикладными 
протоколами и анализу процесса их функционирования.  Пособие имеет практическую направленность и помимо теоретических сведений 
содержит примеры настройки прикладных протоколов в среде Packet 
Tracer. Учащимся предлагается применить и закрепить полученные 
знания на практике. Для этого в пособии представлены указания к выполнению практикумов на темы «Настройка протокола передачи файлов FTP» и «Настройка WEB и DNS серверов в Cisco Packet Tracer». 

 

ОСНОВНЫЕ ПРИНЦИПЫ 
ФУНКЦИОНИРОВАНИЯ ФАЙЛОВОЙ СЛУЖБЫ 
 
Одной из основных служб сети Интернет является файловая служба, обеспечивающая доступ к файлам, их загрузку, хранение и передачу. Клиент и сервер файловой службы взаимодействуют друг с другом 
в соответствии с логикой работы определенного протокола. В некоторых случаях процесс функционирования протокола может быть достаточно простым – в его функции будет входить ретрансляция серверу 
запросов, принятых клиентом от приложений. В других же ситуациях 
протокол будет выполнять и более сложные функции, учитывающие 
природу сетевого взаимодействия, например, возможные отказы или 
задержки. Рассмотрим основные принципы организации и функционирования файловой службы сети Интернет.  
Файловый сервер может быть реализован по одной из двух схем: с 
запоминанием данных о последовательности файловых операций клиента – stateful; без запоминания таких данных – по схеме stateless. 
Сервер stateless: клиент посылает запрос на сервер, сервер его выполняет, отсылает ответ, а затем удаляет из своих внутренних таблиц 
всю информацию о запросе. Таким образом, между запросами на сервере не хранится никакой текущей информации о состоянии клиента. 
Преимущества серверов stateless: 
 отказоустойчивы; 
 не поддерживают в протоколе обмена с клиентами вызовы 
open/close; 
 меньше памяти сервера расходуется на таблицы; 
 нет ограничений на число открытых файлов; 
 отказ клиента не создает проблем для сервера. 

Сервер stateful, открывая файлы, должен запоминать, какие файлы открыл каждый пользователь в своей внутренней системной таблице. В таблице открытых файлов хранятся дескриптор файла 
(идентификатор), значение указателя на текущую позицию в файле, 
режим файла. Обычно при открытии файла клиентскому приложению возвращается по сети дескриптор файла. Клиент файловой 
службы с сервером stateless должен самостоятельно поддерживать 
таблицы открытых фалов. Для серверов stateful характерны следующие особенности: 
 формируются более короткие сообщения при запросах; 
 улучшена производительность; 
 возможно опережающее чтение; 
 возможна блокировка файлов. 
Для сервера stateless каждый запрос должен содержать исчерпывающую информацию, необходимую серверу для выполнения требуемой 
операции (полное имя файла, смещение в файле и т.п.). Очевидно, что 
эта информация увеличивает длину сообщения и время, которое тратит 
сервер на локальное открытие файла всякий раз, когда над ним производится очередная операция чтения или записи. 
Сервер stateless является более отказоустойчивым, чем сервер 
stateful. Так как при отказе сервера stateful теряются все его таблицы, и 
после перезагрузки неизвестно, какие файлы открыл каждый пользователь. Платой за отказоустойчивость может быть скорость работы сервера, т.к. ему приходится выполнять больше операций с файлами. 
Кроме того, применение серверов stateless затрудняет реализацию блокировок файлов, так как информацию о блокировке файла одним из 
пользователей необходимо запоминать на всех клиентах файлового 
сервера. 

Кэширование 
Скорость доступа к файлам, хранящимся на дисках, существенно 
повышает кэширование данных. 
В сетевых файловых системах кэширование не только повышает 
скорость доступа к удаленным данным, но улучшает масштабируемость и надежность файловой системы. 
 

Схемы кэширования, применяемые в сетевых файловых системах, 
отличаются решениями по трем ключевым вопросам: 
1. По месту расположения кэша (память сервера, диск клиента, па
мять клиента); 
2. По способу распространения модификаций; 
В сети может существовать несколько копий одного и того же 
файла, хранящихся в кэшах клиентов. Необходимо, чтобы модификации одной копии своевременно распространялись на все остальные 
копии. 
Один из путей решения этой проблемы – алгоритм сквозной записи 

(в системах UNIX). Когда кэшируемый элемент (файл или блок) модифицируется, новое значение записывается в кэш и одновременно посылается на сервер для обновления главной копии файла. В этом случае другой процесс, читающий этот файл, получает самую последнюю 
копию. 
Другой путь – алгоритм отложенной записи: вместо того, чтобы 

выполнять запись на сервер, клиент просто помечает, что файл изменен. Примерно каждые 30 сек. все изменения в файлах собираются 
вместе и отсылаются на сервер за один прием (одна большая запись 
для сетевого обмена более эффективна, чем много коротких). 
И еще один алгоритм – запись по закрытию, в соответствии с ко
торым запись файла на сервер производится только после закрытия 
файла. 
3. По проверке достоверности кэша. 
Очевидно, что данные в кэше одного клиента становятся недостоверными, когда данные, модифицированные другим клиентом, переносятся в главную копию файла. Необходимо проверять, являются ли 
данные в кэше клиента достоверными. В противном случае данные 
должны быть повторно считаны с сервера. 
Существуют два подхода к решению этой проблемы 
1. Инициирование проверки клиентом (клиент связывается с сервером и проверяет, соответствуют ли данные в его кэше данным, содержащимся в главной копии файла на сервере); 
2. Инициирование проверки сервером (клиент, открывающий файл, 
посылает сообщение серверу о режиме – чтение или запись. Если файл 
открыт для чтения, то все другие процессы могут его открыть только 

для чтения. Если файл открыт для записи, то все другие виды доступа 
запрещены.  

Репликация 
Репликация (тиражирование) подразумевает существование нескольких копий одного и того же файла (реплик), каждая из которых хранится на отдельном файловом сервере, при этом обеспечивается автоматическое согласование данных в копиях файла. О существовании реплик известно всем компьютерам сети. За счет репликации: 
1. Увеличивается надежность (при отказе одного сервера файл 
остается доступным на другом); 
2. Снижается нагрузка на файловые серверы (за счет распределения 
нагрузки между несколькими серверами, так как клиенты могут обращаться к данным реплицированного файла на ближайший файловый 
сервер). 
Репликация поддерживается сетевой файловой системой в качестве 
одной из услуг для клиентов. Иногда репликацией занимается отдельная файловая служба. 
Ключевым вопросом, связанным с репликацией, является прозрач
ность. 

В одних системах пользователи полностью осведомлены о том, что 

их файлы реплицируются и вовлечены в управление репликацией. 
В других системах – репликация выполняется полностью автоматически. Система при этом называется репликационно прозрачной. 
Прозрачность репликации зависит от двух факторов: 
 Используемой схемы именования реплик; 
 Степени вовлеченности пользователя в управление репликацией. 

Именование реплик 
Система именования, которая отображает имя файла на его сетевой 
идентификатор, однозначно определяющий место хранения файлов, 
позволяет реализовать прозрачность доступа к реплицируемому файлу. 
Реализуется такая схема следующим образом. Используется централизованная справочная служба, которая позволяет хранить отображения 
имен файлов на их сетевые идентификаторы (например, IP-адреса серверов). Файлу присваивается имя, не содержащее старшей части, соот
ветствующей имени компьютера. В справочной службе этому имени 
соответствует несколько идентификаторов, указывающих на серверы, 
хранящие реплики файла. При обращении к файлу приложение использует имя, а справочная система возвращает ему один из идентификаторов, указывающий на сервер, хранящий реплику. 
Схема реализуется просто для неизменяемых файлов (реплики всегда идентичны). Для реализации полностью прозрачного доступа к изменяемым реплицируемым файлам требуется ведение базы, хранящей 
сведения о том, какие из реплик содержат последнюю версию данных, 
а какие еще не обновлены. 
В современных сетевых файловых системах реализована схема 

именования, при которой требуется явное указание имени сервера при 
обращении к файлу, т.е. непрозрачная система репликации. 

Управление репликацией 
Под управлением репликацией подразумевается определение количества реплик и выбор серверов для хранения каждой реплики. 
В прозрачной системе репликации такие решения принимаются ав
томатически при создании файла на основе правил стратегии репликации, определенных заранее администратором системы – неявная репликация. Приложение не указывает место размещения файла. Файловая система самостоятельно выбирает сервер для размещения первой 
реплики файла. Затем в фоновом режиме система создает еще несколько реплик файла. 
В непрозрачной системе решения принимаются с участием пользо
вателя, который создает файлы, или разработчика приложения, если 
приложение создает файлы, – явная репликация. Для каждой реплики 
явно указывается сервер. Впоследствии при желании можно удалить 
реплику. 
Согласование реплик является одним из наиболее важных вопросов 

при разработке системы репликации. Когда данные в одной из реплик 
модифицируются, необходимо распространить модификацию на другие реплики. Существует несколько способов обеспечения согласованности реплик: 
 Чтение любой – запись во все. Чтение выполняется из любой копии. При записи в файл все реплики блокируются, выполняется запись 

в каждую копию, блокировка снимается. Недостаток – нельзя произвести запись в файлы на неработоспособных серверах. 
 Запись в доступные. Чтение выполняется из любой копии. Любой сервер, хранящий реплику файла, после перезагрузки должен соединиться с другим сервером и получить обновленную реплику. 
 Первичная реплика. Запись разрешается только в одну реплику, 
называемую первичной. Все остальные именуются вторичными, из которых можно только читать. После модификации первичной, все серверы с вторичными репликами должны связаться с сервером, хранящим 
первичную, и получить обновления. Недостаток – низкая надежность 
(при отказе первичного сервера невозможны модификации файла). 
 Кворум. Обобщение предыдущих подходов. 
Пусть в сети существует n реплик некоторого файла. Алгоритм основан на том, что при модификации файла изменения записываются в 
w реплик, а при чтении файла клиент производит обязательное обращение к r репликам. Значения выбираются так, чтобы w + r > n. При 
модификации файла наращивается номер версии реплики. Если при 
записи реплики имеют разные версии, то выбирается максимальное 
значение версии для наращивания и присваивания всем репликам. При 
чтении клиент имеет возможность сначала проверить версию каждой 
реплики, выбрать старшую и читать данные из нее. 
При выполнении условия w + r > n среди любых выбранных произвольным образом r реплик всегда найдется хотя бы одна из w реплик, в 
которую записаны последние обновления. 
В целом файловая служба имеет две различные части: 
1) собственно файловую службу (операции над отдельными файлами: чтение, запись, добавление); 
2) службу каталогов файловой системы (создание каталогов, добавление и удаление файлов из каталогов и т.п.). 

СРАВНИТЕЛЬНЫЙ АНАЛИЗ ФАЙЛОВЫХ 
ПРОТОКОЛОВ 

Стек TCP/IP содержит три протокола для передачи файлов: File 
Transfer Protocol (FTP), Trivial File Transfer Protocol (TFTP) и Network 
File System (NFS). Протокол FTP является наиболее распространенным