Протоколы прикладного уровня

Вид материалаРеферат

Содержание


2. Общие принципы организации и функционирования прикладного уровня (OSI)
Рис.1 Взаимодействие прикладных процессов.
Активация прикладной сущности или AE-активация (AE-invocation)
Рис.2 Взаимодействие прикладных процессов.
Общие прикладные сервисные элементы (Common Application Service Elements - CASE)
Специальные элементы прикладных услуг (Special Application Service Elements - SASE)
Специальные элементы прикладных услуг
3. Протоколы прикладного уровня OSI
4. Протоколы прикладного уровня NetWare
Протоколы высших уровней
NetWare Message Handling Service (NetWare MHS)
5. Прикладной уровень стека TCP/IP.
6.1. Протоколы управления терминалами
Telnet и другие протоколы
6.1.2 Протокол SSH
6.2. Протоколы управления файлами
Рис.7. Простейшая схема работы протокола FTP
Алгоритм работы протокола FTP
6.2.2. Протокол HTTP
Структура протокола
...
Полное содержание
Подобный материал:
  1   2   3   4   5

Министерство образования

Российской Федерации




Санкт-Петербургский государственный

электротехнический университет




Кафедра МО ЭВМ




Протоколы прикладного уровня



Выполнили: Рогозина О. Н., 4351

Строкина Н.В., 4305


Факультет КТИ

Преподаватель: Яновский В.В.


Санкт-Петербург


Содержание.


1. Введение………………………………………………………………………………………….2

2. Общие принципы организации и функционирования прикладного уровня (OSI)………….2

3. Протоколы прикладного уровня OSI………………………………………………………...…4

4. Протоколы прикладного уровня NetWare……………………………………………………...5


5. Прикладной уровень TCP/IP…………………………………………………………………….7


6. Протоколы прикладного уровня TCP/IP………………………………………………………..8


6.1. Протоколы управления терминалами (TELNET, SSH)……………………………..8

6.2. Протоколы управления файлами (HTTP, IPP, FTP)………………………………..10

6.3. Протоколы управления сетью (SNMP, DNS)……………………………………….14

6.4. Протоколы организации электронной почты

(SMTP, POP3, IMAP4)…………...18

6.5. Протоколы организации обмена сообщениями (NNTP, IRC)…………………..….23

7. Заключение ………………………………………………………………………………………24

8. Список литературы ……………………………………………………………………………..25


1. Введение


Для человека, пользующегося Интернетом каждый день, просмотр веб-страниц или чтение почты не требуют огромных усилий или специального образования. Можно и не подозревать, что каждый щелчок мыши или нажатие кнопки порождает множество разнообразных процессов, связанных друг с другом, иногда конфликтующих и борющихся за ресурсы. От глаз пользователя все это хитрое взаимодействие скрыто, доступен лишь конечный результат. Чтобы понять, как на самом деле происходит то, что предстает перед нами в виде цепочки тривиальных действий, рассмотрим организацию прикладного уровня и его протоколов.


2. Общие принципы организации и функционирования прикладного уровня (OSI)


Прикладной уровень является наивысшим уровнем в эталонной модели OSI RM и единственным средством доступа прикладных процессов к функциональной среде OSIE. На рисунке 1 изображено взаимодействие прикладных процессов





Рис.1 Взаимодействие прикладных процессов.


Прикладная сущность (application-entity - AE): совокупность функций прикладного процесса, непосредственно связанных с обеспечением его взаимодействия с другими прикладными процессами.


Активация прикладной сущности или AE-активация (AE-invocation): конкретное использование некоторой части функциональных возможностей некоторой прикладной сущности, осуществляющей поддержку функций взаимосвязи, реализуемых некоторой активацией прикладного процесса.


Совокупность средств, с помощью которых выполняются все элементы взаимодействия процессов, называется прикладной ассоциацией (Application Association).


Примерами таких элементов взаимодействия являются:

- идентификация и аутентификация прикладных процессов,

- согласование и установления прикладного контекста взаимосвязи,

- обмен прикладными блоками данных,


- управление режимами взаимосвязи,

- прекращение взаимосвязи ...


Взаимодействие прикладных процессов (рис. 2) осуществляется посредством обмена прикладными протокольными блоками данных (Application Protocol Data Unit - APDU).




Протокольные блоки данных

Протокольные блоки данных


Протокольные блоки данных

Рис.2 Взаимодействие прикладных процессов.


Прикладной сервисный элемент (application-service-element - ASE): набор прикладных функций, обеспечивающих узкоспециализированную форму сетевого взаимодействия активаций прикладных сущностей; прикладной сервисный элемент является компонентой прикладных сервисный объектов и сущностей (функциональным модулем), реализующей конкретный протокол прикладного уровня.


Различаются две категории прикладных сервисных элементов:

- общие;

- специальные.


Общие прикладные сервисные элементы (Common Application Service Elements - CASE) обеспечивают услуги общесистемного характера, которые обычно используются большинством прикладных процессов.


Специальные элементы прикладных услуг (Special Application Service Elements - SASE) ориентированы на удовлетворение требований узкоспециализированных применений.


Общие прикладные сервисные элементы


Сервисный элемент управления ассоциацией (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].

Для иллюстрации организации работы прикладного уровня рассмотрим простой пример, в котором для программы (program) пользователя (user) реализуется возможность доступа к сервису простой электронной почты, т.е. через свою программу пользователь может готовить и пересылать сообщения другому удаленному пользователю, используя специальный прикладной сервисный элемент системы обработки сообщений MHS (Message Handling System).

    Организация вычислительного процесса для данного приложения показана на рис. 3.

    Прикладной процесс (Application Process) программы пользователя в данном примере состоит из прикладной сущности (Application Entity), ответственной за реализацию функций взаимосвязи с другими пользователями, и из компоненты, реализующей взаимосвязь прикладного сервисного элемента с локальными ресурсами реальной открытой системы и называемой часто прикладным агентом (Application Agent).

    После того, как программа пользователя сформирует сообщение, включающее собственно текст сообщения и адрес получателя, оно передается прикладным процессом посредством локального пользовательского интерфейса своему агенту. Далее через внутренний интерфейс сообщение передается от агента прикладному сервисному элементу почтовой службы, который в нашем случае состоит из единственного специального сервисного элемента MHS, реализующего одноименный протокол.

    Далее сообщение, используя стек протоколов модели OSI с первого по шестой уровень (этот стек представлен на рисунке поставщиком представительного сервиса (presentation service provider)), передается в виде прикладного протокольного блока данных (APDU) конечной системе-адресату. При получении сообщения конечной системой оно через сервисный элемент MHS будет передано локальному агенту, который после анализа этого сообщения запишет его в локальную файловую систему (file storage), точнее в почтовый ящик (mail folder), и проинформирует программу пользователя-получателя о поступлении сообщения.




Рис. 3. Пример организации прикладного уровня для программы пользователя, использующей сервис электронной почты


3. Протоколы прикладного уровня OSI

В настоящее время эталонная модель OSI является самой выдающейся в мире моделью архитектуры объединенных сетей. Она также является самым популярным средством приобретения знаний о сетях. Следует различать стек протоколов OSI и модель OSI. В то время как модель OSI концептуально определяет процедуру взаимодействия открытых систем, декомпозируя задачу на 7 уровней, стандартизирует назначение каждого уровня и вводит стандартные названия уровней, стек OSI - это набор вполне конкретных спецификаций протоколов, образующих согласованный стек протоколов. На Рис. 4 представлены некоторые протоколы стека OSI и их связь с эталонной моделью OSI.



Рис. 4. Протоколы стека OSI и их связь с эталонной моделью OSI

Наибольшего внимания заслуживают следующие пять протоколов прикладного уровня OSI:
  • File Transfer, Access and Management (FTAM) - протокол доступа к файлам; стандарт соединения открытых систем:
    - для передачи файлов (целиком);
    - для удаленного доступа к записям в файле; и
    - для создания, удаления и переименования файлов.
  • Common Management Information Protocol (CMIP) - протокол общей управляющей информации – протокол, определяющий стандартный способ управления сетями, разработанными различными производителями.
  • Virtual Terminal Protocol (VTP) - протокол виртуальных терминалов, обеспечивает эмуляцию терминалов, он позволяет компьютерной системе для отдаленного пользователя казаться непосредственно подключенным терминалом. С помощью VTP пользователь может, например, выполнять дистанционные работы на универсальных вычислительных машинах.
  • Massage Handling Systems (MHS) - системы обработки сообщений - обеспечивает механизм, лежащий в основе транспортировки данных для прикладных задач передачи сообщений по электронной почте и других задач, требующих услуг по хранению и продвижению данных.
  • Directory Services (DS) - услуги каталогов. Разработанная на основе спецификации Х.500 CITT, эта услуга предоставляет возможности распределенной базы данных, которые полезны для идентификации и адресации узлов высших уровней.

4. Протоколы прикладного уровня NetWare


NetWare является операционной системой сети (network operating system - NOS) и связанной с ней средой обеспечения услуг, разработанной Novell, Inc. и представленной на рынок в начале 1980 гг. В качестве среды NOS, NetWare определяет пять высших уровней эталонной модели OSI. Она обеспечивает совместное пользование файлами и принтером, поддержку различных прикладных задач, таких как передача электронной почты и доступ к базе данных, и другие услуги. Так же, как и другие NOS, базируется на архитектуре клиент-сервер (slient-server architecture). В таких архитектурах клиенты (иногда называемые рабочими станциями) запрашивают у серверов определенные услуги, такие как доступ к файлам и принтеру. Основная характеристика системы клиент-сервер заключается в том, что доступ к отдаленной сети является прозрачным для пользователя. Это достигается с помощью удаленного вызовова процедур (remote procedure calls) - такого процесса, когда программа местного компьютера, работающая на оборудовании клиента, отправляет вызов в удаленный сервер. Этот сервер выполняет указанную процедуру и возвращает запрошенную информацию клиенту местного компьютера.

Рис. 5 иллюстрирует в упрощенном виде известные протоколы NetWare и их связь с эталонной моделью OSI. При наличии соответствующих драйверов, NetWare может работать с любым протоколом доступа к носителю. На рисунке перечислены те протоколы доступа к носителю, которые в настоящее время обеспечиваются драйверами NetWare.




Рис. 5. Протоколы стека NetWare и их связь с эталонной моделью OSI

Протоколы высших уровней


NetWare поддерживает большое разнообразие протоколов высших уровней:
  • Netware Core Protocol (NCP) (Основной протокол NetWare) представляет собой ряд программ для сервера, предназначенных для удовлетворения запросов прикладных задач, приходящих, например, из NetWare shell. Услуги, предоставляемые NCP, включают доступ к файлам, доступ к принтеру, управление именами, учет использования ресурсов, защиту данных и синхронизацию файлов.
  • NetBIOS - программа эмуляции NetBIOS, обеспечиваемая NetWare, позволяет программам, написанным для промышленного стандартного интерфейса сеансового уровня Network Basic I/O System (NetBIOS) компаний IBM и Microsoft NetBIOS, работать в пределах системы NetWare.
  • Услуги прикладного уровня NetWare включают:

- NetWare Message Handling Service (NetWare MHS) - Услуги по обработке сообщений,

- Btrieve - реализация механизма доступа к базе данных двоичного дерева (btree) Novell,

- NetWare Loadable Modules (NLM) - Загружаемые модули NetWare


5. Прикладной уровень стека TCP/IP.


Прикладной уровень стека TCP/IP соответствует трем верхним уровням модели OSI: прикладному, представительному и сеансовому. Он объединяет службы, предоставляемые системой пользовательским приложениям. За долгие годы использования в сетях различных стран и организаций стек TCP/IP накопил большое количество протоколов и служб прикладного уровня. Протоколы прикладного уровня устанавливаются на хостах. Прикладной уровень реализуется программными системами, построенными в архитектуре клиент-сервер. В отличие от протоколов остальных трех уровней, протоколы прикладного уровня отрабатывают логику приложений и «не интересуются» способами передачи данных по сети, они обращаются к протоколам нижних уровней как к некоторому набору инструментов. Так, клиентская часть протокола прикладного уровня для обмена сообщениями со своей серверной частью, установленной на отдаленном узле составной сети, должна обратиться с запросом к нижележащему транспортному уровню…

На Рис. 6. представлены наиболее известные протоколы каждого из уровней стека TCP/IP и взаимосвязь между ними.





Рис.6. Протоколы стека TCP/IP

Функции прикладного уровня:

Функции прикладного уровня обычно включают идентификацию партнеров по связи, определение наличия ресурса и синхронизацию связи. При идентификации партнеров по связи прикладной уровень определяет подлинность и наличие партнеров по связи для прикладной программы, имеющей данные, готовые к передаче. При определении наличия ресурса прикладной уровень должен принять решение, существует ли достаточное количество сетевых ресурсов для запрошенной связи. При синхронизации связи весь обмен данными между прикладными программами требует взаимодействия, которое управлялось бы прикладным уровнем.
  1. Идентификация и установление наличия предполагаемых партнеров связи
  2. Синхронизация совместно работающих программ
  3. Установление соотношения по процедурам устранения ошибок
  4. Управление целостностью информации
  5. Протоколы прикладного уровня определяют, имеется ли в наличии достаточно ресурсов для предполагаемой связи
  6. Отвечает за то, чтобы информация, посылаемая из прикладного уровня одной системы, была читаема на прикладном уровне другой системы
  7. При необходимости осуществляет трансляцию между множеством форматов представления информации путем использования общего формата и структур данных, а также согласует синтаксис передачи данных для прикладного уровня
  8. Устанавливает и завершает сеансы взаимодействия между прикладными задачами, управляет этими сеансами, синхронизирует диалог между объектами и управляет обменом информации между ними
  9. Предоставляет средства для отправки информации и уведомления об исключительных ситуациях передачи данных.

Почему существуют два транспортных протокола TCP и UDP, а не один из них? Дело в том, что они предоставляют разные услуги прикладным процессам. Большинство прикладных программ пользуются только одним из них. Вы, как программист, выбираете тот протокол, который наилучшим образом соответствует вашим потребностям. Если вам нужна надежная доставка, то лучшим может быть TCP. Если вам нужна доставка датаграмм, то лучше может быть UDP. Если вам нужна эффективная доставка по длинному и ненадежному каналу передачи данных, то лучше может подойти протокол TCP. Если нужна эффективность на быстрых сетях с короткими соединениями, то лучшим может быть протокол UDP. Если ваши потребности не попадают ни в одну из этих категорий, то выбор транспортного протокола не ясен. Однако прикладные программы могут устранять недостатки выбранного протокола. Например, если вы выбрали UDP, а вам необходима надежность, то прикладная программа должна обеспечить надежность. Если вы выбрали TCP, а вам нужно передавать записи, то прикладная программа должна вставлять маркеры в поток байтов так, чтобы можно было различить записи.