Автор: Пользователь скрыл имя, 24 Января 2011 в 15:18, реферат
Поиск информации в Интернете проводится двумя основными способами – с помощью каталогов (их еще называют директориями) и с помощью поисковых машин. Директории обеспечивают контекстный поиск для структурированного просмотра, тогда как поисковые машины, как следует из их названия, контекста не обеспечивают, однако позволяют находить конкретные слова или фразы. Директории можно уподобить оглавлению книги, а поисковые машины – предметному указателю.
Недостатки и проблемы
Большой размер сообщений
Использование
текстового формата в протоколе
порождает соответствующий
Отсутствие «навигации»
Хотя протокол разрабатывался как средство работы с ресурсами сервера, у него отсутствуют в явном виде средства навигации среди этих ресурсов. Например, клиент не может явным образом запросить список доступных файлов, как в протоколе FTP. Предполагалось, что конечный пользователь уже знает URI необходимого ему документа, закачав который, он будет производить навигацию благодаря гиперссылкам. Это вполне нормально и удобно для человека, но затруднительно, когда стоят задачи автоматической обработки и анализа всех ресурсов сервера без участия человека. Решение этой проблемы лежит полностью на плечах разработчиков приложений, использующих данный протокол.
Например, со стороны клиента используются веб-пауки — специальные программы, которые составляют список ресурсов сервера проходя по всем найденным гиперссылкам. Со стороны сервера данная проблема решается с помощью карты сайта (англ. site map) — специальной веб-страницы, где перечислены все доступные для посещения ресурсы. Она предназначена не только для людей, играя аналогичную содержанию в книге роль, но и полезна для тех же роботов-пауков позволяя уменьшить глубину — минимальное необходимое количество переходов с главной страницы. Для тех же целей служат файлы формата Sitemap, которые предназначены уже непосредственно для роботов.
Полностью эта проблема решена в расширяющем HTTP протоколе WebDAV с помощью добавленного метода PROPFIND. Данный метод позволяет не только получить дерево каталогов, но и список параметров каждого ресурса.
Нет поддержки распределённости
Протокол HTTP разрабатывался для решения типичных бытовых задач, где само по себе время обработки запроса должно занимать незначительное время или вообще не приниматься в расчёт. Но в промышленном использовании с применением распределённых вычислений при высоких нагрузках на сервер протокол HTTP оказывается беспомощен. В 1998 году W3C предложил альтернативный протокол HTTP-NG (англ. HTTP Next Generation) для полной замены устаревшего с акцентированием внимания именно на этой области[2]. Идею его необходимости поддержали крупные специалисты по распределённым вычислениям, но данный протокол до сих пор находится на стадии разработки.
Программное обеспечение
Всё программное обеспечение для работы с протоколом HTTP разделяется на три больших категории:
Серверы как основные поставщики услуг хранения и обработки информации (обработка запросов).
Клиенты — конечные потребители услуг сервера (отправка запроса).
Прокси для выполнения транспортных служб.
Для отличия конечных серверов от прокси в официальной документации используется термин origin server (рус. исходный сервер). Разумеется, один и тот же программный продукт может одновременно выполнять функции клиента, сервера или посредника в зависимости от поставленных задач. В спецификациях протокола HTTP подробно описывается поведение для каждой из этих ролей
Клиенты
Первоначально протокол HTTP разрабатывался для доступа к гипертекстовым документам Всемирной паутины. Поэтому основными реализациями клиентов являются браузеры (агенты пользователя). Популярные браузеры (в алфавитном порядке): Epiphany, Google Chrome, Internet Explorer, Konqueror, Mozilla Firefox, Opera, Safari.
Для просмотра сохраненного содержимого сайтов на компьютере без соединения с Интернетом были придуманы оффлайн-браузеры. Среди известных HTTrack и Offline Explorer.
При нестабильном соединении для загрузки больших файлов используются менеджеры закачек. Они позволяют в любое время докачать указанные файлы после потери соединения с веб-сервером. В ОС Windows популярны программы Download Master, FlashGet, Free Download Manager, GetRight, ReGet. В Linux — графический менеджер закачек KGet и d4x (Downloader For X). Многие пользователи Linux предпочитают использование Wget — программы для загрузки файлов, которая сама по себе не является менеджером закачек.
Виртуальные атласы, такие как Google Планета Земля и NASA World Wind, тоже используют HTTP.
Нередко протокол HTTP используется программами для скачивания обновлений.
Целый комплекс программ-роботов используется в поисковых системах Интернета. Среди них веб-пауки (краулеры), которые производят проход по гиперссылкам, составляют базу данных ресурсов серверов и сохраняют их содержимое для дальнейшего анализа.
Файлов:
Список протоколов передачи файлов
В основном используемые с TCP/IP
9P
Apple Filing Protocol (AFP)
BitTorrent
FTAM
FTP
FTP over SSL (FTPS)
HFTP
HULFT[1]
HTTP
HTTPS
WebDAV
rcp
SSH file transfer protocol (SFTP)
Secure copy (SCP)
Simple File Transfer Protocol
rsync
В основном используемые с UDP
Trivial File Transfer Protocol
File Service Protocol
UFTP — UDP на основе FTP с возможностью многоадресной рассылки (Multicast)
Multicast File Transfer Protocol
Tsunami UDP Protocol
Multipurpose Transaction Protocol
=== В основном использу емые в прямых модемных соединениях ===
ASCII dump
BiModem
CModem
CompuServe B (известный как B-протокол или CIS-B)
JMODEM
HSLINK
Kermit и его варианты:
Kermit
SuperKermit
LeechModem
Lynx (протокол)
MEGAlink (протокол)
NMODEM
Семейство протоколов Punter
SEAlink
SMODEM
SuperK
TELINK
Tmodem
UUCP и его варианты:
UUCP
UUCP-g
XMODEM и его варианты:
XMODEM#MODEM7 (Batch XMODEM)
XMODEM, XMODEM-1K, XMODEM-G
WXMODEM
YMODEM и его варианты:
YMODEM, YMODEM-1K, YMODEM-G
ZMax
ZMODEM
Протоколы передачи файлов
В отличие от протоколов нижнего уровня данные протоколы позволяют организовать прием и передачу файлов.
ASCII
Этот протокол работает без коррекции ошибок. В результате при передаче файлов по телефонным линиям из-за шума принятый файл может сильно отличаться от передаваемого. Если вы передаете выполняемый файл, то ошибки при передаче могут стать роковыми - полученная программа не будет работать. Если же вы передаете короткие текстовые сообщения, то ошибки легко могут быть исправлены.
Xmodem
Наиболее распространены три разновидности протокола Xmodem:
Оригинальный протокол Xmodem;
Xmodem с CRC;
1К Xmodem.
Оригинальный протокол Xmodem разработал Вард Кристенсен (Ward Christensen) в 1977 году. Вард Кристенсен был одним из первых специалистов по протоколам обмена данными. В честь него этот протокол иногда называют также протоколом Кристенсена (Xmodem Christensen).
При передаче файлов с помощью протоколов Xmodem формат данных должен быть следующим: 8-битовые данные, один стоповый бит и отсутствие проверки на четность. Для передачи используется полудуплексный метод, т.е. данные могут передаваться в каждый момент времени только в одном направлении.
Xmodem
Протокол Xmodem Checksum передает данные пакетами по 128 байт. Вместе с пакетом передается его контрольная сумма. При получении пакета контрольная сумма вычисляется снова и сравнивается с суммой, вычисленной на передающей машине. Если эти две суммы совпадают, считается что пакет передан без ошибок.
Этот метод обеспечивает достаточно хорошую защиту от ошибок. Только один из 256 пакетов может содержать ошибки, хотя контрольная сумма правильная.
Xmodem с CRC
Более защищенным
от ошибок является протокол Xmodem CRC (Cyclic
Redundancy Check). Xmodem CRC - протокол с проверкой
циклическим избыточным кодом. В
нем 8-битовая контрольная сумма
заменена на 16-битовый циклический
избыточный код. Этот протокол гарантирует
вероятность обнаружения
1К Xmodem.
Если передача идет без ошибок, протокол 1К Xmodem увеличивает размер пакета с 128 до 1024 байт. При увеличении числа ошибок размер пакета снова уменьшается. Такое изменение длины пакета позволяет увеличить скорость передачи файлов.
В остальном протокол 1К Xmodem совпадает с протоколом Xmodem CRC.
Ymodem
Протокол Ymodem разработал Чак Форсберг (Chuck Forsberg) в 1984 - 1985 годах. Протокол Ymodem похож на протокол 1К Xmodem, но имеет одно отличие: протокол Ymodem может передавать или принимать за один заход несколько файлов.
Существует модификация протокола Ymodem - Ymodem G. Протокол Ymodem G предназначен для использования с модемами, автоматически осуществляющими коррекцию ошибок на аппаратном уровне. Например, MNP-модемы с аппаратной реализацией MNP. В этом протоколе упрощена защита от ошибок, так как ее выполняет сам модем. Не используйте этот протокол, если ваш модем не осуществляет аппаратную коррекцию ошибок.
Другой особенностью протокола Ymodem является то, что вместе с файлом передаются все его атрибуты. В результате как минимум имя файла и дата останутся неизменными.
Zmodem
Zmodem - это достаточно
быстрый протокол передачи
Протокол Zmodem, так же как и протокол 1К Xmodem, может изменять длину пакета (блока) от 64 до 1024 байт в зависимости от качества линии.
Кроме того, протокол обладает следующей полезной особенностью: если при передаче файла произошел сбой на линии и вы не успели передать весь файл, то в следующий раз при передаче этого же файла он автоматически начнет передаваться с того места, где произошел обрыв связи. Таким образом, очень большие файлы вы можете передавать по частям.
Из всех протоколов верхнего уровня, описанных выше, этот протокол самый быстрый и удобный.
Bimodem
Особенностью протокола Bimodem является возможность одновременной пересылки двух файлов в разных направлениях. Кроме того, одновременно с передачей файлов вы можете побеседовать с оператором удаленного компьютера при помощи клавиатуры.
Kermit
Широко известны две разновидности протокола Kermit - стандартный и Super Kermit. Этот протокол был разработан в Колумбийском университете в 1981 году для связи между различными типами компьютеров, включая большие компьютеры, мини-компьютеры и персональные компьютеры. В отличие от протоколов Xmodem и Ymodem он использует для передачи данных пакеты переменной длины с максимальным размером 94 байт.
Так же как и Ymodem, протокол Kermit может передавать или принимать несколько файлов за один сеанс.
Протокол Super Kermit
предназначен специально для использования
в сетях типа Telenet или Tymnet. Эти
сети имеют очень большие задержки
при передаче данных. Так что если
ждать подтверждения для