Прикладной уровень – это в действительности просто набор разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например, с помощью протокола электронной почты. Единица данных, которой оперирует прикладной уровень, обычно называется сообщением (message).
Существует очень большое разнообразие служб прикладного уровня. К числу наиболее распространенных протоколов верхних уровней относятся:
FTP – протокол переноса файлов;
TFTP – упрощенный протокол переноса файлов;
X.400 – электронная почта;
Telnet;
SMTP – простой протокол почтового обмена;
CMIP – общий протокол управления информацией;
SNMP – простой протокол управления сетью;
NFS – сетевая файловая система;
Разумеется, в настоящее время основным используемым семейством протоколов является TCP/IP, разработка которого не была связана с моделью OSI. За все время существования модели OSI она не была реализована (что говорится один-в-один), и, по-видимому, не будет реализована никогда. Сегодня используется только некоторое подмножество модели OSI. Считается, что модель слишком сложна, а её реализация займёт слишком много времени
Протоколы прикладного уровня
Протоколы прикладного уровня ориентированы на конкретные прикладные задачи. Они определяют как процедуры по организации взаимодействия определенного типа между прикладными процессами, так и форму представления информации при таком взаимодействии.
Система доменных имен DNS
Соответствие между доменными именами и IP-адресами может устанавливаться как средствами локального хоста, так и средствами централизованной службы. На раннем этапе развития Internet на каждом хосте вручную создавался текстовый файл с известным именем hosts. Этот файл состоял из некоторого количества строк, каждая из которых содержала одну пару «IP-адрес - доменное имя», например:
207.232.83.10 - www.dlink.com
По мере роста Internet, файлы hosts также росли, и создание масштабируемого решения для разрешения имен стало необходимостью. Таким решением стала специальная служба - система доменных имен (Domain Name System, DNS).
DNS – это централизованная служба, основанная на распределенной базе отображений «доменное имя - IP-адрес». Служба DNS использует в своей работе протокол типа «клиент-сервер». В нем определены DNS-серверы и DNS-клиенты. DNS-серверы поддерживают распределенную базу отображений, а DNS-клиенты обращаются к серверам с запросами о разрешении доменного имени в IP-адрес.
Служба DNS использует текстовые файлы почти такого формата, как и файл hosts, и эти файлы администратор также подготавливает вручную. Однако служба DNS опирается на иерархию доменов, и каждый сервер службы DNS хранит только часть имен сети, а не все имена, как это происходит при использовании файлов hosts. При росте количества узлов в сети проблема масштабирования решается созданием новых доменов и поддоменов имен и добавлением в службу DNS новых серверов.
В стеке TCP/IP применяется доменная система имен, которая имеет иерархическую древовидную структуру, допускающую использование в имени произвольного количества составных частей .
Рис. 27. Иерархическая древовидная структура DNS
Дерево имен начинается с корня, обозначаемого здесь точкой (.). Затем следует старшая символьная часть имени, вторая по старшинству символьная часть имени и т. д. Младшая часть имени соответствует конечному узлу сети. Составные части доменного имени отделяется друг от друга точкой. Например, в имени partnering.dlink.com составляющая partnering является именем одного из компьютеров в домене dlink.com.
Разделение имени на части позволяет разделить административную ответственность за назначение уникальных имен между различными людьми или организациями в пределах своего уровня иерархии. Разделение административной ответственности позволяет решить проблему образования уникальных имен без взаимных консультаций между организациями, отвечающими за имена одного уровня иерархии. Очевидно, что должна существовать одна организация, отвечающая за назначение имен верхнего уровня иерархии.
Совокупность имен, у которых несколько старших составных частей совпадают, образуют домен имен (domain).
Например, имена ftp.dlink.ru и dlink.ru входят в домен в ru, так как все эти имена имеют одну общую старшую часть – имя ru.
Если один домен входит в другой домен как его составная часть, то такой домен могут называть поддоменом (subdomain), хотя название домен за ним также остается. Обычно поддомен называют по имени той его старшей составляющей, которая отличает его от других поддоменов.
Например, поддомен dlink.ru обычно называют поддоменом (или доменом) dlink в российском сегменте (домене) «ru».
Имя поддомену назначает администратор вышестоящего домена. Если в каждом домене и поддомене обеспечивается уникальность имен следующего уровня иерархии, то и вся система имен будет состоять из уникальных имен.
В доменной системе имен различают краткие имена, относительные имена и полные доменные имена.
Краткое имя – это имя конечного узла сети: хоста или порта маршрутизатора. Краткое имя - это лист дерева имен.
Относительное имя – это составное имя, начинающееся с некоторого уровня иерархии, но не самого верхнего. Например, www.dlink- это относительное имя.
Полное доменное имя (fully qualified domain name, FQDN) включает составляющие всех уровней иерархии, начиная от краткого имени и кончая корневой точкой: www.dlink.ru
Протоколы Telnet, SSH
Telnet – протокол эмуляции терминала, обычно используемый в сети Интернет и в сетях, работающих по протоколам, основанным на TCP/IP. Протокол telnet был первоначально разработан для ARPAnet и является важной частью протокола передачи данных TCP/IP.
Протокол Telnet позволяет обслуживающей машине рассматривать все удаленные терминалы как стандартные «сетевые виртуальные терминалы» строчного типа, работающие в коде ASCII, а также обеспечивает возможность согласования более сложных функций (например, локальный или удаленный эхо-контроль, страничный режим, высота и ширина экрана и т.д.). Telnet работает на базе протокола TCP.
На прикладном уровне над Telnet находится либо программа поддержки реального терминала (на стороне пользователя), либо прикладной процесс в обсуживающей машине, к которому осуществляется доступ с терминала. Это позволяет пользователю терминала или персонального компьютера, регистрироваться в системе удаленного компьютера и выполнять программы.
SSH (Secure Shell) – сетевой протокол, позволяющий производить удалённое управление компьютером и передачу файлов. Протокол похож по функциональности на протокол Telnet, однако использует алгоритмы шифрования передаваемой информации.
Протоколы FTP и TFTP
Протокол FTP распространен также широко как Telnet, и также как он представляет собой клиент-серверный протокол. Он является одним из старейших протоколов семейства TCP/IP. Также как Telnet он пользуется транспортными услугами TCP.
FTP (англ. File Transfer Protocol — протокол передачи файлов) — протокол, предназначенный для передачи файлов в компьютерных сетях. FTP позволяет подключаться к серверам FTP, просматривать содержимое каталогов и загружать файлы с сервера или на сервер; кроме того, возможен режим передачи файлов между серверами.
TFTP (Trivial FTP, RFC-1350, -783, RFC-906, STD0033) представляет собой упрощенную версию FTP. TFTP не имеет системы безопасности и идентификации, она в отличии от FTP базируется на протоколе UDP (порт 69), а не TCP. Обычно передача осуществляется блоками по 512 байт с ожиданием подтверждения приема каждого пакета (протокол "стой-и-жди"). TFTP используется при загрузке операционной системы в бездисковые рабочие станции или для загрузки конфигурационных файлов в маршрутизатор.
Поскольку протокол не поддерживает аутентификации, единственный метод идентификации клиента — это его сетевой адрес (который может быть подделан).
Протоколы HTTP и SSL
HTTP (сокр. от англ. HyperText Transfer Protocol, «протокол передачи гипертекста») – протокол прикладного уровня передачи данных (изначально – в виде гипертекстовых документов). Основой HTTP является технология «клиент-сервер», то есть предполагается существование потребителей (клиентов), которые инициируют соединение и посылают запрос, и поставщиков (серверов), которые ожидают соединения для получения запроса, производят необходимые действия и возвращают обратно сообщение с результатом. HTTP в настоящее время повсеместно используется во Всемирной паутине для получения информации с веб-сайтов.
HTTP используется также в качестве «транспорта» для других протоколов прикладного уровня, таких как SOAP, XML-RPC, WebDAV.
Основным объектом манипуляции в HTTP является ресурс, на который указывает URI (англ. Uniform Resource Identifier – унифицированный (единообразный) идентификатор ресурса) в запросе клиента. Обычно такими ресурсами являются хранящиеся на сервере файлы, но ими могут быть логические объекты или что-то абстрактное. Особенностью протокола HTTP является возможность указать в запросе и ответе способ представления одного и того же ресурса по различным параметрам: формату, кодировке, языку и т. д. Именно благодаря возможности указания способа кодирования сообщения клиент и сервер могут обмениваться двоичными данными, хотя данный протокол является текстовым.
HTTP – протокол прикладного уровня, аналогичными ему являются FTP и SMTP. Обмен сообщениями идёт по обыкновенной схеме «запрос-ответ». Для идентификации ресурсов HTTP использует глобальные URL. В отличие от многих других протоколов, HTTP не сохраняет своего состояния. Это означает отсутствие сохранения промежуточного состояния между парами «запрос-ответ». Компоненты, использующие HTTP, могут самостоятельно осуществлять сохранение информации о состоянии, связанной с последними запросами и ответами. Браузер, посылающий запросы, может отслеживать задержки ответов. Сервер может хранить IP-адреса и заголовки запросов последних клиентов. Однако в самом протоколе не предусмотрена внутренняя поддержка состояния.
Первоначально протокол HTTP разрабатывался для доступа к гипертекстовым документам Интернет. Поэтому основными реализациями клиентов являются браузеры (агенты пользователя). Популярные браузеры :Internet Explorer, Mozilla Firefox, Opera, и др.
HTTP протокол предлагает достаточно простой, парольный способ идентификации того или иного пользователя. В момент соединения с сервером, пользователь вводит пароль, пароль передается серверу в открытом, не зашифрованном виде, и далее, проверив соответствие пароля и имени пользователя, сервер открывает или не открывает затребованное соединение.
Протокол SSL (secure socket layer) разработанный фирмой Netscape, как протокол обеспечивающий защиту данных между сервисными протоколами (такими как HTTP, NNTP, FTP и т.д.) и транспортными протоколами (TCP/IP). Часто для него используется аббревиатура HTTPS. Именно эта латинская буква «s» превращает обычный, не защищенный канал передачи данных в Интернете по протоколу HTTP, в засекреченный или защищенный.
Протокол SSL предоставляет «безопасный канал», который имеет три основных свойства:
· канал является частным; шифрование используется для всех сообщений после простого диалога, который служит для определения секретного ключа;
· канал аутентифицирован; серверная сторона диалога всегда аутентифицируется, в то время как клиентская – аутентифицируется опционно;
· канал надежен; транспортировка сообщений включает в себя проверку целостности (с привлечением MAC).
Появление такого протокола как SSL было вполне закономерным явлением. С одной стороны остаются все возможности сервисных протоколов (для программ-серверов), плюс к этому все данные передаются в зашифрованном виде. И раскодировать их довольно трудно. Следует отметить, что SSL не только обеспечивает защиту данных в Интернете, но так же производит опознание сервера и клиента (server/client authentication).
Протокол DHCP
DHCP (англ. Dynamic Host Configuration Protocol, протокол динамической конфигурации узла) – это сетевой протокол, позволяющий компьютерам автоматически получать IP-адрес и другие параметры, необходимые для работы в сети TCP/IP. Данный протокол работает по модели «клиент-сервер». Протокол DHCP представляет собой стандартный протокол, определенный RFC 1541 (заменен на RFC 2131), который позволяет серверу динамически присваивать клиентам IP-адреса и сведения о конфигурации. Сетевой администратор может задать диапазон адресов, распределяемых сервером среди компьютеров. Это позволяет избежать ручной настройки компьютеров сети и уменьшает количество ошибок. Протокол DHCP используется в большинстве крупных (и не очень) сетей TCP/IP.
DHCP является расширением протокола BOOTP, использовавшегося ранее для обеспечения бездисковых рабочих станций IP-адресами при их загрузке. DHCP сохраняет обратную совместимость с BOOTP.
Модель TCP/IP
Для обеспечения сетевых взаимодействий между сетевыми объектами каждый из объектов должен понимать другой объект, говорить с ним на одном языке. Другими словами, сетевые объекты должны удовлетворять определенному протоколу, набору правил общения. Для реализации данного набора правил разработаны наборы, или стеки, взаимосвязанных и логически сгруппированных протоколов. Существует достаточно большое количество стеков протоколов, однако наиболее широкое распространение в настоящее время получили два: стек TCP/IP и стек IPX/SPX.
В недавнем прошлом, при построении локальных компьютерных сетей активно использовался стек протоколов IPX/SPX, поддерживаемый фирмой Novell. Он является базовым для операционных систем семейства NetWare, производимых Novell.
Дата: 2019-02-25, просмотров: 263.