Добавлен: 30.06.2023
Просмотров: 80
Скачиваний: 3
ВВЕДЕНИЕ
Для современного пользователя персонального компьютера и сети Интернет поиск информации или работа с электронной почтой не стоят ровно никаких усилий. Так, человек может ни разу и не задуматься, какое множество разнообразных процессов порождает щелчок клавишей мыши или нажатие клавиши клавиатуры. На сегодняшний день технологии достигли такого уровня, что от пользователя скрыты практически все внутренние процессы, а доступным оказывается только конечный результат.
Для того, чтобы разобраться, каким именно образом реализуется внутреннее выполнение таких знакомых нам всем операций, будут рассмотрены прикладные протоколы и серверы приложений.
Таким образом, целью выполнения работы является изучение понятия прикладных протоколов и серверов приложений.
Объектом исследования выступают прикладные протоколы и серверы приложений, а предметом – понятие прикладных протоколов и серверы приложений.
Для достижения поставленной цели необходимо выполнить следующие задачи:
- охарактеризовать понятие прикладных протоколов;
- изучить общие принципы организации функционирования прикладных протоколов (OSI);
- рассмотреть примеры прикладных протоколов, среди которых такие протоколы, как ICMP, FTP, HTTP, POP и SMTP, SLIP;
- проанализировать понятие сервера приложений;
- рассмотреть характерную реализацию серверов приложений;
- дать характеристику серверам приложений со стороны преимуществ и недостатков.
Для реализации исследования за основу были взяты труды таких известных исследователей проблемы, как Олифер В. Г., Олифер Н. А., Хант К., Блэк Ю. и Новиков Ю.В.
Структура работы включает в себя две главы, первая из которых состоит из семи параграфов, а вторая – из трех. Кроме того, в работе присутствуют такие структурные элементы, как Содержание, Заключение и Список использованных источников.
Понятие прикладных протоколов
Характеристика понятия прикладных протоколов
Необходимо различать понятия сетевых приложений и протоколов прикладного уровня. Протоколы прикладного уровня являются частью (хотя и весьма большой) сетевых приложений. Рассмотрим два примера. Web является сетевым приложением, позволяющим пользователям получать web-документы по запросу и состоящим из множества компонентов, включая стандарт формата документов (HTML), браузеры (Netscape Navigator, Microsoft Internet Explorer и др.), web-серверы (например, Apache, Microsoft или Netscape), протоколы прикладного уровня. Протокол прикладного уровня для web носит название протокола передачи гипертекста (HyperText Transfer Protocol, HTTP) и описывает формат и порядок обмена сообщениями между клиентом и сервером (RFC 2646). Таким образом, HTTP является лишь частью web-приложения.
В качестве второго примера рассмотрим приложение электронной почты. Электронная почта Интернета также состоит из множества компонентов: почтовых серверов, содержащих почтовые ящики пользователей, программ для просмотра и создания электронных писем, стандартов, описывающих структуру электронных писем, протоколов прикладного уровня, регламентирующих порядок обмена сообщениями серверов между собой и с оконечными системами пользователей, а также интерпретацию полей, из которых состоят электронные письма. Основным протоколом прикладного уровня для электронной почты является протокол простой передачи сообщений (Simple Mail Transfer Protocol, SMTP). Как мы видим, SMTP (RFC 2821) – лишь часть (хотя и достаточно большая) структуры приложений электронной почты[1].
Как сказано выше, протоколы прикладного уровня определяют способ обмена сообщениями между двумя процессами, выполняющимися на разных оконечных системах. Обычно протокол определяет следующие элементы:
- типы используемых сообщений, например запросы и ответы;
- синтаксис каждого из типов сообщений, описывающий поля сообщения и их разделители;
- семантику полей, то есть смысл информации, содержащейся в каждом из полей сообщения;
- правила, описывающие события, которые вызывают генерацию сообщений.
Некоторые из протоколов прикладного доступа (HTTP, SMTP и др.) являются официально документированными в RFC. Это означает, что если разработчик нового браузера будет следовать стандарту, то браузер сможет получать документы с любого web-сервера, построенного по этому же стандарту. Тем не менее, существует множество протоколов прикладного уровня, которые не стандартизированы и при этом используются для поддержки коммерческих продуктов. В частности, это характерно для Интернет-телефонии[2].
Общие принципы организации и функционирования прикладных протоколов (OSI)
Прикладной уровень является наивысшим уровнем в эталонной модели OSI RM и единственным средством доступа прикладных процессов к функциональной среде OSIE.
Прикладная сущность (application-entity - AE): совокупность функций прикладного процесса, непосредственно связанных с обеспечением его взаимодействия с другими прикладными процессами.
Активация прикладной сущности или AE-активация (AE-invocation): конкретное использование некоторой части функциональных возможностей некоторой прикладной сущности, осуществляющей поддержку функций взаимосвязи, реализуемых некоторой активацией прикладного процесса.
Совокупность средств, с помощью которых выполняются все элементы взаимодействия процессов, называется прикладной ассоциацией (Application Association)[3].
Примерами таких элементов взаимодействия являются:
- идентификация и аутентификация прикладных процессов,
- согласование и установления прикладного контекста взаимосвязи,
- обмен прикладными блоками данных,
- управление режимами взаимосвязи,
- прекращение взаимосвязи[4]
Взаимодействие прикладных процессов осуществляется посредством обмена прикладными протокольными блоками данных (Application Protocol Data Unit - APDU).
Протокольные блоки данных
Протокольные блоки данных
Протокольные блоки данных
Прикладной сервисный элемент (application-service-element - ASE): набор прикладных функций, обеспечивающих узкоспециализированную форму сетевого взаимодействия активаций прикладных сущностей; прикладной сервисный элемент является компонентой прикладных сервисный объектов и сущностей (функциональным модулем), реализующей конкретный протокол прикладного уровня.
Различаются две категории прикладных сервисных элементов:
- общие;
- специальные.
Общие прикладные сервисные элементы (Common Application Service Elements - CASE) обеспечивают услуги общесистемного характера, которые обычно используются большинством прикладных процессов.
Специальные элементы прикладных услуг (Special Application Service Elements - SASE) ориентированы на удовлетворение требований узкоспециализированных применений[5].
Общие прикладные сервисные элементы
- Сервисный элемент управления ассоциацией (Association control service element – ACSE) [X.217, X.227].
- Сервисный элемент надежной передачи (Reliable transfer service element – RTSE) [X.218, X.228].
- Сервисный элемент удаленной операции (Remote operations service element – ROSE) [X.219, X.229, X.881, X.882].
- Сервисный элемент фиксации, параллельности и восстановления (Commitment, Concurrency and Recovery service element - CCRSE) [X.852].
Специальные элементы прикладных услуг
- Сервисный элемент передачи и управления файлами (File Transfer, Access and Management – FTAM) [ISO/IEC 8571:1989].
- Сервисный элемент передачи и управления заданиями (Job Transfer and Management – JTM) [ISO/IEC 8831].
- Сервисный элемент виртуального терминала (Virtual Terminal Service, Basic Class) [ISO/IEC 9040].
- Сервисный элемент удаленного доступа к базам данных (Remote Database Access - RDA) [ISO/IEC 9579-1, ISO/IEC 9579-2].
- Сервисный элемент распределенной обработки (Distributed Transaction Processing - TP) [X.861].
- Сервисный элемент сетевого управления (Common management information service) [X.710][6].
Для иллюстрации организации работы прикладного уровня рассмотрим простой пример, в котором для программы (program) пользователя (user) реализуется возможность доступа к сервису простой электронной почты, т.е. через свою программу пользователь может готовить и пересылать сообщения другому удаленному пользователю, используя специальный прикладной сервисный элемент системы обработки сообщений MHS (Message Handling System).
Прикладной процесс (Application Process) программы пользователя в данном примере состоит из прикладной сущности (Application Entity), ответственной за реализацию функций взаимосвязи с другими пользователями, и из компоненты, реализующей взаимосвязь прикладного сервисного элемента с локальными ресурсами реальной открытой системы и называемой часто прикладным агентом (Application Agent)[7].
После того, как программа пользователя сформирует сообщение, включающее собственно текст сообщения и адрес получателя, оно передается прикладным процессом посредством локального пользовательского интерфейса своему агенту. Далее через внутренний интерфейс сообщение передается от агента прикладному сервисному элементу почтовой службы, который в нашем случае состоит из единственного специального сервисного элемента MHS, реализующего одноименный протокол.
Далее сообщение, используя стек протоколов модели OSI с первого по шестой уровень (этот стек представлен на рисунке поставщиком представительного сервиса (presentation service provider)), передается в виде прикладного протокольного блока данных (APDU) конечной системе-адресату. При получении сообщения конечной системой оно через сервисный элемент MHS будет передано локальному агенту, который после анализа этого сообщения запишет его в локальную файловую систему (file storage), точнее в почтовый ящик (mail folder), и проинформирует программу пользователя-получателя о поступлении сообщения[8].
Рисунок 1. Пример организации прикладного уровня для программы пользователя, использующей сервис электронной почты
1.3 Протокол ICMP
Протокол ICMP (Internet Control Message Protocol) - протокол межсетевых управляющих сообщений. С помощью этого протокола компьютеры и устройства сети обмениваются друг с другом управляющей информацией. К примеру, этот протокол используется для передачи сообщений об ошибках, проверки доступности узла и т.д.
Протокол Internet (IP) используется для обработки датаграммы, передаваемой между хост-компьютерами в системе объединенных сетей, называемой Catenet. Устройства, осуществляющие соединение различных сетей, называются шлюзами. Для обеспечения управления шлюзы общаются друг с другом посредством протокола Gateway to Gateway Protocol (GGP). Порой шлюз или хост-компьютер, получающий данные, обменивается информацией с хост-компьютером, отправляющим эти данные. Именно для таких целей используется данный протокол - протокол контрольных сообщений Internet (ICMP). ICMP использует основные свойства протокола Internet (IP), как если бы ICMP являлся протоколом более высокого уровня. Однако фактически ICMP является составной частью протокола Internet и должен являться составной частью каждого модуля IP[9].
Сообщения ICMP должны отправляться в некоторых затруднительных ситуациях. Например, когда датаграмма не может достичь своего адресата, когда шлюз не имеет достаточно места в своем буфере для передачи какой-либо датаграммы, или когда шлюз приказывает хост-компьютеру отправлять информацию по более короткому маршруту.
Протокол Internet не создан для того, чтобы обеспечивать абсолютную надежность передачи информации. Целью же данных контрольных сообщений является обеспечение обратной связи, оповещение отправителя данных о проблемах, возникающих в коммуникационном оборудовании. Их целью не является придание надежности протоколу IP. Протокол не дает гарантий, что датаграмма достигает своего адресата или что контрольное сообщение будет возвращено компьютеру, отправившему данные. Некоторые из датаграмм могут исчезнуть в сети, не вызвав при этом ни каких оповещений. Протоколы более высокого уровня, использующие протокол IP, должны применять свои собственные процедуры для обеспечения надежности передачи данных, если таковая требуется.
Сообщения ICMP протокола, как правило, оповещают об ошибках, возникающих при обработке датаграмм. Чтобы проблемы с передачей сообщений не вызывали появление новых сообщений, чтобы это в свою очередь не привело к лавинообразному росту количества сообщений, циркулирующих в сети, констатируется, что нельзя посылать сообщения о сообщениях. Также констатируется, что ICMP сообщения можно посылать только о проблемах, возникающих при обработке нулевого фрагмента в сегментированной датаграмме (нулевой фрагмент имеет нуль в поле смещения фрагмента)[10].
1.4 Протокол FTP
Протокол FTP (File Transfer Protocol) - протокол передачи файлов. Служит для обмена файлами между компьютерами. Например, вам нужно передать файл на сервер или, наоборот, скачать файл с сервера. Для этого вам нужно подключиться к файловому серверу (он же FTP-сервер) и выполнить необходимую вам операцию скачивания или закачки. Подключение осуществляется с помощью FTP-клиента. Простейший FTP-клиент входит в состав практически любой операционной системы. Кстати, просматривать FTP-серверы могут и обычные браузеры.
Протокол передачи файлов (File Transfer Protocol – FTP) – это стандартный механизм для копирования файла от одного хоста другим [19]. Передача файлов от одного компьютера к другому – это одна из большого числа общих задач, выполнение которой ожидается от организованной сети и взаимодействия между сетями[11].