Сетевой уровень, или уровень 3 OSI, предоставляет сервисы, позволяющие оконечным устройствам обмениваться данными по сети. Для выполнения такой сквозной передачи в сетевом уровне используются четыре основных процесса.
- Адресация оконечных устройств: подобно тому, как телефону присваивается индивидуальный номер, оконечным устройствам необходимо назначить уникальный IP-адрес для возможности идентификации в сети. Оконечное устройство с настроенным IP-адресом называется узлом.
- Инкапсуляция: сетевой уровень получает блок данных протокола (PDU) от транспортного уровня. Во время выполнения процесса, который называется инкапсуляцией, сетевой уровень добавляет информацию заголовка IP, например IP-адрес узла источника (отправляющего) и узла назначения (получающего). После добавления в блок PDU информации заголовка такой блок будет называться пакетом.
- Маршрутизация: сетевой уровень предоставляет сервисы, с помощью которых пакеты направляются к узлу назначения в другой сети. Для перемещения к другим сетям пакет должен быть обработан маршрутизатором. Роль маршрутизатора заключается в том, чтобы выбрать пути для пакетов и направить их к узлу назначения. Такой процесс называется маршрутизацией. До того, как достигнуть узла назначения, пакет может пройти через несколько промежуточных устройств. Каждый маршрут на пути пакета к узлу назначения называется переходом.
- Деинкапсуляция: по прибытии пакета на сетевой уровень узла назначения этот узел проверяет IP-заголовок пакета. Если IP-адрес назначения в заголовке совпадает с его собственным IP-адресом, заголовок IP удаляется из пакета. Процесс удаления заголовков из нижних уровней называется деинкапсуляцией. После деинкапсуляции пакета, выполняемой сетевым узлом, полученный блок PDU уровня 4 пересылается соответствующей службе на транспортном уровне.
В отличие от транспортного уровня (уровень 4 OSI), который управляет передачей данных между процессами, запущенными на каждом узле, протоколы сетевого уровня указывают структуру пакета и тип обработки, которые используются для перемещения данных от одного узла к другому. Функционирование без учета данных, передаваемых в каждом пакете, позволяет сетевому уровню передавать пакеты для нескольких типов коммуникации между несколькими узлами.
Анимация на рисунке демонстрирует процесс обмена данными.