Сессионный уровень, уровень представления, прикладной уровень

Сетевые технологии: как устроен Интернет 

 

Сессионный уровень, уровень представления, прикладной уровень

 

Функции верхних уровней

Компоненты четырех нижних уровней модели OSI (физического, канального, сетевого и транспортного) представляют собой механизм, обеспечивающий доставку данных любого типа и произвольного объема между программами, работающими на разных узлах составной сети. Однако, при работе в сети пользователям требуется не просто пересылка данных, а выполнение каких-либо операций с различными информационными объектами, например, файлами, папками, почтовыми сообщениями и т.п. Естественно, что тех возможностей, которые предоставляют средства нижних уровней, недостаточно.

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

  1. Формирование и передача с компьютера пользователя запроса, содержащего имя документа.

  2. Обработка запроса, поиск и пересылка файла документа с удаленного компьютера. 

  3. Отслеживание в процессе работы программным обеспечением удаленной машины изменений, вносимых в этот документ другими пользователями, и уведомление об этом пользователя.

Кроме того, эти действия могут предваряться этапом проверки прав пользователя на работу с документом, что предполагает дополнительный обмен информацией.

Предоставляя общие методы пересылки данных, компоненты нижних уровней не имеют средств, позволяющих реализовать специфику такого взаимодействия. Поэтому для его организации требуются дополнительные надстройки над средствами транспортного и нижележащих уровней. В эталонной модели OSI предусмотрены три уровня: сессионный уровень, уровень представления и прикладной уровень. Каждый из этих уровней выполняет определенные функции.

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

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

Все рассмотренные уровни модели OSI, по сути, являются сервисными уровнями. Они позволяют осуществлять работу с различными информационными ресурсами сети, например, файлами или сообщениями электронной почты. Естественно, что различные типы ресурсов в общем случае требуют различных методов обработки и, в том числе, методов сетевого взаимодействия. Поэтому самым верхним уровнем модели OSI является прикладной уровень, который обеспечивает сетевые функции работы с конкретными информационными объектами. В предложенном выше примере (чтение удаленного документа) к функциям прикладного протокола относятся формирование запросов на получение документа, проверка прав доступа, а также определение порядка пересылки файлов и уведомлений об изменении документа.

Следует отметить, что для методов работы с теми или иными ресурсами, определяемых протоколами прикладного уровня, часть функций сессионного уровня и уровня представления может оказаться избыточной, поэтому при программной реализации три верхних уровня обычно объединяются.

Технология клиент-сервер

В общем случае для организации работы пользователей сети с информационными ресурсами, распределенными по различным компьютерам, необходимы три составляющих:

  • программа, установленная на компьютере пользователя, которая может осуществлять сетевой запрос с целью получения объекта, и предназначенная для его обработки (например, просмотра, изменения или печати документа);

  • программа, установленная, как правило, на компьютере, где расположен информационный объект, которая может осуществлять по запросу поиск и пересылку объекта, а также упорядочивание доступа к нему нескольких пользователей;

  • правила (протокол) взаимодействия между этими программами.

Технология взаимодействия, в которой одна программа запрашивает выполнение какой-либо совокупности действий ("запрашивает услугу"), а другая ее выполняет, называется технологией "клиент-сервер". Участники такого взаимодействия называются соответственно клиентом (client) и сервером (server). Достаточно часто клиентом (или сервером) называют компьютеры, на которых функционирует то или иное клиентское (или серверное) программное обеспечение.

Следует особо отметить, что набор действий, понимаемых как запрашиваемая услуга, – это не обязательно чтение (получение) объекта. В том числе это может быть сохранение (запись), пересылка объекта и т.д.

Понятие сервиса

Как показывает практика, при реализации методов работы с объектами того или иного сетевого информационного ресурса может оказаться, что одной пары программ (клиента и сервера) недостаточно. Такая ситуация объясняется отличием алгоритмов обработки запросов разного типа. Поэтому может потребоваться разработка целого комплекса программного обеспечения и протоколов его взаимодействия. Классическим примером является работа электронной почты, когда отправка почтовых сообщений обеспечивается с помощью серверов и, соответственно, протокола одного типа (SMTP), а доставка сообщений получателю - с помощью серверов и протоколов других типов (POP3 или IMAP4). Комплекс программ и протоколов, обеспечивающий пользователю возможность работы с информационными объектами какого-либо информационного ресурса или нескольких ресурсов, является одной из составляющих такого понятия как сетевой сервис или служба.

 

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


Каждый сервис представляет собой совокупность следующих компонентов:

  • информационного ресурса – совокупности информационных объектов, например, документов, которые используются человеком;

  • программы-клиента, устанавливаемой на компьютерах пользователей, и обеспечивающей возможность работы с информационными объектами, расположенными на различных компьютерах сети;

  • набор программ-серверов, осуществляющих обработку запросов клиентского программного обеспечения и управляющих информационными объектами;

  • набор протоколов взаимодействия клиентского программного обеспечения с серверами.

Протоколы взаимодействия программного обеспечения сетевых сервисов относятся к трем верхним уровням модели OSI и используют в качестве средства доставки своих пакетов протоколы транспортного уровня TCP и UDP.

Основные сервисы Интернет

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

  • электронная почта (E-mail), обеспечивающая возможность обмена сообщениями одного человека с одним или несколькими абонентами;

  • телеконференции, или группы новостей (Usenet), обеспечивающие возможность коллективного обмена сообщениями;

  • сервис FTP – система файловых архивов, обеспечивающая хранение и пересылку файлов различных типов;

  • сервис Telnet, предназначенный для управления удаленными компьютерами в терминальном режиме;

  • World Wide Web (WWW, W3) – гипертекстовая (гипермедиа) система, предназначенная для интеграции различных сетевых ресурсов в единое информационное пространство;

  • сервис DNS, или система доменных имен, обеспечивающий возможность использования для адресации узлов сети мнемонических имен вместо числовых адресов;

  • сервис IRC, предназначенный для поддержки текстового общения в реальном времени (chat);

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

Наряду со стандартными сервисами существуют и нестандартные, представляющие собой оригинальную разработку той или иной компании. В качестве примера можно привести различные системы типа Instant Messenger (своеобразные Интернет-пейджеры – ICQ, AOl, Demos on-line и т.п.), системы Интернет-телефонии, трансляции радио и видео и т.д. Важной особенностью таких систем является отсутствие международных стандартов, что может привести к возникновению технических конфликтов с другими подобными сервисами.

Стандартные порты транспортных протоколов для сервисов

Для стандартных сервисов также стандартизируется и интерфейс взаимодействия с протоколами транспортного уровня. В частности, за каждым программным сервером резервируются стандартные номера TCP- и UDP-портов, которые остаются неизменными независимо от особенностей той или иной фирменной реализации как компонентов сервиса, так и транспортных протоколов. Номера портов клиентского программного обеспечения так жестко не регламентируются. Это объясняется следующими факторами:

  • во-первых, на пользовательском узле может функционировать несколько копий клиентской программы, и каждая из них должна однозначно идентифицироваться транспортным протоколом, т.е. за каждой копией должен быть закреплен свой уникальный номер порта;

  • во-вторых, клиенту важна регламентация портов сервера, чтобы знать, куда направлять запрос, а сервер сможет ответить клиенту, узнав адрес из поступившего запроса.

В приведенной ниже таблице перечислены стандартные номера портов для основных сервисов.

 

Компонент службы Номер порта Транспортные протоколы
Электронная почта
SMTP-сервер 25 TCP
POP3-сервер 110 TCP
IMAP-сервер 143 TCP
Телеконференции
NNTP-сервер 119 TCP
FTP
FTP-сервер 20, 21 TCP
Telnet
Telnet-сервер 23 TCP
WWW
HTTP-сервер 80 TCP
DNS
DNS-сервер 53 TCP, UDP

Резюме

  1. Принципы взаимодействия программного обеспечения, предназначенного для работы пользователей с различными информационными ресурсами, регламентируются верхними уровнями модели OSI: сессионным уровнем, уровнем представления и прикладным уровнем;
  2. основной функцией средств сессионного уровня является установление и поддержка логического сеанса связи между программами;
  3. средства уровня представления обеспечивают промежуточное преобразование данных, подлежащих передачи по сети;
  4. в задачи прикладного уровня входит обеспечение высокоуровневых функций сетевого взаимодействия, например, передачи файлов;
  5. программные средства, относящиеся к этим уровням, взаимодействуют в соответствии со схемой "клиент-сервер";
  6. комплекс клиентского и серверного программного обеспечения и протоколов взаимодействия, обеспечивающий работу с определенными сетевыми ресурсами, а также сами информационные ресурсы составляют сетевой сервис или сетевую службу;
  7. в настоящее время существует большое количество разнообразных сервисов сети Интернет.
Дата последнего обновления страницы 31.08.2023
Сайт создан по технологии «Конструктор сайтов e-Publish»
Версия для слабовидящих
Размер шрифта Шрифт Межсимвольный интервал Межстрочный интервал Цветовая схема Изображения