УДК 004.72
TCP/IP and OSI/ISO Network Models: Classical Seven Level
Interpretation
Kruchinin Sergei Vladimirovich, chief research engineer, Wellborn LLC.
Abstract. The article summarizes a previous studies on network stacks and models, offering a seven-level interpretation of the TCP / IP stack protocols, close to the seven-level OSI / ISO model.
Keywords: OSI/ISO, network model, protocols, TCP/IP.
Модели TCP/IP и ЭМВОС: классическая семиуровневая интерпретация
Кручинин Сергей Владимирович, гл.н.с., ООО «ВЭЛБОРН»
Аннотация. В статье автор обобщает ряд предыдущих исследований, посвященных сетевым стекам и моделям, предлагая семиуровневую интерпретацию протоколов стека TCP/IP, близкую к семиуровневой модели ЭМВОС (OSI/ISO)
Ключевые слова: OSI/ISO, сетевая модель, протоколы, TCP/IP.
Введение. В теории и техники радиосвязи, системах и устройствах телекоммуникаций в виду специфики технологии принято использовать многоуровневые модели. При этом в учебной, научной и технической литературе используются несколько отличающихся моделей. Данная работа является развитием и дополнением предыдущей работы [1].
Классической является семиуровневая модель OSI/ISO (англ. Open Systems Interconnection Basic Reference Model - базовая эталонная модель взаимодействия открытых систем, в СССР и России известная как Эталонная модель взаимодействия открытых систем — ЭМВОС, ГОСТ Р ИСО/МЭК 7498-1-99 [2], далее будем именовать как ЭМВОС), существующие сетевые решения основаны на четырехуровневой модель TCP/IP. Считается, что именно четырехуровневая модель TCP/IP (стек TCP/IP) реализован на практике. Тем не менее, на самом деле имеет место использование гибридных моделей (не формализованно), Так нижние уровни часто употребляются именнно по модели ЭМВОС (в том числе в выводе таких ПО как Cisco Packet Tracer и Wireshark), а верхние уровни в большей степени соответствуют TCP/IP нежели чем ЭМВОС: на практике невозможно выделить, какие именно протоколы прикладного уровня модели TCP/IP на
каком уровне модели ЭМВОС находятся. Впрочем, частично и в этом случае TCP/IP оказывается не вполне удобной, так как уровень SSL/TLS не вписывается в четырехуровневую модель, занимая промежуточное положение между прикладным и транспортным уровнем.
Часто SSL/TLS относят к представительскому уровню, реже — к сеансовому. Само название протокола SSL (Socket Security Layer) и его развития TLS (Transport Layer Security) говорит о близости протоколов к транспортному уровню (сокет — механизм, служащий для доступа к транспортному уровню, в SSL; TLS явным образом указывает о безопасности транспортного уровня). TLS является шифрованной сессией, и например, к серверу HTTPS можно подключиться таким образом, используя сырую TLS-сессию:
$ openssl s_client -connect some.resourse:443 в то время как TCP — нешифрованная сессия, и к веб-ресурсу по протоколу HTTP можно подключиться используя сырую сессию TCP можно подключиться соответсвенно: $ telnet some.resource 80 Примечание:
1)команды даны для Linux
2)подключение через telnet к TCP является не совсем корректным, хотя и практически работающим решением. В целом telnet это протокол прикладного уровня, который добавляет собственные управляющие последовательности. Технически же для tcp-сессии необходимо использовать соответствующий TCP-клиент (Например Putty в режиме сырого подключения - RAW).
На наш взгляд SSL/TCP в меньшей степени относится к представительскому, так как представительский уровень решает задачи сжатия и перекодировки.
Таким образом, к представительскому уровню можно отнести протоколы и форматы:
• формат сжатия gzip;
• формат сжатия bzip2;
• формат кодирования видео mp4;
• формат кодирования аудио mp3;
• голосовой кодек G.722. 1;
• голосовой кодек G.729.1;
• стандарт сжатия видео H.263;
• MIME-types.
Также технически одновременно к прикладным и сеансовым протоколам можно отнести и сигнальные протоколы, такие как RTSP для работы совместно с прикладным протоколом RTP, RTCP, SIP, также использующийся только для управления соединением, когда данные передаются с помощью RTP. Что касается IP-телефонии, то набор стандартов H.323 в принципе сам по себе является сетевым стеком.
Также можно использовать компромиссный вариант, указывая SSL/TLS на одновременное соответствие уровням представления и сеансовом.
Попробуем описать близкую к классическому представлению модели ЭМВОС на примере веб-приложения (шифрованное соединение со сжатием).
7. Прикладной уровень. В качестве прикладного уровня традиционно будем использовать HTTPS. На практике это означает, что технически на прикладном уровне используется HTTP, обернутый в TLS.
6. Представительский уровень. Как мы уже отмечали ранее, HTTP содержит ряд особенностей, характерных именно для представительского уровня модели OSI/ISO, позволяя указывать формат файлов (тип содержимого), что позволяет браузеру передать файлу нужному прикладному програмному обеспечению или самостоятельно, а также явным образом задать кодировку.
Например:
• text/html, encoding:utf-8;
• text/html, encoding: CP-1251;
• text/css
• application/javascript
• image/png
• image/jpeg.
Что интересно, данные заголовки могут быть сдублированы или указаны выше уровня протокола HTTP, в составе тегов HTML META (http-equip).
Но наиболее точным способом инкапсуляции, на наш взгляд, может являться сжатие gzip. В данном случае инкапсуляция осуществляется полноценно.
5. Сеансовый уровень Фактически роль сеансового уровня для HTTP является протокол TLS (Transport Layer Security), реализующий зашифрованную сессию внутри нешифрованной TCP-сессии.
4. Транспортный уровень. TLS инкапсулируется в TCP-соединение, используя STREAM-сокет.
3. Сетевой уровень. С сетевым уровнем разночтений не возникает, и в OSI/ISO, и в TCP/IP сюда относится протокол IP и сопутствующие протоколы (ICMP).
2. Канальный уровень. В модели TCP/IP не разделяется на канальный и физический, в отличие от модели OSI/ISO. В качестве примера канальный уровень может быть представлен IEEE 802.3 Ethernet или IEEE 802.11 WiFi.
1. Физический уровень. Таковым будет витая пара или радиоканал.
Выводы
Таким образом, можно представить стек протоколов для получения веб-страницы по протоколу HTTPS следующим образом:
Рис.1. Устройства, работающие на разных уровнях предолженной модели (прим. Одно устройство может поддерживать и другие уровни, отображены только характерные)
Таблица 1. Соотношение уровней модели ЭМВОС и стека протоколов анализируемого веб-запроса
081/180
7. Прикладной уровень HTTP
6. Уровень представления GZIP
5. Сеансовый уровень TLS
4. Транспортный уровень TCP
3. Сетевой уровень IPv4
2. Канальный уровень Ethernet II
1. Физический уровень Витая пара
Итак, на примере HTTPS мы получили разложение используемых технологий в семиуровневый стек, близкий к эталонной модели взаимодействия открытых систем.
Стоит отметить, что полученная модель, хотя и содержит семь уровней, все же не тождественна модели ЭМВОС, но может применяться там, где требуется представление систем в модели ЭМВОС.
Ввиду невозможности однозначного представления модели ЭМВОС к TCP/IP предложенный подход представляется вполне оправданным.
Библиографический указатель
1. Кручинин С.В. Реализация модели OSI/ISO телекоммуникационным модулем сопряжения для MESH-сетей //Научно-исследовательские публикации, 2016, № 5(37) с. 27-32
2. ГОСТ Р ИСО/МЭК 7498-1-99. - «ВОС. Базовая эталонная модель. Часть 1. Базовая модель». - ОКС: 35.100.70. - Действует с 01.01.2000. - 62c. - (http://vak.ru/pub/gost/gost-r-iso-mek-7498-1-99.pdf)
3. Кручинин С. В. Семиуровневая сетевая модель OSI/ISO и стек протоколов TCP/IP: исследование взаимоотношения и интерпре-тации//Научно-исследовательские публикации. -2015. -№5(25) -С. 115-120.
4. Кручинин С. В. Стеки сетевых технологий TCP/IP и OSMSOZ/Вопросы науки. -2015. -Т. 3. -С. 145-147.
5. Кручинин С.В. Децентрализованные сети и стек протоколов TCP/IP // Актуальные проблемы прикладной математики, информатики и механики /Сборник трудов Международной научно-технической конференции, посвященный 70-летию Победы в Великой отечественной войне. 2015. С. 285-286.
6. Кручинин С.В. Интерпретация семиуровневой модели OSI/ISO //Актуальные проблемы прикладной математики, информатики и механики сборник трудов международной научно-технической конференции. 2016. С. 389-390.