Электронная почта \Структура электронного письма, протоколы, программное обеспечение, стандарт MIME\

Билет 24. Электронная почта (Структура электронного письма, протоколы, программное обеспечение, стандарт MIME).

Электронная почта во многом похожа на обычную почтовую службу. Корреспонденция подготавливается пользователем на своем рабочем месте либо программой подготовки почты, либо просто обычным текстовым редактором. Обычно программа подготовки почты вызывает текстовый редактор, который пользователь предпочитает всем остальным программам этого типа. Затем пользователь должен вызвать программу отправки почты (программа подготовки почты вызывает программу отправки автоматически). Для работы электронной почты в Internet разработан специальный протокол Simple Mail Transfer Protocol (SMTP), который является протоколом прикладного уровня и использует транспортный протокол TCP.

Однако, совместно с этим протоколом используется и Unix-Unix-CoPy (UUCP) протокол. UUCP хорошо подходит для использования телефонных линий связи. Большинство пользователей электронной почты Relcom реально пользуются для доставки почты на узел именно этим протоколом. Разница между SMTP и UUCP заключается в том, что при использовании первого протокола sendmail пытается найти машину-получателя почты и установить с ней взаимодействие в режиме on-line для того, чтобы передать почту в ее почтовый ящик.

В случае использования SMTP почта достигает почтового ящика получателя за считанные минуты и время получения сообщения зависит только от того, как часто получатель просматривает свой почтовый ящик.

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

В целом же общие рекомендации таковы: если имеется возможность надежно работать в режиме on-line и это является нормой, то следует настраивать почту для работы по протоколу SMTP, если линии связи плохие или on-line используется чрезвычайно редко, то лучше использовать UUCP.

Протокол SMTP Simple Mail Transfer Protocol был разработан для обмена почтовыми сообщениями в сети Internet. SMTP не зависит от транспортной среды и может использоваться для доставки почты в сетях с протоколами, отличными от TCP/IP и Х.25. Достигается это за счет концепции IPCE (InterProcess Communication Environment). IPCE позволяет взаимодействовать процессам, поддерживающим SMTP в интерактивном режиме, а не в режиме "STOP-GO".
Модель протокола. Взаимодействие в рамках SMTP строится по принципу двусторонней связи, которая устанавливается между отправителем и получателем почтового сообщения. При этом отправитель инициирует соединение и посылает запросы на обслуживание, а получатель на эти запросы отвечает. Фактически, отправитель выступает в роли клиента, а получатель - сервера.
Канал связи устанавливается непосредственно между отправителем и получателем сообщения. При таком взаимодействии почта достигает абонента в течение нескольких секунд после отправки.
Дисциплины работы и команды протокола. Обмен сообщениями и инструкциями в SMTP ведется в ASCII-кодах. В протоколе определено несколько видов взаимодействия между отправителем почтового сообщения и его получателем, которые здесь называются дисциплинами.

Протокол POP3 (Post Office Protocol)
Протокол обмена почтовой информацией POP3 предназначен для разбора почты из почтовых ящиков пользователей на их рабочие места при помощи программ-клиентов. Если по протоколу SMTP пользователи отправляют корреспонденцию через Internet, то по протоколу POP3 пользователи получают корреспонденцию из своих почтовых ящиков на почтовом сервере в локальные файлы.

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

Разберем его подробнее.
Формат почтового сообщения Internet определен в документе RFC-822(осторожно со ссылкой, большой док.в виде текста) (Standard for ARPA Internet Text Message).

Это довольно большой документ объемом в 47 страниц машинописного текста, поэтому рассмотрим формат сообщения на примерах.

Почтовое сообщение состоит из трех частей: конверта, заголовка и тела сообщения. Пользователь видит только заголовок и тело сообщения. Конверт используется только программами доставки. Заголовок всегда находится перед телом сообщения и отделен от него пустой строкой. RFC-822 регламентирует содержание заголовка сообщения. Заголовок состоит из полей. Поля состоят из имени поля и содержания поля. Имя поля отделено от содержания символом ":". Минимально необходимыми являются поля Date, From, cc или To, например:

Date: 26 Aug 76 1429 EDT
From: Jones@Registry.org
cc:
или

Date: 26 Aug 76 1429 EDT
From: Jones@Registry.org
To: Smith@Registry.org

Спецификация MIME (Multipurpose Internet Mail Extension)

Стандарт MIME, или в нотации Internet RFC-1341, предназначен для описания тела почтового сообщения Internet. Предшественником MIME является стандарт почтового сообщения ARPA (RFC822). Стандарт RFC822 был разработан для обмена текстовыми сообщениями. С момента опубликования стандарта возможности аппаратных средств и телекоммуникаций ушли далеко вперед и стало ясно, что многие типы информации, которые широко используются в сети невозможно передать по почте без специальных ухищрений. Так в тело сообщения нельзя включить графику, аудио, видео и другие типы информации. RFC822 не дает возможностей для передачи даже текстовой информации, которую нельзя реализовать в семибитовой кодировке ASCII. Естественно, что при использовании RFC822 не может быть и речи о передаче размеченного текста для отображения его различными стилями.

Ограничения RFC822 становятся еще более очевидными, когда речь заходит об обмене сообщениями в разных почтовых системах. Например, для приема/передачи сообщений из/в X.400, который позволяет иметь двоичные данные в теле сообщения, ограничения старого стандарта могут стать фатальными, так как не спасает старый испытанный способ кодировки информации процедурой uuencode, так как эти данные могут быть по-различному проинтерпретированы в X.400 и программе рассылки почты в Internet (mail-agent).

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

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


Стандарт MIME разработан как расширяемая спецификация, в которой подразумевается, что число типов данных будет расти по мере развития форм представления данных. При этом следует учитывать, что анархия типов (безграничное их увеличение) тоже не допустима. Каждый новый тип в обязательном порядке должен быть зарегистрирован в IANA (Internet Assigned Numbers Authority). Остановимся подробнее на форме и назначении полей, определяемых стандартом.

Программное обеспечение почтового обмена

Согласно схеме почтового обмена (рисунок 2.1) взаимодействие между участниками этого обмена строится по классической схеме "клиент-сервер". При этом схему можно подразделить на несколько этапов. Первый - взаимодействие по протоколу SMTP между почтовым клиентом (Internet Mail, Netscape Messager, Eudora и т.п.) и почтовым транспортным агентом (sendmail, smail, ntmail и т.п.), второй - взаимодействие между транспортными агентами в процессе доставки почты получателю, результатом которого является доставка почтового сообщения в почтовый ящик пользователя и третий - выборка сообщения из почтового ящика пользователя почтовым клиентом в почтовый ящик пользователя на машине пользователя по протоколу POP3 или IMAP.

Протокол IMAP

Другим протоколом разбора почты является протокол IMAP (Interactive Mail Access Protocol), который по своим возможностям очень похож на POP3, но был разработан как более надежная альтернатива последнего и к тому же обладает более широкими возможностями по управлению процессом обмена с сервером.

Работа протокола осуществляется по 143 потру TCP. Главным отличием от POP является возможность поиска нужного сообщения и разбор заголовков сообщения.

MIME означает "Multipurpose Internet Mail Extensions" (Многоцелевые расширения почтового стандарта Internet). Этот стандарт описывает как пересылать по электронной почте исполняемые, графические, мультимедийные, смешаные данные.
Типичные применения MIME - пересылка графических изображений, аудио, документов Word, программ и даже просто текстовых файлов, то есть, когда важно, чтобы входе пересылки не производилось никаких преобразований над данными. MIME также позволяет размечать письмо на части различных типов так, чтобы получатель (почтовая программа) мог определить, что делать с каждой из частей письма.

Как читать письма в стандарте MIME?

Т.к. MIME используется всего несколько лет, еще существуют старые почтовые программы, которые не понимают MIME. Однако, растет число почтовых программ, имеющих встроенную поддержку MIME (одна из самых популярных - "Pine", разработанная в Вашингтонском университете и реализованная для платформ UNIX, VMS, DOS, Windows). К тому же в некоторых почтовых системах имеются специальные шлюзы, обеспечивающие MIME-трансляцию. Но даже если у вас нет возможности использовать MIME-совместимую почтовую программу и нет доступа к подобному шлюзу, то можно также воспользоваться рядом программ, способных интерпретировать письма в MIME, сохраненные рпочтовой программой в файле. Например, програма "munpack", созданная в университете Carnegie Mellon. Существуют ее версии для Unix, PC, Macintosh, Amiga.

Долгое время для кодирования бинарных файлов в 7-битный формат (чтобы обеспечить их пересылку по почтовой системе Internet) использовалась кодировка UUENCODE, имеющая ряд технических ограничений. Стандарт MIME предполагает использовние более устойчивой кодировки "Base64", которая специально разработана для обеспечения сохранности данных, пересылаемых по email, при различных преобразованиях, имиеющих место в ходе прохождения почтовых шлюзов.

Программы-броузеры: основные функции, типы. Средства взаимодействия с веб-сервером.

Билет 22. Программы-броузеры: основные функции, типы. Средства взаимодействия с веб-сервером.

Первыми программами просмотра гипертекстовой информации в WWW были строковый броузер www и полноэкранный текстовыйLynx. Их следует использовать только при работе с алфавитно-цифровыми терминалами, при этом следует указать, что броузер www практически нигде не используется. Первым графическим броузером был Mosaic, написанный и распространяемый Национальным центром по применению суперЭВМ.
Программа Mosaic - превосходный экземпляр высококачественных бесплатных ресурсов Internet.
Первыми броузерами, получившими наибольшее распространение были NetscapeNavigator и MSInternetExplorer.

Основными функциями броузера являются: 

формирование и передача Web-серверу запроса на получение очередной страницы по протоколу HTTP;
- прием, интерпретация языка HTML и отображение гипертекста; 
- установление связи с другими серверами (файловыми, почтовыми и FTP-серверами);
- поддержка мультимедиа (графика, аудио, анимация, видео);
- запрос запуска приложения на сервере, передача и возврат параметров по интерфейсу CGI;
- интерпретация сценариев JavaScript и/или VBScript;
- исполнение р-кода загруженной Java-программы;
- поддержка расширений plug-in и OLE-компонентов ActiveX;
- вызов вспомогательных helper-программ для отображения загруженного файла. 

2.1.2. Броузеры NetscapeNavigator и MicrosoftInternetExplorer

На сегодняшний день лучшими коммерческими броузерами являются NetscapeNavigator и MicrosoftInternetExplorer. Остальные броузеры не могут с ними сравниться, поскольку они либо не поддерживают последние расширения HTML, либо не имеют некоторых других крайне важных возможностей.
MSInternetExplorer
InternetExplorer 3.0 - проводник Internet, поддерживающий расширения HTML, включая таблицы и фреймы, он позволяет прослушивать аудиосопровождение страниц, выполнять программы Java с использованием JIT (JustInTimecompile). Он полностью поддерживает OLE, с его помощью можно просматривать документы, созданные офисными приложениями, выполнять программы ActiveX (В 1996 году Microsoft переименовала технологию OLE 2.0 в ActiveX. Были представлены элементы управления ActiveX, ActiveX документы и технология Active Scripting. Эта версия OLE в основном используется веб-дизайнерами для вставки в страницы мультимедийных данных.).

Используя InternetExplorer, можно работать с интерактивными страницами, в составе которых имеются сценарии на VBScript или JavaScript. InternetExplorer поддерживает такие стандарты шифрования, как SSl 2.0 и SSL 3.0, PCT 1.0, помимо этого реализована возможность пересылки данных с цифровой подписью.

В комплект программ InternetStarterKit, основой которого является InternetExplorer, входит клиент электронной почты, поддерживающий стандартные протоколы InternetPOP и SMTP. Почтовый сервер при использовании клиента InternetMail обслуживается поставщиком услуг Internet, и пользователи не имеют проблем с конфигурацией и поддержкой своего собственного почтового сервера.(по материалам Internet Mail Consortium)

Вместе с InternetStarterKit пользователи глобальных сетей получают в свое использование также и возможность чтения новостей с помощью программы InternetNews. Пользователи, имеющие прямой (online) доступ в Internet, могут иметь доступ ко всем конференциям Internet и к любой статье в каждой конференции.
NetscapeNavigator
Navigator 3.0 представляет собой продолжение успешного развития технологии фирмы Netscape, фактически устанавливающей стандарты в этой области. Политика Netscape в области создания клиентских приложений включает в себя три основных компонента: программные модули (Plug-In), представляющие собой небольшие расширения Navigator, загружаемые Java-приложения и язык JavаScript. В отличие от ActiveX эти компоненты работают на любой платформе (Unix/ XWindow, Macintosh и MSWindows).

Navigator и InternetExplorer во многом схожи. Оба предлагают набор базовых возможностей, удовлетворяющий стандарту HTML 3.0, благодаря чему можно воспользоваться любым из них, чтобы увидеть основной текст Web, заголовки, изображения, списки, таблицы и "горячие" ссылки. Для работы с широким диапазоном типов файлов, используемых на многих узлах, оба броузера для отображения или воспроизведения данных применяют вспомогательные приложения. Оба имеют привлекательный, простой интерфейс, позволяющий легко вернуться к пройденным ранее узлам Web.

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

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

Основные компоненты сервиса WWW

Билет 21 Основные компоненты сервиса WWW: понятие гипертекста, язык HTML, программное обеспечение, протокол http, указатель ресурсов URL, интерфейс CGI

Распределенная информационная гипертекстовая система World Wide Web является одним из самых популярных, если не самым популярным, ресурсом Internet.

Что же предлагал Тим Бернерс-Ли в 1989 году и что из этого получилось?

В "World Wide Web: Proposal for HyperText Project", направленных руководству CERN, он считал, что информационная система, построенная на принципах гипертекста, должна объединить все множество информационных ресурсов CERN, которое состояло из базы данных отчетов, компьютерной документации, списков почтовых адресов, информационной реферативной системы, наборов данных результатов экспериментов и т.п.

Гипертекстовая технология должна была позволить легко "перепрыгивать" из одного документа в другой. Как видно, запросы были невелики, и в октябре 1990 года проект стартовал. Национального Центра Суперкомпьютерных Приложений (NCSA). NCSA начала проект по разработке интерфейса в World Wide Web. Мультипротокольный переносимый интерфейс в WWW, создание которого начала Группа Разработки Программного Обеспечения NCSA, был назван Mosaic. Пробная версия программы была закончена в первой половине 1993 года, а в августе 1993 была анонсирована альфа-версия для Internet. Образование Netscape Corporation и W3C легко объяснимы с точки зрения роста популярности WWW. В марте 1993 года трафик World Wide Web составлял 0,1% от общего трафика сети NSF, сентябре 1993 года он уже составил 1,0% от общего трафика сети NSF. В октябре 1993 года количество зарегистрированных серверов WWW равнялось 500, а к июню 1994 года оно достигло 1500 и продолжает стремительно расти.

Понятие гипертекста
В 1965 году Т.Нельсон (Ted Nelson) ввел в обращение сам термин "гипертекст", развил и даже реализовал некоторые идеи, связанные с работой с "нелинейными" текстами.

Идея гипертекстовой информационной системы состоит в том, что пользователь имеет возможность просматривать документы (страницы текста) в том порядке, в котором ему это больше нравится, а не последовательно, как это принято при чтении книг. Поэтому Т.Нельсон и определил гипертекст как нелинейный текст. Достигается это путем создания специального механизма связи различных страниц текста при помощи гипертекстовых ссылок, т.е. у обычного текста есть ссылки типа "следующий-предыдущий", а у гипертекста можно построить еще сколь угодно много других ссылок. Любимыми примерами специалистов по гипертексту являются энциклопедии, Библия, системы типа "Help". 
К 1989 году гипертекст представлял новую, многообещающую технологию, которая имела относительно большое число реализаций с одной стороны, а с другой стороны делались попытки построить формальные модели гипертекстовых систем, которые носили скорее описательный характер и были навеяны успехом реляционного подхода описания данных. Идея Т.Бернерс-Ли заключалась в том, чтобы применить гипертекстовую модель к информационным ресурсам, распределенным в сети, и сделать это максимально простым способом.

Он заложил три краеугольных камня системы из четырех существующих ныне, разработав:
язык гипертекстовой разметки документов HTML (HyperText Markup Language);
универсальный способ адресации ресурсов в сети URL (Universal Resource Locator);
протокол обмена гипертекстовой информацией HTTP (HyperText Transfer Protocol).

Позже команда NCSA добавила к этим трем компонентам четвертый:
CGI (Common Gateway Interface)

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

Краткая история HTML.

Среди ключевых технологий, на которых держится современный Интернет, одной из важнейших и, как это ни странно, вызывающих наиболее ожесточенные споры является язык HTML, предназначенный для разметки и оформления документов World Wide Web. Необычайно интересно проследить историю развития этого языка - историю, в которой столкнулись противоположные подходы к проблеме компьютерного представления текста и которая послужила ареной сотрудничества и противоборства крупнейших компьютерных компаний, определяющих пути развития и будущее Интернета.

В начале был SGML
Начало истории HTML следует отнести к далекому 1986 году, когда Международная организация по стандартизации (ISO) приняла стандарт ISO-8879, озаглавленный "Standard Generalized Markup Language (SGML)". Стандарт этот посвящен описанию SGML - обобщенного метаязыка, позволяющего строить системы логической, структурной разметки любых разновидностей текстов. Слово "структурная" означает, что управляющие коды, вносимые в текст при такой разметке, не несут никакой информации о внешнем виде документа, а лишь указывают границы и соподчинение его составных частей, т.е. задают его логическую структуру.

Создатели SGML стремились максимально абстрагироваться от проблем представления электронного текста в разных программах, на разных компьютерных платформах и устройствах вывода. Так, если с помощью SGML размечается документ, содержащий заголовки, идеология языка запрещает указывать, что такой-то заголовок должен набираться, скажем, шрифтом Times полужирного начертания кегля 12 пунктов. SGML в таком случае требует ограничиться указанием на уровень заголовка и его место в иерархической структуре документа.

Благодаря таким ограничениям размеченный текст сможет без труда интерпретировать любая программа, работающая с любым мыслимым устройством вывода. К примеру, при работе в графическом интерфейсе заголовок может действительно выводиться полужирным шрифтом повышенного кегля; программа, использующая текстовый интерфейс, выделит его пустой строкой сверху и снизу и, возможно, повышенной яркостью символов; синтезатор речи, читающий документ вслух, сможет отметить заголовок паузой и изменением интонации. Можно сказать, что SGML-разметка обнажает нематериальную "душу" текста, для которой впоследствии любая программа-интерпретатор сможет подобрать подходящее к случаю "тело".

Однако абстрактность SGML этим не исчерпывается. SGML представляет собой не готовую систему разметки текста, а лишь удобный метаязык, позволяющий строить такие системы для конкретных обстоятельств. Жизнь многообразна и непредсказуема: сегодня вам требуется выделять в текстах заголовки, а завтра, возможно, понадобится размечать подписи в письмах, математические формулы или имена действующих лиц в пьесе. Стандарт SGML определяет лишь синтаксис записи элементов разметки - тегов - и их атрибутов, а также правила определения новых тегов и указания структурных отношений между ними. Для практической же разметки документов нужно приложение SGML - набор определенных в соответствии со стандартом тегов, представляющий собой, по сути, формальное описание структуры документа.
Однако сам по себе SGML не получил сколько-нибудь заметного распространения - до тех пор, пока в 1991 г. сотрудники Европейского института физики частиц (CERN), занятые созданием системы передачи гипертекстовой информации через Интернет, не выбрали SGML в качестве основы для нового языка разметки гипертекстовых документов. Этот язык - самое известное из приложений SGML - был назван HTML (HyperText Markup Language, "язык разметки гипертекста").

Изначально HTML, как и положено SGML-приложению, разделял все особенности идеологии SGML. Из сорока с небольшим тегов HTML версии 1.2 (датированной июнем 1993 г.) всего три, да к тому же и не рекомендованных к использованию, тега осмеливались намекать на физические параметры представления документа. Вся разметка была чисто логической, и лишь в описательной части стандарта, сопровождающей формальное определение тегов, можно было прочесть что-нибудь вроде "в графических броузерах действие этого тега может передаваться курсивным начертанием".

А первым (и долгое время единственным) графическим броузером в те далекие времена была программа Mosaic, разработанная, как и сам WWW, в научном учреждении - Национальном центре суперкомпьютерных приложений США (National Center for Supercomputer Applications - NCSA). Так что нет ничего удивительного в том, что в этот "золотой век" никаких противоречий между официальными стандартами и их реализацией в броузерах еще не существовало. HTML неторопливо развивался, оставаясь в рамках парадигмы структурной разметки, и в апреле 1994 г. началась подготовка спецификации следующей версии языка - 2.0. Этим занимался образованный в том же году Консорциум W3 (W3 Consortium, сокращенно W3C), унаследовавший от CERN верховную власть и авторитет в мире WWW.

В настоящий момент консорциум, имеющий статус "международной некоммерческой организации", объединяет свыше 150 организаций-членов, в том числе фирмы Netscape, Microsoft и множество других. Однако в 1994-1995 гг. его членами были почти исключительно университеты и научные учреждения. Столь "академический" состав W3C сказывался как на самих документах, публикуемых консорциумом, так и на процедуре (и особенно на сроках) их принятия. Достаточно сказать, что окончательный вариант HTML 2.0, единственным серьезным усовершенствованием в котором был механизм бланков (форм) для отсылки информации с компьютера пользователя на сервер, был окончательно утвержден лишь в сентябре 1995 г., когда в W3C уже полным ходом шло обсуждение HTML 3 (или, как его называли поначалу, "HTML+").

HTTP
HTTP - это протокол прикладного уровня, разработанный для обмена гипертекстовой информацией в сети Internet. Протокол используется одной из популярнейших систем Сети - Word Wide Web - с 1990 года.
Сообщения по сети при использовании протокола HTTP передаются в формате, схожим с форматом почтового сообщения Internet (RFC-822) или с форматом сообщений MIME (Multiperposal Internet Mail Exchange). HTTP используется для взаимодействия программ-клиентов с программами-шлюзами, разрешающими доступ к ресурсам электронной почты Internet (SMTP), спискам новостей (NNTP), файловым архивам (FTP), системам Gopher и WAIS. Протокол разработан для доступа к этим ресурсам посредством промежуточных программ-серверов (proxy), которые позволяют передавать информацию между различными информационными службами без потерь. Протокол реализует принцип "запрос/ответ". Запрашивающая программа - клиент - инициирует взаимодействие с отвечающей программой - сервером, и посылает запрос, включающий в себя метод доступа, адрес URL, версию протокола, похожее по форме на MIME сообщение с модификаторами типа передаваемой информации, информацию клиента, и, возможно, тело сообщения клиента. Сервер отвечает строкой состояния, включающей версию протокола и код возврата, за которой следует сообщение в форме, похожей на MIME. Данное сообщение содержит информацию сервера, метаинформацию и тело сообщения. Понятно, что в принципе, одна и та же программа может выступать и в роли сервера и в роли клиента (так собственно и происходит при использовании proxy-серверов). При работе в Internet для обслуживания HTTP-запросов используется 80 порт TCP/IP. Практика использования протокола такова, что клиент устанавливает соединение и ждет ответа сервера. После отправки ответа сервер инициирует разрыв соединения. Таким образом, при передаче сложных гипертекстовых страниц соединение может устанавливаться несколько раз. Остановимся более подробно на механизме взаимодействия и форме передаваемой информации.
Практически любой сервер имеет механизм назначения паролей и прав доступа для различных пользователей, который базируется на схеме идентификации протокола HTTP 1.0. Данная схема предполагает, что программа-клиент посылает серверу идентификатор пользователя и пароль. Понятно, что такой механизм не обеспечивает защиты передаваемой по сети информации, и она может стать легкой добычей злоумышленников.

URL
URL определяет способ записи (кодирования) адресов различных информационных ресурсов при обращении к ним из страниц WWW.
URL- определяет расположение и адрес каждой Web - страницы в Internet. URL состоит из 3-х частей. Это протокол, доменное имя узла и путь. Протокол определяет метод взаимодействия клиент-программы с сервером. Доменное имя узла определяет сервер, на котором постоянно находятся данные Web-страницы. С помощью Internet можно обращаться к различным типам ресурсов.

CGI (Common Gateway Interface)– общий шлюзовой интерфейс обмена информации между программами разного вида. Превращение негипертекстовых документов в гипертекстовые.  Главное назначение Common Gateway Interface - обеспечение единообразного потока данных между сервером и прикладной программой, которая запускается из-под сервера.
CGI определяет протокол обмена данными между сервером и программой.
CGI-скрипт - программа, написанная в соответствии со спецификацией Common Gateway Interface. CGI-скрипты могут быть написаны на любом языке программирования (C, C++, PASCAL, FORTRAN и т.п.) или командном языке (shell, cshell, командный язык MS-DOS, Perl и т.п.). Скрипт может быть написан даже на языке редактора EMAC в системах Unix.
Шлюз - это CGI-скрипт, который используется для обмена данными с другими информационными ресурсами Internet или приложениями-демонами. Обычная CGI-программа запускается сервером HTTP для выполнения некоторой работы, возвращает результаты серверу и завершает свое выполнение. Шлюз выполняется точно также, только, фактически, он инициирует взаимодействие в качестве клиента с третьей программой. Если эта третья программа является сервисом Internet, например, сервер Gopher, то шлюз становится клиентом Gopher, который посылает запрос по порту Gopher, а после получения ответа пересылает его серверу HTTP. Обычно гипертекстовые документы, извлекаемые из WWW серверов, содержат статические данные. С помощью CGI можно создавать CGI-программы, называемые шлюзами, которые во взаимодействии с такими прикладными системами, как система управления базой данных, электронная таблица, деловая графика и др., смогут выдать на экран пользователя динамическую информацию.

Программа-шлюз запускается WWW сервером в реальном масштабе времени. WWW сервер обеспечивает передачу запроса пользователя шлюзу, а она в свою очередь, используя средства прикладной системы, возвращает результат обработки запроса на экран пользователя. Программа-шлюз может быть закодирована на языках C/C++, Fortran, Perl, TCL, Unix Schell, Visual Basic, Apple Script. Как выполнимый модуль, она записывается в поддиректорий с именем cgi-bin WWW сервера.

Музыка для Отдыха и расслабления

Нажмите PLAY а после в откр.окне STREAMING MUSIC или клик на любом файле 2 раза. Приятного прослушивания!
 

blogger templates | Как выбрать колл-центр | Выбор LED телевизора