Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Веб программирование.Начало пути.doc
Скачиваний:
6
Добавлен:
01.04.2025
Размер:
8 Мб
Скачать

Понятие и краткое описание протоколов

Глобальная сеть Интернет, объединяет локальные сети, компьютеры и устройства. Чтобы компьютеры и устройства понимали пересылаемую в виде пакетов информацию, необходимы специальные соглашения, называемые "протоколы". Протоколы – это набор правил, которые определяют способы и форматы передачи пакетов данных и управляющих сообщений. Наиболее известными протоколами Интернет являются протоколы передачи данных TCP/IP и протоколы уровня приложений: POP3, SMTP, FTP, HTTP, IMAP4, WAP. Функции каждого протокола реализуют компоненты программного обеспечения, называемые модулями.

Протоколы TCP/IP(Transmission Control Protocol/Internet Protocol) были разработаны в 1971-1972 годах в рамках проекта ARPANet. Набор (стек) протоколов TCP/IP обеспечивает единый способ организации соединения между узлами в сети и возможность подключения к сети компьютеров различной архитектуры. Стек протоколов TCP/IP стал основой глобальной сети Интернет, а также локальных сетей, использующих технологии Интернета - интранет.

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

Для передачи управляющих сообщений и сообщений об ошибках при этом используется протокол ICMP (Internet Control Message Protocol). На транспортном уровне кроме надежного протокола TCP имеется также быстрый и ненадежный протокол передачи пакетов в виде дэйтаграмм UDP (User Datagram Protocol).

HTTP. Протокол HTTP (Hypertext Transfer Protocol) принадлежит к прикладному уровню, более высокому уровню по сравнению с TCP/IP. HTTP используется для передачи по сети гипертекстовых документов, отображаемых браузером в виде Web-страниц. Браузер, который является HTTP-клиентом, посылает запрос Web-серверу, на который указывает адрес получателя. Протокол устанавливает структуру запроса (Request) от клиента-браузера к серверу HTTP и структуру ответа (Response) сервера. Ответ сервера отображается браузером в виде Веб-страницы.

FTP. Протокол FTP (File Transfer Protocol) был разработан для передачи файлов от клиента к FTP-серверу и обратно. Адрес FTP-ресурса в Интернете выглядит следующим образом: ftp://ftp.netscape.com. Протокол устанавливает структуру запроса и ответа.

POP3 (Post Office Protocol) – это стандартный протокол почтового соединения, предназначенный для обработки запросов на получение почты с POP сервера.

SMTP (Simple Mail Transfer Protocol) – протокол, который задает набор правил для отсылки почты с клиента на SMTP-сервер. В качестве почтового клиента может быть выбрана программа Microsoft Outlook.

WAP. WAP (Wireless Application Protocol) был разработан в 1997 году группой компаний Ericsson, Motorola и др., чтобы предоставить доступ к службам Интернета пользователям беспроводных устройств – мобильных телефонов, электронных органайзеров.

Модель OSI/ISO

В 1978 году International Standards Organization (ISO) выпустила набор спецификаций, описывающих архитектуру сети, образованной разными устройствами. В 1984 году ISO выпустила новую версию модели, названную эталонной моделью взаимодействия открытых систем (Open System Interconnection reference model, OSI). Версия 1984 года стала стандартом: ее спецификации используют производители при разработке сетевых продуктов и при построении сетей. В модели OSI сетевые функции распределены между семью уровнями.

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

6. Представительский уровень

5. Сеансовый уровень

4. Транспортный уровень

3. Сетевой уровень

2. Канальный уровень

1. Физический уровень

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

Компьютер А ------> Компьютер B

7 Прикладной -(infpac) <--------->Прикладной -(infpac)

6 Представительский(infpac)+H7 <--------->Представительский-(infpac)+H7

5 Сеансовый -(infpac)+H7 +H6 <--------->Сеансовый -(infpac) +H7+H6

4 Транспортный -(infpac)+H7+H6+H5 <--------->Транспортный -(infpac) +H7+H6+H5

3 Сетевой -(infpac)+H7+H6 +H5+H4 <--------->Сетевой -(infpac)+H7+H6+H5+H4

2 Канальный -(infpac)+H7+H6+H5+H4+H3<--------->Канальный -(infpac)+H7+H6+H5+H4+H3

1 Физический -(infpac) +H7+H6+H5+H4+H3+H2<->Физический(infpac)+H7+H6+H5+H4+H3+H2

|| || ============================================================

Данные в сеть поступают в виде пакетов. Пакет (packet) – это единица информации, передаваемая между устройствами сети как единое целое. Пакет проходит последовательно через все уровни сети. На каждом передающем уровне к пакету добавляется некоторая информация, форматирующая или адресная, необходимая для передачи данных по сети. На принимающей стороне пакет проходит через все уровни в обратном порядке. Программное обеспечение на каждом уровне читает информацию пакета, затем удаляет информацию, добавленную к пакету на этом же уровне отправляющей стороной, и передает пакет следующему уровню. Когда пакет дойдет до Прикладного уровня, вся адресная информация будет удалена и данные примут свой первоначальный вид. За исключением самого нижнего уровня сетевой модели, никакой иной уровень не может непосредственно послать информацию соответствующему уровню другого компьютера. Информация на компьютере-отправителе должна пройти через все уровни. Затем она передается по сети на компьютер-получатель и опять проходит сквозь все слои, пока не достигнет того же уровня, с которого она была послана на компьютере-отправителе. Взаимодействие смежных уровней осуществляется через интерфейс. Интерфейс определяет услуги, которые нижний уровень предоставляет верхнему, и способ доступа к ним. Поэтому каждому уровню одного компьютера «кажется», что он непосредственно взаимодействует с таким же уровнем другого компьютера.

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

Представительский уровень. Уровень 6 – определяет формат, используемый для обмена данными между сетевыми компьютерами. Этот уровень можно назвать переводчиком. На компьютере-отправителе данные, поступившие от Прикладного уровня, на этом уровне переводятся в общепонятный промежуточный формат. На компьютере-получателе на этом уровне происходит перевод из промежуточного формата в тот, который используется Прикладным уровнем компьютера. Представительский уровень отвечает за преобразование протоколов, трансляцию данных, их шифрование, смену или преобразование применяемого набора символов (кодовой таблицы). Представительский уровень управляет сжатием данных. На этом уровне работает утилита, называемая редиректором. Ее назначение – переадресовать операции ввода/вывода к ресурсам сервера.

Сеансовый уровень. Уровень 5 – позволяет двум приложениям на разных компьютерах устанавливать, использовать и завершать соединение, называемое сеансом. На этом уровне выполняются такие функции, как распознавание имен и защита, необходимые для связи двух приложений в сети. Сеансовый уровень обеспечивает синхронизацию между пользовательскими задачами посредством расстановки в потоке данных контрольных точек (chekpoints). В случае сетевой ошибки, потребуется заново передать только данные, следующие за последней контрольной точкой. На этом уровне выполняется управление диалогом между взаимодействующими процессами, регулируется, какая из сторон осуществляет передачу, когда, как долго и т.д.

Транспортный уровень. Уровень 4 – гарантирует доставку пакетов без ошибок, без потерь и дублирования. На этом уровне сообщения переупаковываются: длинные разбиваются на несколько пакетов, а короткие объединяются в один. Это увеличивает эффективность передачи пакетов по сети. На Транспортном уровне компьютера-получателя сообщения распаковываются, восстанавливаются в первоначальном виде, и посылается сигнал подтверждения приема. Транспортный уровень управляет потоком и проверяет ошибки.

Сетевой уровень. Уровень 3 – отвечает за адресацию сообщений и перевод логических адресов и имен в физические адреса. Одним словом, исходя из конкретных сетевых условий, приоритета услуги и других факторов здесь определяется маршрут от компьютера-отправителя к компьютеру-получателю. На этом уровне решаются также такие задачи и проблемы, связанные с сетевым трафиком, как коммутация пакетов, маршрутизация и перегрузки. Если сетевой адаптер маршрутизатора не может передавать большие блоки данных, посланные компьютером-отправителем, на Сетевом уровне эти блоки разбиваются на меньшие. А Сетевой уровень компьютера-получателя собирает эти данные в исходное состояние.

Канальный уровень. Уровень 2 – осуществляет передачу кадров данных от Сетевого уровня к Физическому. Кадры – это логически организованная структура даных. Канальный уровень компьютера -получателя наоборот упаковывает поступающий поток битов в кадры данных. Канальный уровень (Data link) обеспечивает точность передачи кадров между компьютерами через Физический уровень. Канальный уровень получателя проверяет наличие возможных ошибок. Кадры, поврежденные при передаче, или кадры, получение которых не подтверждено, посылаются вторично. Передаваемая управляющая информация используется для маршрутизации, а также указывает на тип пакета и сегментацию. Данные – собственно передаваемая информация и контрольная сумма (CRC). Контрольная сумма помогает выявить ошибки, что гарантирует правильный прием информации.

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

В 1980 году был выпущен Project 802, названный в соответствии с годом и месяцем своего издания (1980 год, февраль). Project 802 установил стандарты для физических компонентов сети – интерфейсных плат и кабельной системы, – с которыми имеют дело Физический и Канальный уровни модели OSI. Стандарты ЛВС, определенные Project 802, делятся на 12 категорий, каждая из которых имеет свой номер. Протокол IEEE Project 802 разделил Канальный уровень на два подуровня:

Управление логической связью (Logical Link Control, LLC) – контроль ошибок и управление потоком данных; Управление логической связью устанавливает канал связи и определяет использование логических точек интерфейса, называемых точками доступа к услугам (service access points, SAP). Подуровень Управление доступом к среде напрямую связан с платой сетевого адаптера и отвечает за безошибочную передачу данных между двумя компьютерами сети.