Основы построения сетей пакетной коммутации

Прикладной уровень

Показывать лекцию целиком

10.1. Верхние уровни сетевых моделей

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

Уровень представления 6 изменяет форму передаваемых данных в вид удобный для передачи по сети адресату. Например, передаваемые с верхнего уровня 7 данные преобразуются в общепринятый формат ASCII; при передаче изображений используются форматы обмена графическими данными GIF, PNG. На уровне 6 также происходит шифрация и сжатие данных (протоколы MPEG, JPEG).

Сеансовый уровень 5 устанавливает и поддерживает сеанс связи двух приложений конечных узлов (компьютеров), определяет, какой узел является ведущим, а какой ведомым, задает для передающей стороны время передачи. Этот уровень определяет также сеанс связи с сетью Интернет.

Прикладной уровень модели TCP/IP охватывает три уровня модели OSI (прикладной, представления, сеансовый). Широко используемые известные приложения (HTTP, FTP, SMTP, DNS) включают функции всех трех верхних уровней модели OSI.

Уровень приложений реализован в виде комплекса программных средств, представленных в двух формах: в виде приложений (applications) и в виде программ служб сервиса (services).

Сопряжение человека с сетью обеспечивают приложения. Широко известно такое приложение этого уровня, как web-браузер всемирной паутины - сервиса, предоставляющего доступ к гипертекстовой информации (World Wide Web - WWW), что позволяет людям готовить сообщения для передачи по сети и принимать такие сообщения. Наиболее известными web-браузерами являются Google Chrome, Internet Explorer, Mozilla Firefox.

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

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

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

Наиболее распространенными протоколами и службами прикладного уровня являются:

  • протоколы электронной почты (Simple Mail Transfer Protocol - SMTP, Post Office Protocol - POP, Internet Messaging Access Protocol - IMAP);
  • протокол передачи гипертекстовой информации или web-сервер (Hypertext Transfer Protocol - HTTP);
  • протокол передачи файлов (File Transfer Protocol - FTP) и простой протокол передачи файлов (Trivial FTP - TFTP);
  • система доменных имен (Domain Name System - DNS);
  • протокол удаленного доступа (Telnet), обеспечивающий виртуальное соединение с удаленными сетевыми устройствами и протокол удаленного доступа, обеспечивающий шифрование передаваемых данных (Secure Shell - SSH);
  • протокол динамического конфигурирования узлов (Dynamic Host Configuration Protocol - DHCP).
  • Таким образом, приложения обеспечивают интерфейс (сопряжение) человека с сетью. Службы сервиса - используют программные средства протоколов, чтобы подготовить информацию для передачи по сети.

    10.2. Модели построения сети

    Существуют две модели построения сети:

  • Модель "клиент - сервер";
  • Модель соединения равноправных узлов сети (peer-to-peer - Р2Р) или, по-другому, модель одноранговой сети.
  • При соединении равноправных узлов связанные через сеть конечные устройства разделяют общие ресурсы (например, принтеры, файлы) без выделенного сервера. Модель соединения равноправных узлов сети (peer-to-peer - Р2Р) представлена одноранговыми сетями и Р2Р приложениями.

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

    Равноправные приложения Р2Р на конечных устройствах позволяют одновременно функционировать им и как сервер, и как клиент в одном сеансе связи. Некоторые приложения Р2Р используют гибридную систему, когда ресурсы и доступ к ним децентрализованы, а информация о нахождении ресурсов находится в централизованном каталоге. Равноправным приложениям требуется конкретный пользовательский интерфейс и фоновый сервис. Среди приложений Р2Р можно отметить eMule, Bitcoin и др. Приложения Р2Р используются как в одноранговых сетях, так и в сетях модели "клиент - сервер", в том числе - в сети Интернет. Ряд приложений Р2Р базируются на протоколе Gnutella, который дает возможность поиска ресурсов нескольких узлов.

    Согласно модели "клиент - сервер" обмен данными между клиентами происходит через выделенный сервер. Клиент запрашивает информацию, пересылая запрос выделенному серверу (upload), который в ответ на запрос посылает файл данных (download), принимаемый клиентом. Следовательно, клиент инициирует процесс обмена информацией в среде "клиент - сервер" и получает от сервера требуемую информацию. Пересылка сообщения от клиента на сервер получил название отправка, а с сервера клиенту - загрузка. Для реализации такой модели программное обеспечение должно состоять из двух частей: клиентского (клиент) и серверного (сервер) приложений.

    Главным достоинством модели "клиент - сервер" является централизация управления сетью, что повышает безопасность сети.

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

    10.3.1. Протоколы передачи электронной почты

    При передаче электронной почты и взаимодействии почтовых серверов между собой используется простой протокол передачи почты (Simple Mail Transfer Protocol - SMTP), у которого номер порта 25. Для получения клиентом сообщения с сервера используется протокол почтового отделения (Post Office Protocol - POP) с номером порта 110 или протокол доступа к сообщениям (Internet Messaging Access Protocol - IMAP).

    На рис 10.1 приведена модель клиент-сервер в службе электронной почты. При пересылке почты от клиента на сервер используется протокол SMTP. Получив сообщение клиента, сервер ставит его в очередь или пересылает на другой сервер, используя протокол SMTP.

    (рис 10.1) Модель клиент-сервер в службе электронной почты

    Когда почтовый сервер получает сообщение, предназначенное для его клиента, он хранит это сообщение и ждет, когда адресат назначения заберет свою почту. Почтовые клиенты забирают сообщения (процесс download), используя один из сетевых протоколов. Самые популярные почтовые протоколы клиента - POP3 и IMAP4, которые на транспортном уровне используют протокол TCP для надежной доставки данных. Когда сообщение доставляется клиенту по протоколу РОР, оно удаляется с сервера. Согласно протокола IMAP в приложение клиента загружается копия сообщения, которое остается на сервере, пока не будет удалено клиентом. В этом случае сервер является удобным местом хранения архива сообщений.

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

    В процессе подготовки электронной почты люди используют клиентское приложение, называемое почтовый агент пользователя, почтовый клиент (Mail User Agent - ).

    (рис 10.2) Передача электронной почты по сети

    При передаче сообщений между серверами используется Агент передачи почты (Mail Transfer Agent - MTA). Агент MTA получает сообщения от MUA или от другого MTA и передает их по сети. Агенты MTA используют протокол SMTP, для передачи электронной почты между серверами. Если сообщение из сервера может быть отправлено сразу клиенту локальной сети, то подключается Агент доставки почты (Mail Delivery Agent - MDA). Агент MDA получает прибывающую почту от MTA и помещает ее в соответствующие почтовые ящики пользователей, используя протокол РОР.

    10.3.2. Протокол HTTP

    Самым распространенным протоколом прикладного уровня в настоящее время является протокол передачи гипертекстовой информации (Hypertext Transfer Protocol - HTTP), который работает в сети Интернет. Его основным приложением является Web-браузер, который отображает данные на Web-страницах, используя текст, графику, звук и видео. Web-страницы создаются с использованием языка разметки гипертекста Hypertext Markup Language (HTML), который определяет местоположения для размещения текста, файлов и объектов, которые должны быть переданы от сервера по сети до Web-браузера. Протокол HTTP имеет номер порта - 80, и функционирует совместно с протоколом транспортного уровня TCP.

    Для создания запроса в адресной строке вводится веб-адрес или, по-другому, унифицированный указатель ресурса URL. Например, веб-адрес https://www.netacad.com/group/landing/,состоит из названия протокола (https), имени сервера (www.netacad.com) и названия конкретной страницы (group/landing/). Веб-браузер клиента (Google Chrome, Internet Explorer, Mozilla Firefox) устанавливает связь с веб-сервером. В ответ на запрос сервер посылает клиенту сети текст, аудио-, видео- и графические файлы. Браузер клиента собирает все файлы, чтобы создать изображение Web-страницы, которая представляется пользователю.

    При обмене данными между клиентом и сервером используются 3 типа сообщений (GET, POST,PUT). Когда вводится веб-адрес, то формируется запрос и передается сообщение GET. Сообщение POST используется для передачи данных на сервер, когда эти данные вставлены в определенную форму (таблицу), например, при формировании заказа на покупку. Запрос PUT используется для передачи на сервер сообщения с вложенными файлами.

    Протокол HTTP характеризуется сравнительно невысоким уровнем безопасности, поскольку передаваемые по сети сообщения не зашифрованы. Для повышения уровня безопасности передачи сообщений через Интернет разработан протокол HTTP-Secure (HTTPS). В этом протоколе используется процесс шифрования (криптографирования) данных (encryption) и аутентификации (authentication), что существенно повышает уровень безопасности. Номер порта протокола HTTPS - 443.

    10.3.3. Система доменных имен DNS

    был изменен на 72.163.4.161, затем на 23.215.112.117.Поскольку для передачи по сети требуется числовой IP-адрес, то конечный узел (хост) обращается к DNS-серверу и по имени сайта получает соответствующий адрес. Служба DNS использует распределенный набор серверов разного уровня иерархии, чтобы получить требуемое соответствие между именем и числовым IP-адресом.

    Операционные системы компьютеров содержат утилиту приведен пример выполнения команды nslookup, которая позволяет пользователю вручную запросить адрес DNS сервера. Команда выполняется в режиме командной строки (Пуск -> Программы -> Стандартные -> Командная строка). В приведенном ниже примере выполнено четыре команды:

  • По команде nslookup был получен адрес DNS сервера - 10.0.6.10.
  • Затем был произведен запрос адреса сайта www.cisco.com, IP-адрес которого - 72.163.4.161.
  • Был запрошен адрес сайта cisco.netacad.net - 128.107.229.50.
  • Запрос сайта www.psuti.ru дал результат - 89.186.238.202.
  • (рис 10.3) Пример выполнения команды nslookup

    Служба прикладного уровня DNS характеризуется номером порта 53 и взаимодействует как с протоколом транспортного уровня TCP, так и с протоколом UDP.

    DNS-серверы хранят различные типы записей:

    А - адрес конечного узла;
    NS - имя сервера, доверенный сервер имен;
    CNAME - полное доменное имя;
    MX - запись, связывающая имя домена со списком почтовых серверов.

    Когда клиент делает запрос, локальный сервер сначала проверяет собственные записи. Если соответствующих пар "имя - адрес" у него нет, то он связывается с другими серверами DNS более высокого уровня иерархии. При нахождении запрашиваемого адреса он передается запрашивающему серверу и затем клиенту. Этот адрес определенное время хранится в кэш-памяти сервера, что при повторном запросе ускоряет процесс.

    Сервер является доверенным (авторитетным) для записей, соответствующих его уровню иерархии доменов. Например, сервер netacad.com - доверенный сервер для всех записей с именами netacad.

    10.3.4. Протокол динамического конфигурирования узлов DHCP

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

    Протокол динамического конфигурирования узлов (Dynamic Host Configuration Protocol - DHCP) позволяет автоматизировать процесс назначения IP-адресов рабочим станциям из диапазона, предоставленного администратору провайдером. Динамическое назначение адресов протоколом DHCP производится по запросу клиента на определенный промежуток времени, для продления которого пользователь должен периодически обращаться к серверу. При освобождении IP-адресов они возвращаются DHCP-серверу, который перераспределяет их. При повторном запросе клиента, освободившего IP-адрес, сервер пытается назначить ранее использовавшийся адрес. Помимо IP-адреса протокол DHCP предоставляет пользователю еще целый ряд параметров (маску подсети, шлюз по умолчанию, IP-адрес сервера DNS и др.).

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

    Получение адресной информации от DHCP-сервера (IP-адрес, маска подсети, адрес шлюза по умолчанию, адрес DNS-сервера) происходит за 4 этапа (рис 10.4):

  • Клиент, которому необходима адресная информация, посылает в сеть кадр с МАС-адресом назначения FF-FF-FF-FF-FF-FF широковещательного запроса DHCP DISCOVER для обнаружения серверов.
  • Сервер отвечает предложением арендовать IP-адрес (DHCP OFFER) с использованием одноадресной рассылки.
  • В локальной сети может быть несколько DHCP-серверов. Поэтому клиент выбирает сервер и посылает ему запрос DHCP REQUEST.
  • Сервер отвечает положительным подтверждением DHCP PACK или дает отрицательный ответ DHCP NAK, если истекло время действия предложения или предложенный адрес уже передан другому клиенту. В этом случае процесс получения адресной информации нужно начать заново с посылки широковещательного запроса DHCP DISCOVER.
  • (рис 10.4) Получение адресной информации от DHCP-сервера

    Продление срока аренды IP-адреса производится путем посылки запроса DHCP REQUEST.

    Некоторые сведения о функционировании протокола DHCP в сетях IPv6 были представлены в разделе 7.5.

    10.3.5. Протоколы передачи файлов FTP и TFTP

    Протокол передачи файлов (File Transfer Protocol - FTP) - служба, ориентированная на предварительное соединение (connection-oriented), которая взаимодействует с протоколом транспортного уровня TCP. Главная цель протокола FTP состоит в том, чтобы передавать файлы от одного компьютера другому, или копировать и перемещать файлы от серверов клиентам и от клиентов серверам. Протокол FTP широко используется в библиотечных системах для передачи клиенту требуемой литературы.

    Протокол передачи файлов FTP сначала устанавливает соединение между клиентом и сервером, используя команды запроса клиента и ответы сервера. При этом используется номер порта 21. Затем производится обмен данными, когда номер порта - 20. Передача данных может производиться с использованием кода ASCII или в двоичном коде. Эти режимы определяют кодирование, используемое для файла данных, которое в модели OSI является задачей уровня представления (presentation). После завершения передачи файла, соединение для передачи данных заканчивается автоматически. Управление сеансом связи происходит на сеансовом (Session)уровне.

    Протокол должен постоянно отслеживать запросы клиентов, для чего в фоновом режиме запускается программа "демон".

    Простой протокол передачи файлов (Trivial File Transfer Protocol - TFTP) - служба без установления соединения (connectionless), которая работает совместно с протоколом транспортного уровня (User Datagram Protocol - UDP). Протокол TFTP используется на маршрутизаторах, чтобы загружать файлы конфигурации и операционную систему Cisco IOS, а также для передачи файлов между системами, которые поддерживают TFTP. Протокол TFTP характеризует простота и малый объем программного обеспечения. Протокол TFTP может читать или записывать файлы при соединении с сервером, но не ведет списки и каталоги. Поэтому протокол TFTP работает быстрее, чем протокол FTP.

    10.3.6. Протокол обмена блоками серверных сообщений

    Протокол обмена блоками серверных сообщений (Server Message Block - SMB) служит для обмена файлами между клиентом и сервером, также как протоколы FTP, HTTP. Особенностью SMB является то, что клиенты устанавливают долгосрочное соединение с сервером. Это эффективно при загрузке большого количества файлов. Протокол SMB разработан фирмой IBM. Он может выполнять аутентификацию сессий.

    10.3.7. Протокол удаленного доступа Telnet

    Протокол Telnet обеспечивает подключение к командной строке удаленного узла, т.е. обеспечивает виртуальное соединение пользователя с удаленными сетевыми устройствами: компьютерами, маршрутизаторами, коммутаторами. Чтобы сделать подключение клиента по протоколу Telnet, задают имя удаленного узла. В качестве имени узла используется IP-адрес или имя доменной системы DNS удаленного устройства. Вся обработка информации и использование памяти производится на процессоре удаленного устройства, а отображение результатов конфигурирования протокол Telnet транслирует на монитор пользователя. Telnet работает на уровне приложений модели TCP/IP, поэтому охватывает все уровни модели OSI. Номер порта протокола Telnet - 23.

    Протокол Telnet поддерживает аутентификацию, поэтому на удаленном устройстве задается пароль, который должен знать пользователь. Однако Telnet не поддерживает криптографирование данных, которые передаются по сети как простой текст. Это означает, что данные могут быть перехвачены. Для защиты передаваемой информации разработан протокол удаленного доступа, обеспечивающий шифрование передаваемых данных (Secure Shell - SSH). Он обеспечивает криптографирование данных и более надежную аутентификацию, номер порта - 22. В настоящее время протокол SSH заменяет Telnet.

    Краткие итоги лекции 10

  • Прикладной уровень представляет собой комплекс программных средств, представленных в двух формах: приложений и служб сервиса.
  • Сопряжение человека с сетью обеспечивают приложения.
  • Программы служб сервиса готовят данные для передачи по сети, обеспечивая эффективное использование ресурсов сети.
  • В одноранговой сети peer-to-peer связанные через сеть конечные узлы разделяют общие ресурсы (принтеры, файлы) без выделенного сервера.
  • Равноправные приложения Р2Р на конечных устройствах позволяют одновременно функционировать им и как сервер, и как клиент в одном сеансе связи. Равноправным приложениям требуется конкретный пользовательский интерфейс и фоновый сервис.
  • В сети модели "клиент - сервер" клиент запрашивает информацию, пересылая запрос выделенному серверу, который в ответ на запрос посылает файл, принимаемый клиентом.
  • Наиболее распространенными протоколами и службами уровня приложений являются: протоколы электронной почты SMTP, POP, IMAP; протоколы передачи гипертекстовой информации HTTP, HTTPS; протокол передачи файлов FTP; простой протокол передачи файлов TFTP; система доменных имен DNS; протоколы удаленного доступа Telnet и SSH; протокол динамического конфигурирования узлов DHCP.
  • Почтовые серверы общаются друг с другом, используя протокол SMTP, который транспортирует почтовые сообщения в текстовом формате, взаимодействуя с TCP.
  • Почтовые протоколы клиента - POP3 и IMAP4 на транспортном уровне используют протокол TCP для надежной доставки данных. Когда сообщение доставляется клиенту по протоколу РОР, оно удаляется с сервера. Согласно протокола IMAP, в приложение клиента загружается копия сообщения, которое остается на сервере, пока не будет удалено клиентом. В этом случае сервер является для клиента удобным местом хранения архива сообщений.
  • Протокол передачи гипертекстовой информации (HTTP) работает в сети Интернет, номер порта - 80. Его основным приложением является Web-браузер. При обмене данными между клиентом и сервером используются 3 типа сообщений: GET, POST, PUT.
  • Для повышения уровня безопасности передачи сообщений через Интернет разработан протокол HTTP Secure (HTTPS), в котором используется шифрование (криптографирование) данных и аутентификация, что повышает уровень безопасности. Номер порта протокола HTTPS - 443.
  • Система доменных имен (DNS), используется для того, чтобы переводить имена сайтов или доменов в числовые значения IP-адреса.
  • Утилита nslookup позволяет пользователю вручную запрашивать адрес сервера и идентифицировать название хоста.
  • Протокол динамического конфигурирования узлов(DHCP) позволяет автоматизировать процесс назначения IP-адресов рабочим станциям из диапазона (пула), предоставленного администратору провайдером.
  • Рекомендуется назначать статические IP-адреса на маршрутизаторы, серверы, сетевые принтеры.
  • Протокол передачи файлов (FTP) ориентирован на передачу файлов от одного компьютера другому, или на перемещение файлов от серверов клиентам и от клиентов серверам.
  • Протокол обмена блоками серверных сообщений (SMB) служит для обмена файлами между клиентом и сервером, также как протоколы FTP, HTTP. Особенностью SMB является то, что клиенты устанавливают долгосрочное соединение с сервером, что эффективно при загрузке большого количества файлов.
  • Протокол Telnet обеспечивает подключение к командной строке удаленного узла, т.е. обеспечивает виртуальное соединение пользователя с удаленными сетевыми устройствами, номер порта - 23.
  • Протокол удаленного доступа (Secure Shell - SSH) обеспечивает шифрование передаваемых данных и надежную аутентификацию, номер порта - 22.
  • Вопросы

  • Какие уровни модели OSI соответствуют прикладному уровню модели TCP/IP?
  • Каковы две формы программных средств прикладного уровня?
  • Где находятся основные ресурсы сети модели "клиент - сервер"?
  • Где находятся основные ресурсы сети модели "peer-to-peer"?
  • В чем различие сетей моделей с выделенным сервером и одноранговых с точки управления и безопасности?
  • Какие функции выполняет протокол HTTP?
  • В чем различие между протоколами HTTP и HTTPS?
  • Какую информацию передают сообщения GET, PUT, POST?
  • В чем различие между протоколом FTP и HTTP?
  • Какую функцию выполняет программа "демон"?
  • Для чего используется система доменных имен DNS?
  • По какой команде можно получить адрес DNS сервера?
  • Если удаленный сайт сменил IP-адрес, то может ли пользователь получить доступ к нему?
  • Какой сервер является доверенным (авторитетным) для записей?
  • В чем различие протоколов POP и IMAP?
  • Какие протоколы обеспечивают удаленный доступ, т.е. подключение пользователя к командной строке удаленного узла?
  • Какой протокол обеспечивает динамическое конфигурирование узлов?
  • Какой вид адресации используется для обращения к DHCP серверу?
  • Для чего используются сообщения DHCP DISCOVER, DHCP OFFER, DHCP REQUEST, DHCP PACK?
  • В чем отличие и особенность протокола SMB по сравнению с FTP?
  • Упражнения

  • Перечислите номера портов протоколов HTTP, HTTPS, FTP, DNS, Telnet, SMTP, РОР. Укажите, какие функции выполняют данные протоколы.
  • Назовите протоколы передачи электронной почты. Объясните различие протоколов POP и IMAP.
  • С использованием командной строки выполните команды: ipconfig, nslookup на своем компьютере. Прокомментируйте их.
  • Определите IP-адреса сайтов: , cisco.netacad.net, www.psuti.ru. Сравните их с рис www.cisco.com">10.3">рис www.cisco.com, cisco.netacad.net, www.psuti.ru. Сравните их с
    Вернуться к учебному плану