1.3.3. Сетевой уровень

Сетевой уровень — это внутрисетевая первичная служба доставки. В сети с переключением пакетов сетевой уровень доставляет данные в виде отдельных пакетов, каждый из которых содержит адреса отправителя и получателя в целях маршрутизации. В качестве службы доставки сетевой уровень служит интерфейсом между сетевыми компьютерами и промежуточными переключателями пакетов на пути следования данных. При разработке сетевого уровня принимается во внимание ответственность каждого элемента сети за маршрутизацию данных. Другими словами, ответственность за маршрутизацию должна разделяться между сетевыми компьютерами и промежуточными переключателями пакетов. Сетевой уровень следит за правильностью принимаемых пакетов данных. В соответствии с моделью ISO/OSI он должен также обеспечивать правильную последовательность принимаемых пакетов. Однако сети на базе Интернет передают эти полномочия более высокому уровню — транспортному.

Маршрутизация данных

Для маршрутизации данных в сети обычно используется таблица маршрутизации. Она похожа на базу данных, где описывается местонахождение возможных получателей пакетов. Маршрутизатор, используя такую таблицу, в состоянии найти путь пакета для любого получателя на сети. В зависимости от конкретных требований, таблицы маршрутизации могут быть статическими или динамическими. Информация в статических таблицах, как правило, обновляется сетевым администратором. Динамические таблицы обновляются разнообразными сетевыми программами автоматически. Статические таблицы маршрутизации лучше всего использовать, когда местоположение устройства на сети меняется редко, и, следовательно, усилия для обновления информации минимальны. Информация о маршрутизации хранится в месте, доступном для всей сети, и обновляется вручную при изменении сетевой конфигурации. Разумеется, программы, использующие статические таблицы, гораздо проще в настройке и управлении, чем те, что используют динамические. При динамической маршрутизации программы обновляют свои таблицы при запуске каждого нового сеанса и, возможно, при появлении каждого нового пакета.

Управление сетевыми данными

Подключение новых компьютеров к сети приводит к возрастанию потока пакетов данных, часто называемых трафиком. Увеличение трафика приводит к столкновениям пакетов данных. Как только пакеты данных начинают сталкиваться, происходит уменьшение скорости трафика — пользователи замечают снижение производительности сети. Для того чтобы избежать этого, сетевой уровень должен эффективно решать задачу маршрутизации пакетов данных.

Первое, что при этом должен сделать сетевой уровень — прекратить посылать данные на переполненный переключатель пакетов. Если этого не сделать, то возникнет сетевая “пробка” и некоторые данные потеряются. Если уровень не в состоянии предотвратить столкновение пакетов, он все равно должен эффективно обработать сложившуюся ситуацию. Один из способов предотвратить столкновение пакетов — использовать контроль потока данных. Сетевой уровень контролирует поток данных при маршрутизации пакетов, тем самым разрешая проблему, когда передатчик шлет данные быстрее, чем приемник может их обработать.

Подсчет трафика

В современном мире сети часто пересекают геополитические границы. Множество сетей, таких, как Интернет, протянулись через границы двух или более государств. При этом часто возникает необходимость учитывать трафик сети на разных ее участках, с тем чтобы решать вопросы оплаты. Обеспечение работы сети требует денежных и временных затрат. Когда трафик пересекает границы между двумя странами, обе они хотят разделить затраты между собой. При этом становится необходимой информация о количестве данных, прошедших через сеть на территории каждой страны. Сетевые программы, подсчитывающие трафик, выдают такую информацию в терминах пакетов, сообщений, символов или битов данных.

Поскольку сетевой уровень заведует общесетевой информацией о маршрутизации, ему и принадлежит функция подсчета количества данных. Таким образом, разработчики сети должны обеспечить выдачу информации о трафике сетевым уровнем, если это необходимо. Тип выдаваемой информации быстро усложняется по мере того, как разные стороны используют различные формы представления данных. Усложнение информации приводит в свою очередь к усложнению программного обеспечения сетевого уровня. Интернет, к счастью, не использует такую информацию.

Разделение ответственности

Сетевой уровень определяет маршрут следования данных по сети. Он должен следить за трафиком, возможными столкновениями и скоростями передачи по каналам связи. Ответственность за надежную доставку данных лежит на физическом, сетевом уровнях и на уровне соединения. Сетевой уровень можно рассматривать в качестве службы доставки. Он заведует доставкой данных между сетевыми компьютерами и решает проблемы, связанные с доставкой и маршрутизацией трафика.