Какие уровни модели osi объединяет уровень сетевых интерфейсов стека tcp ip
В стеке TCP/IP определены четыре уровня (см табл.1). Каждый из них несет на себе некоторую долю нагрузки по решению основной задачи — организации надежной и производительной работы составной сети, части которой построены на основе разных сетевых технологий.
Табл.1. Уровни стека TCP/IP .
Уровень I | Прикладной уровень |
Уровень II | Основной (транспортный) уровень |
Уровень III | Уровень межсетевого взаимодействия |
Уровень IV | Уровень сетевых интерфейсов |
Уровень межсетевого взаимодействия
Стержнем всей архитектуры является уровень межсетевого взаимодействия, или сетевой уровень, который реализует концепцию передачи пакетов в режиме без установления соединений, то есть дейтаграммным способом. Именно этот уровень обеспечивает возможность перемещения пакетов по сети, используя тот маршрут, который в данный момент является наиболее рациональным. Этот уровень также называют уровнем internet, указывая, тем самым, на основную его функцию — передачу данных через составную сеть.
Основным протоколом уровня (в терминологии модели OSI ) в стеке TCP/IP является протокол IP . Этот протокол изначально проектировался как протокол передачи пакетов в составных сетях, состоящих из большого количества локальных сетей, объединенных как локальными, так глобальными связями. Поэтому протокол IP хорошо работает в сетях со множеством топологий, рационально используя наличие в них подсистем и экономно расходуя пропускную способность низкоскоростных линий связи. Так как протокол IP является дейтаграммным протоколом, он не гарантирует доставку пакетов до узла назначения, но старается это сделать.
К уровню межсетевого взаимодействия относятся все протоколы, связанные с состоянием и модификацией таблиц маршрутизации, такие как протоколы сбора маршрутной информации RIP и OSPF , а также протокол межсетевых управляющих сообщений ICMP . Последний протокол предназначен для обмена информацией об ошибках между маршрутизаторами сети и удаленным источником пакета. С помощью специальных пакетов ICMP сообщает о невозможности доставки пакета, о превышении времени жизни или продолжительности сборки пакета из фрагментов, об аномальных величинах параметров, об изменении маршрута пересылки и типа обслуживания, о состоянии системы и т. п.
Основной уровень
Поскольку на сетевом уровне не устанавливается соединение, то нет никаких гарантий того, что все пакеты будут доставлены в место назначения целыми и невредимыми или придут в том же порядке, в котором они были отправлены. Эту задачу — обеспечение надежности информационной связи между двумя конечными узлами — решает основной уровень стека TCP/IP , называемый также транспортным.
На этом уровне функционируют протокол управления передачей TCP и протокол дейтаграмм пользователя UDP . Протокол TCP обеспечивает надежную передачу сообщений между удаленными прикладными процессами за счет образования логических соединений. Этот протокол позволяет равноранговым объектам на компьютере-отправителе и на компьютере-получателе поддерживать обмен данными в дуплексном режиме. TCP позволяет без ошибок доставлять сформированный на одном из компьютеров поток байт в любой другой компьютер, входящий в составную сеть. TCP делит поток байт на части — сегменты и передает их нижележащему уровню межсетевого взаимодействия. После того, как эти сегменты будут доставлены в пункт назначения, протокол TCP снова соберет их в непрерывный поток байт.
Протокол UDP обеспечивает передачу прикладных пакетов дейтаграммным способом, как и главный протокол уровня межсетевого взаимодействия IP , и выполняет только функции связующего звена (мультиплексора) между сетевым протоколом и многочисленными системами прикладного уровня, или пользовательскими процессами.
Прикладной уровень
Прикладной уровень объединяет все службы, представляемые системой пользовательским приложениям. За долгие годы использования в сетях различных стран и организаций стек TCP/IP накопил большое число протоколов и служб прикладного уровня. Прикладной уровень реализуется программными системами, построенными в архитектуре клиент-сервер, базирующейся на протоколах нижних уровней.
В отличие от протоколов остальных трех уровней, протоколы прикладного уровня занимаются деталями конкретного приложения и «не интересуются» способами передачи данных по сети. Этот уровень постоянно расширяется за счет присоединения к старым, прошедшим многолетнюю эксплуатацию сетевым службам типа Telnet, FTP , TFTP , DNS , SNMP , сравнительно новых служб, таких, например, как протокол передачи гипертекстовой информации HTTP.
Уровень сетевых интерфейсов
Идеологическим отличием архитектуры стека TCP/IP от многоуровневой организации других стеков является интерпретация функций самого нижнего уровня — уровня сетевых интерфейсов. Протоколы этого уровня должны обеспечивать интеграцию в составную сеть других сетей, причем задача ставится так: сеть TCP/IP должна иметь средства включения в себя любой другой сети, какую бы внутреннюю технологию передачи данных эта сеть не использовала. Отсюда следует, что этот уровень нельзя определить раз и навсегда. Для каждой технологии, включаемой в составную сеть подсети, должны быть разработаны собственные интерфейсные средства. К таким интерфейсным средствам относится протокол инкапсуляции IP-пакетов межсетевого взаимодействия в кадры локальных технологий.
Уровень сетевых интерфейсов в протоколах TCP/IP не регламентируется, но он поддерживает все популярные стандарты физического и канального уровней: для локальных сетей — это Ethernet, Token Ring, FDDI , Fast Ethernet, Gigabit Ethernet, 100VG-AnyLAN, для глобальных сетей — протоколы соединений «точка-точка» SLIP и PPP , протоколы территориальных сетей с коммутацией пакетов X.25, frame relay. Разработана также специальная спецификация, определяющая использование технологии ATM в качестве транспорта канального уровня.
Соответствие уровней стека TCP/IP уровням модели OSI .
Так как стек TCP/IP был разработан до появления модели взаимодействия открытых систем OSI , то, хотя он также имеет многоуровневую структуру, сответствие уровней стека TCP/IP уровням модели OSI достаточно условно (табл.2).
Табл.2. Соответствие уровней стека TCP/IP и модели OSI .
7 | WWW, Gopher, WAIS | SNMP | FTP | Telnet | TFTP | SMTP | I | |
6 | ||||||||
5 | TCP | UDP | II | |||||
4 | ||||||||
3 | IP | ICMP | RIP | OSPF | ARP | III | ||
2 | не регламентируется: Ethernet, Gigabit Ethernet, Token Ring, PPP , FDDI , X.25, SLIP, frame relay . | IV | ||||||
1 | ||||||||
уровни OSI | уровни TCP/IP |
Рассматривая многоуровневую архитектуру TCP/IP , можно выделить в ней, подобно архитектуре OSI , уровни, функции которых зависят от конкретной технологической реализации сети, и уровни, функции которых ориентированы на работу только с приложениями и не зависят от технологий сети.
Протоколы прикладного уровня стека TCP/IP работают на компьютерах, выполняющих приложения пользователей. Даже полная смена сетевого оборудования в общем случае не должна влиять на работу приложений, если они получают доступ к сетевым возможностям через протоколы прикладного уровня.
Протоколы транспортного уровня уже более зависимы от сети, так как они реализуют интерфейс к уровням, непосредственно организующим передачу данных по сети. Однако подобно протоколам прикладного уровня, программные модули, реализующие протоколы транспортного уровня, устанавливаются только на конечных узлах.
Протоколы двух нижних уровней являются сетезависимыми, а следовательно, программные модули протоколов межсетевого уровня и уровня сетевых интерфейсов устанавливаются как на конечных узлах составной сети, так и на маршрутизаторах.
Единицы данных протоколов стека TCP/IP
Каждый коммуникационный протокол оперирует с некоторой единицей передаваемых данных. Названия этих единиц иногда закрепляются стандартом, но чаще просто определяются традицией. В стеке TCP/IP за многие годы его эксплуатации образовалась устоявшаяся терминология в этой области (табл.3).
Табл.3. Единицы данных в стеке TCP/IP .
I | ПРИКЛАДНЫЕ ПРОТОКОЛЫ (поток) | |
II | UDP (дейтаграмма) | TCP (сегмент) |
III | IP (пакет или IP-дейтаграмма) | |
IV | СЕТЕВЫЕ ИНТЕРФЕЙСЫ (кадр(фрейм)) |
Потоком называют данные, поступающие от приложений на вход транспортного уровня TCP или UDP .
Протокол TCP нарезает из потока сегменты .
Единицу данных протокола UDP часто называют дейтаграммой (или датаграммой) . Дейтаграмма — это общее название для единиц данных, которыми оперируют протоколы без установления соединений. К таким протоколам относится и протокол межсетевого взаимодействия IP .
Дейтаграмму протокола IP называют также пакетом .
В стеке TCP/IP принято называть кадрами (фреймами) единицы данных протоколов, на основе которых IP-пакеты переносятся через подсети составной сети. При этом не имеет значения, какое название используется для этой единицы данных в локальной технологии.
Структура связей протокольных модулей
Рассмотрим потоки данных, проходящие через стек. В случае использования протокола TCP , данные передаются между прикладным процессом и модулем TCP . Типичным прикладным процессом, использующим протокол TCP , является модуль FTP . Стек протоколов в этом случае будет FTP / TCP / IP /Ethernet. При использовании протокола UDP , данные передаются между прикладным процессом и модулем UDP . Например, SNMP пользуется транспортными услугами UDP . Его стек протоколов выглядит так: SNMP / UDP / IP /Ethernet.
- Когда Ethernet-кадр попадает в драйвер сетевого интерфейса Ethernet, он может быть направлен либо в модуль ARP , либо в модуль IP . На то, куда должен быть направлен Ethernet-кадр, указывает значение поля типа в заголовке кадра.
- Если IP-пакет попадает в модуль IP , то содержащиеся в нем данные могут быть переданы либо модулю TCP , либо UDP , что определяется полем «протокол» в заголовке IP-пакета.
- Если UDP-датаграмма попадает в модуль UDP , то на основании значения поля «порт» в заголовке датаграммы определяется прикладная программа, которой должно быть передано прикладное сообщение.
- Если TCP-сообщение попадает в модуль TCP , то выбор прикладной программы, которой должно быть передано сообщение, осуществляется на основе значения поля «порт» в заголовке TCP-сообщения.