Модель уровней Интернета TCP/IP
Вторая основная модель разделения протоколов на уровни не была разработана комитетом по стандартам, а появилась в результате исследований, приведших к появлению стека протоколов TCP/IP. После небольшой доработки модель МОС может быть приспособлена для описания схемы деления на уровни в TCP/IP, но базовые предпосылки этих схем сильно различаются, что позволяет говорить об их различии.
На концептуальном уровне ПО TCP/IP организовано в виде 4 уровней, опирающихся на пятый уровень оборудования. Рисунок 10.5 показывает концептуальные уровни, а также форму, в которой передаются данные между ними.
Концептуальный уровень Объекты, передаваемые между уровнями ----------------- | Прикладной | | | ----------------- <---------Сообщения или потоки | Транспортный | | | ----------------- <---------Пакеты транспортного | Межсетевой | протокола | | ----------------- <---------Дейтаграммы IP | Интерфейс с | | сетью | ----------------- <---------Кадры конкретной сети . Оборудование . . . .................
Рисунок 10.5 Четыре конептуальных уровня ПО TCP/IP и форма объектов, передаваемых между ними. Уровень, называемый интерфейс с сетью, иногда называют уровень канала данных.
Прикладной уровень. На самом верхнем уровне пользователи вызывают прикладные программы, которые обращаются к сервисам, доступным в среде Интернета TCP/IP. Приложение взаимодействует с протоколами транспортного уровня для передачи или приема данных. Каждая прикладная программа выбирает тип транспортировки, который ей требуется - либо последовательность отдельных сообщений, либо непрерывный поток байт. Прикладная программа передает данные транспортному уровню в требуемой форме для доставки.
Транспортный уровень. Основной задачей транспортного уровня явялется обеспечение взаимодействия между прикладными программами. Такое взаимодействие часто называется межконцевое( end-to-end). Транспортный уровень может управлять потоком информации. Он может также обеспечивать надежную передачу, гарантируя, что данные прибыли без ошибок и в порядке их передачи. Для этого он заставляет принимающую сторону посылать обратно подтверждения, и повторно передает потерянные пакеты. Транспортное ПО делит передаваемый поток данных на небольшие части( называемые пакетами согласно терминологии МОС) и передает каждый пакет вместе с адресом назначения следующему уровню. Хотя рисунок 10.5 использует один блок для представления прикладного уровня, компьютеры общего назначения могут выполнять несколько программ, одновременно обращающихся к интернету. Транспортный уровень должен принимать данные от нескольких прикладных программ и посылать их более нижнему уровню. Для этого он добавляет дполнительную информацию к каждому пакету, включая коды, идентифицирующие прикладную программу, пославшую его, и приклданую программу-получателя, а также контрольную сумму. Принимающая машина использует контрольную сумму для проверки целостности принятого пакета, а код назначения - для идентификации прикладной программы, которой он должен быть передан.
Межсетевой уровень. Как мы уже видели, Межсетевой уровень управляет взаимодействием между машинами. Он принимает запрос на посылку пакета от транспортного уровня вместе с указанием машины, на которую этот пакет должен быть послан. Он инкапсулирует пакет в IP-дейтаграмме, заполняет заголовок дейтаграммы, использует алгоритмы маршрутизации для определения того, можно ли послать дейтаграмму напрямую, или следует послать ее шлюзу, и передает дейтаграмму соответствующему интерфейсу с сетью. Межсетевой уровень также обрабатывает приходящие дейтаграммы, проверяет их корректность, и использует алгоритм маршрутизации для того, чтобы решить, нужно ли обработать дейтаграмму локально или ее следует переправить дальше. Для дейтаграмм, адресованных локальной машине, ПО межсетевого уровня удаляет заголовок дейтаграммы и определяет, какой из транспортных протоколов будет обрабатывать пакет. Наконец, межсетеовй уровень посылает сообщения об ошибках ICMP по мере необходимости и обрабатывает все приходящие сообщения ICMP.
Уровень интерфейса с сетью. ПО TCP/IP самого низкого уровня состоит из уровня интерфейса с сетью, ответственного за прием IP-дейтаграмм и передачу их по конкретной сети. Интерфейс с сетью может состоять из драйвера устройства( когда сеть - это ЛВС, к которой машина присоединена напрямую) или сложной подсистемы, использующей свой протокол канального уровня( когда сеть состит из коммутаторов пакетов, взаимодействующих с ГВМ, используя HDLC).
Содержание раздела