Семиуровневая модель взаимодействия открытых систем (рис. 1) (Open System Interconnection, OSI) предложена Международной организацией по стандартизации (International Organization for Standartization, ISO). Модель ISO/OSI предполагает, что все сетевые приложения можно подразделить на семь уровней, для каждого из которых созданы свои стандарты и общие модели. В результате задача сетевого взаимодействия делится на меньшие и более легкие задачи, обеспечивается совместимость между продуктами разных производителей и упрощается разработка приложений за счет создания отдельных уровней и использования уже существующих реализаций.
Прикладной уровень (Application layer) | SMTP, FTP, HTTP | |
Представительный уровень (Presentation layer) | ||
Сеансовый уровень (Session layer) | ||
Транспортный уровень (Transport layer) | Transmission Control Protocol (TCP) User Datagram Protocol (UDP) | |
Сетевой уровень (Network layer) | Internet Protocol (IP) Internet Control Message Protocol (ICMP) Address Resolution Protocol (ARP) | |
Канальный уровень (Data-link layer) | IEEE 802.3 Ethernet | |
Физический уровень (Physical layer) |
Рис. 1.1. Семиуровневая модель взаимодействия открытых систем
Теоретически каждый уровень должен взаимодействовать с аналогичным уровнем удаленного компьютера. На практике каждый из них, за исключением физического, взаимодействует с выше- и нижележащими уровнями – представляет услуги вышележащему и пользуется услугами нижележащего. Нужно учитывать, что в реальной ситуации на одном компьютере независимо друг от друга иногда выполняется несколько реализаций одного уровня. Например, рис. 1.1.
Конечно, модель ISO/OSI должна была появиться первой, а уже потом – все остальные разработки, созданные коммерческими, исследовательскими и стандартизирующими организациями, причем каждая – для конкретного уровня архитектуры. Но на самом деле многие технологии появились раньше семиуровневой модели. Кроме того, некоторые новые технологии, разработанные позже модели ISO/OSI, не полностью с ней совместимы. Но, несмотря на столь сложный путь развития, эта модель обеспечивает достаточную совместимость.
Физический уровень.
Физический уровень описывает физические свойства (например, электромеханические характеристики) среды и сигналов, переносящих информацию. Это физические характеристики кабелей и разъемов, уровни напряжения и электрического сопротивления и т. д., в том числе, например, спецификация кабеля «неэкранированная витая пара» (unshielded twisted pair, UTP).
Канальный уровень.
Канальный уровень обеспечивает перенос данных по физической среде. Он делится на два подуровня: управления логическим каналом (logical link control, LLC) и управления доступом к среде (media access control, MAC). Такое деление позволяет одному уровню LLC использовать различные реализации уровня MAC. Уровень MAC работает с применяемыми в Ethernet и TokenRing физическими адресами, которые «вшиты» в сетевые адаптеры их производителями.
Сетевой уровень.
Сетевой уровень работает с логическими адресами. Он обеспечивает подключение и маршрутизацию между двумя узлами сети. Сетевой уровень предоставляет транспортному уровню услуги с установлением логического соединения (connection-oriented) или без установления логического соединения (connectionless). Одна из основных функций сетевого уровня – маршрутизация.