Модель OSI, которая означает «Модель взаимодействия открытых систем», представляет собой концептуальную основу, используемую для понимания и стандартизации функций телекоммуникационной или вычислительной системы без учета ее базовой внутренней структуры и технологии.
Модель, разработанная Международной организацией по стандартизации (ISO) в 1978 году, разделена на семь уровней, каждый из которых определяет определенные сетевые функции. Цель модели OSI — помочь разработчикам продуктов и обеспечить совместимость сетевых продуктов и программного обеспечения с помощью общего набора руководящих принципов.
Физический уровень (уровень 1). Этот уровень занимается физическим соединением между устройствами, а также передачей и приемом необработанных битовых потоков по физической среде. Он включает спецификации для кабелей, разъемов и электрических сигналов.
Уровень канала передачи данных (уровень 2). Этот уровень отвечает за передачу данных от узла к узлу — связь между двумя напрямую соединенными узлами. Он также обеспечивает исправление ошибок на физическом уровне, синхронизацию кадров и управление потоком. Ethernet и PPP являются примерами протоколов канального уровня.
Сетевой уровень (уровень 3). Сетевой уровень отвечает за пересылку пакетов, включая маршрутизацию через промежуточные маршрутизаторы, поскольку он обеспечивает средства передачи сетевых пакетов переменной длины от источника к месту назначения через одну или несколько сетей. IP (Интернет-протокол) является примером протокола сетевого уровня.
Транспортный уровень (уровень 4). Этот уровень обеспечивает прозрачную передачу данных между конечными системами или хостами и отвечает за сквозное устранение ошибок и управление потоком. Это обеспечивает полную передачу данных. TCP (протокол управления передачей) и UDP (протокол пользовательских дейтаграмм) являются примерами протоколов транспортного уровня.
Сеансовый уровень (уровень 5). Сеансовый уровень устанавливает, управляет и разрывает соединения между приложениями. Он устанавливает, координирует и завершает диалоги, обмены и диалоги между приложениями на каждом конце. Он занимается координацией сеансов и соединений.
Уровень представления (уровень 6): этот уровень преобразует данные между уровнем приложения и сетью. Он отвечает за перевод, сжатие и шифрование/дешифрование. Это гарантирует, что данные находятся в пригодном для использования формате и происходит шифрование данных.
Прикладной уровень (уровень 7). Прикладной уровень является ближайшим к конечному пользователю уровнем и взаимодействует с программным приложением, реализующим коммуникационный компонент. Таким образом, и прикладной уровень, и пользователь взаимодействуют напрямую только с программными приложениями. Этот уровень предоставляет сетевые услуги конечным пользователям и предоставляет протоколы, которые приложения используют для обмена данными, например HTTP для просмотра веб-страниц, SMTP для электронной почты и FTP для передачи файлов.