Функции сетевого уровня
Некоторые
из конкретных заданий, обычно выполняемых сетевым уровнем, включают:
- Логическая адресация: каждое
устройство, которое обменивается данными по сети, связано с логическим
адресом, иногда называемым адресом третьего уровня. Например,
в Интернете Интернет-протокол (IP) является
протоколом сетевого уровня, и каждая машина имеет IP-адрес. Обратите внимание, что
адресация также выполняется на уровне канала передачи данных, но эти адреса
относятся к локальным физическим устройствам. Напротив, логические адреса не
зависят от конкретного оборудования и должны быть уникальными для
всей объединенной сети.
- Маршрутизация: перемещение
данных по ряду взаимосвязанных сетей, вероятно, является определяющей
функцией сетевого уровня. Это задача устройств и программных
процедур, которые функционируют на сетевом уровне, чтобы обрабатывать входящие пакеты
из различных источников, определять их конечный пункт назначения, а затем
выяснять, куда они должны быть отправлены, чтобы доставить их туда, где они должны быть.
Я обсуждаю маршрутизации в модели OSI более полно в этой теме на в
теме о связи непрямого устройства , и показать , как это работает
способом в OSI
модель аналогии .
- Инкапсуляция дейтаграмм:
сетевой уровень обычно инкапсулирует сообщения,
полученные от более высоких уровней, помещая их в граммы данных (также
называемые пакетами) с заголовком сетевого уровня.
- Фрагментация и
повторная сборка: сетевой уровень должен отправлять сообщения на уровень канала данных
для передачи. Некоторые технологии уровня канала передачи данных имеют ограничения на
длину любого сообщения, которое может быть отправлено. Если пакет, который сетевой
уровень хочет отправить, слишком велик, сетевой уровень должен разделить пакет
на части, отправить каждую часть на уровень канала передачи данных, а затем
повторно собрать части, когда они прибудут на сетевой уровень на
машине назначения . Хорошим примером является то, как это
делается с помощью Интернет-протокола .
- Обработка ошибок и
диагностика: специальные протоколы используются на сетевом уровне, чтобы
позволить устройствам, которые логически связаны или которые пытаются маршрутизировать
трафик, обмениваться информацией о состоянии хостов в сети
или самих устройствах.