"Система Тестирования

 

   
  Главное меню

  Главная

------------------------------------------

  Дистанционное обучение

------------------------------------------

  Олимпиада

------------------------------------------

  Библиотека

------------------------------------------

  Справочники

------------------------------------------

  Тестирование on-line

------------------------------------------

  Зачетная книжка

------------------------------------------

  Вход для

  преподавателей

------------------------------------------

 

    

 

Добро пожаловать в пользовательский раздел сайта!

 

Библиотека : Информатика : Протоколы доступа к сервисам глобальных сетей.  

Протоколы доступа к сервисам глобальных сетей.

Протоколы доступа к сервисам глобальных сетей, по сути, определяют способы передачи информации. Но прежде чем вести речь о протоколах необходимо упомянуть, об универсальном указателе ресурсов (Universal Resource Locator URL). URL – адрес ресурса определяет местонахождение запрашиваемого ресурса в сети Интернет, например:

http://school2.vzm.su

Рассматривая подробно приведенную запись можно понять, что домен верхнего уровня определяет географическую принадлежность к территории бывшего Советского Союза, домен второго уровня, также определяет географическую принадлежность к городу Вязьме, Домен третьего уровня определяет конкретную организацию – среднюю школу № 2.

URL был изобретён Тимом Бернерсом-Ли в 1990 году в стенах Европейского совета по ядерным исследованиям (фр. Conseil Européen pour la Recherche Nucléaire, CERN) в Женеве, Швейцария.

Универсальный локатор – URL стал фундаментальной инновацией в Интернете. Изначально URL предназначался для обозначения мест расположения ресурсов (чаще всего файлов) во Всемирной паутине. Сейчас URL применяется для обозначения адресов почти всех ресурсов Интернета.

Универсальный указатель ресурсов состоит из трех составных частей:

  • Протокол доступа к ресурсу;

  • Доменное имя или IP – адрес сервера, на котором находится ресурс;

  • Полный путь к файлу.

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

<схема>://<логин>:<пароль>@<хост>:<порт>/<URL-путь>?<параметры>#<якорь>

В этой записи:

схема 

схема обращения к ресурсу; в большинстве случаев имеется в виду сетевой протокол. Общепринятые схемы (протоколы) URL включают:

  • · ftp — протокол передачи файлов (File Transfer Protocol)

  • · http — протокол передачи гипертекста (Hyper Text Transfer Protocol)

  • · rtmp —протокол потоковой передачи данных, в основном используется для передачи потокового видео и аудиопотоков с веб-камер через интернет (Real Time Messaging Protocol).

  • · rtsp — потоковый протокол реального времени.

  • · https — специальная реализация протокола HTTP, использующая шифрование (как правило, SSL или TLS)

  • · smtp – протокол отправки электронных писем (Simple Mail Transfer protocol)

  • · pop3 – протокол получения электронных писем (Post Office Protocol 3)

  • · gopher — протокол Gopher

  • · mailto — адрес электронной почты

  • · news — новости Usenet

  • · nntp — новости Usenet через протокол (News Net Transfer Protocol)

  • · irc — протокол IRC

  • · telnet — ссылка на интерактивную сессию Telnet

  • · wais — база данных системы WAIS

  • · xmpp — протокол XMPP (часть Jabber)

  • · data — непосредственные данные (Data: URL)

  • · tel — звонок по указаному телефону.

логин 

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

пароль 

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

хост 

полностью прописанное доменное имя хоста в системе DNS или IP-адрес хоста в форме четырёх групп десятичных чисел, разделённых точками; числа — целые в интервале от 0 до 255.

порт 

порт хоста для подключения

URL-путь 

уточняющая информация о месте нахождения ресурса; зависит от протокола.

параметры 

строка запроса с передаваемыми на сервер параметрами. Разделитель параметров — знак &.

якорь 

идентификатор «якоря», ссылающегося на некоторую часть (раздел) открываемого документа. С развитием AJAX в этой части стали размещать параметры для JavaScript на странице, и страница в зависимости от указанного якоря может в браузере выглядеть по-разному. Для обеспечения возможности индексирования подобных страниц поисковыми системами компания Google предложила подход, предполагающий использование знака (!) в начале якоря и некоторую поддержку на сервере сайта.

На сегодняшний день Тим Бернес-Ли признаёт, что символ двойной косой черты в структуре URL является избыточным. Однако, здесь не учитывается возможность создания ссылок в HTML страницах без указания протокола, если подразумевается доступ по протоколу текущей страницы. В этом случае запись с парой слешей необходима для отличия хоста (домена) от адреса с относительным путём к ресурсу или путём от корневого элемента сервера.

Появление адресов URL стало существенным нововведением в Интернете. Однако с момента его изобретения и по сей день стандарт URL обладает серьёзным недостатком — в нём можно использовать только ограниченный набор символов, даже меньший, нежели в ASCII: латинские буквы, цифры и лишь некоторые знаки препинания. Если мы захотим использовать в URL символы кириллицы, или иероглифы, или, скажем, специфические символы французского языка, то нужные нам символы должны быть перекодированы особым образом.

В русскоязычной Википедии ежедневно приходится видеть примеры кодирования URL, поскольку русский язык использует символы кириллицы. Например, строка вида:

http://ru.wikipedia.org/wiki/Микрокредит

кодируется в URL как:

http://ru.wikipedia.org/wiki/%D0%9C%D0%B8%D0%BA%D1%80%D0%BE%D0%BA%D1%80%D0%B5%D0%B4%D0%B8%D1%82

Такое преобразование происходит в два этапа: сначала каждый символ кириллицы кодируется в Юникоде (UTF-8) в последовательность из двух байтов, а затем каждый байт этой последовательности записывается в шестнадцатеричном представлении:

М → D0 и 9C → %D0%9C
и → D0 и B8 → %D0%B8
к → D0 и BA → %D0%BA
р → D1 и 80 → %D1%80, и т. д.

Перед каждым таким шестнадцатеричным кодом байта, согласно спецификации URL, ставится знак процента (%) — отсюда даже возник английский термин «percent-encoding», обозначающий способ кодирования символов в URL и URI.

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

Это всё входит в противоречие с принципом интернационализма, провозглашаемого всеми ведущими организациями Интернета, включая W3C и ISOC. Эту проблему призван решить стандарт IRI (International Resource Identifier) — международных идентификаторов ресурсов, в которых можно было бы без проблем использовать символы Юникода, и которые поэтому не ущемляли бы права других языков. Хотя заранее сложно сказать, смогут ли когда-либо идентификаторы IRI заменить столь широко используемые URL (и URI в целом).

Ещё один кардинальный недостаток URL состоит в отсутствии гибкости. Ресурсы во Всемирной паутине и Интернете перемещаются, а ссылки в виде URL остаются, указывая на уже отсутствующие ресурсы. Это особенно болезненно для электронных библиотек, каталогов и энциклопедий. Для решения этой проблемы были предложены постоянные локаторы PURL (Persistent Uniform Resource Locator). В сущности это те же URL, но они указывают не на конкретное место расположения ресурса, а на запись в базе данных PURL, где, в свою очередь, записан уже конкретный URL адрес ресурса. При обращении к PURL сервер находит нужную запись в этой базе данных и перенаправляет запрос уже на конкретное местоположение ресурса. Если адрес ресурса меняется, то нет нужды исправлять все бесчисленные ссылки на него — достаточно лишь изменить запись в БД. В настоящий момент эта идея не стандартизирована и не имеет широкого распространения.

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

 

Протокол HTTP. Протокол HTTP (Hyper Text Transfer Protocol) – протокол передачи гипертекста служит для доступа к Web – страницам. HTTP — протокол прикладного уровня передачи данных (изначально — в виде гипертекстовых документов). HTTP был предложен в марте 1991 года Тимом Бернерсом-Ли, работавшим тогда в CERN, как механизм для доступа к документам в Интернете и облегчения навигации посредством использования гипертекста. Самая ранняя версия протокола HTTP/0.9 была впервые опубликована в январе 1992 г. (хотя реализация датируется 1990 годом). Спецификация протокола привела к упорядочению правил взаимодействия между клиентами и серверами HTTP, а также чёткому разделению функций между этими двумя компонентами. Были задокументированы основные синтаксические и семантические положения.

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

HTTP в настоящее время повсеместно используется во Всемирной паутине для получения информации с веб-сайтов. Основным объектом манипуляции в HTTP является ресурс, на который указывает URI (Uniform Resource Identifier) в запросе клиента. Обычно такими ресурсами являются хранящиеся на сервере файлы, но ими могут быть логические объекты или что-то абстрактное. Особенностью протокола HTTP является возможность указать в запросе и ответе способ представления одного и того же ресурса по различным параметрам: формату, кодировке, языку и т. д. (В частности для этого используется HTTP-заголовок.) Именно благодаря возможности указания способа кодирования сообщения клиент и сервер могут обмениваться двоичными данными, хотя данный протокол является текстовым.

HTTP — протокол прикладного уровня, аналогичными ему являются FTP и SMTP. Обмен сообщениями идёт по обыкновенной схеме «запрос-ответ». Для идентификации ресурсов HTTP использует глобальные URI. В отличие от многих других протоколов, HTTP не сохраняет своего состояния. Это означает отсутствие сохранения промежуточного состояния между парами «запрос-ответ». Компоненты, использующие HTTP, могут самостоятельно осуществлять сохранение информации о состоянии, связанной с последними запросами и ответами (например, «куки» на стороне клиента, «сессии» на стороне сервера). Браузер, посылающий запросы, может отслеживать задержки ответов. Сервер может хранить IP-адреса и заголовки запросов последних клиентов. Однако сам протокол не осведомлён о предыдущих запросах и ответах, в нём не предусмотрена внутренняя поддержка состояния, к нему не предъявляются такие требования.

HTTP позволяет запросить не сразу всё содержимое ресурса, а только указанный фрагмент. Такие запросы называются частичные GET, возможность их выполнения необязательна (но желательна) для серверов. Частичные GET в основном используются для докачки файлов и быстрого параллельного скачивания в нескольких потоках. Некоторые программы скачивают заголовок архива, выводят пользователю внутреннюю структуру, а потом уже запрашивают фрагменты с указанными элементами архива.

 

Предыдущая

Содержание

Следующая

     
 

 

 

 

 

 
 

Центр компьютерного обучения © 2001 - 2020 г.