Перейти к основному содержимому
Введение в сети

Введение в сети

Модель OSI и TCP/IP-стек

OSI (полное название Basic Reference Model Open Systems Interconnection model) — это эталонная модель, которая описывает основную архитектуру и принципы сетевой передачи данных.

Основа модели — семиуровневая иерархия, которая описывает, в каком виде и с помощью каких протоколов осуществляется передача данных по сети между двумя конечными устройствами. Каждый уровень имеет свое название и номер, поддерживаемые протоколы. Эта модель имеет свои недостатки и используется как теоретическая для лучшего понимания работы сети.

примечание

На Академии есть ознакомительная статья о модели OSI.

В реальности сети работают TCP/IP-стеку, подразумевающему объединение некоторых уровней:

1 — Канальный уровень (link layer)
  • 1 — Физический уровень OSI (physical layer)
  • 2 — Канальный уровень OSI (datalink layer)
2 — Межсетевой уровень (internet layer)
  • 3 — Сетевой уровень OSI (network layer)
3 — Транспортный уровень (transport layer)
  • 4 — Транспортный уровень OSI (transport layer)
4 — Прикладной уровень (application layer)
  • 5 — Сеансовый уровень OSI (session layer)
  • 6 — Уровень представления OSI (presentation layer)
  • 7 — Прикладной уровень OSI (application layer)

Далее будут рассмотрены основные понятия с разбивкой по уровням передачи данных.

Протокол Ethernet и MAC-адрес

На канальном уровне большинство современных локальных сетей используют протокол Ethernet, в котором данные разделяются на кадры и передаются по проводу. Скорость передачи данных варьируется от 10 Мбит/с до 100 Гбит/с в зависимости от модели сетевой карты.

MAC-адрес (Media или Medium Access Control Address) — это уникальный номер любого устройства, имеющего выход в сеть. У каждого устройства с сетевой картой, Bluetooth- или Wi-Fi-адаптером есть MAC-адрес, который назначается производителем.

IP-адрес, маска подсети, служебные адреса

На межсетевом уровне функционирует протокол IP, позволивший объединить разные сети в глобальную.

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

Для этого он анализирует входящие пакеты и перенаправляет их в соответствии с IP-адресами назначения.

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

IP-адрес — это номер, по которому идентифицируют сетевой интерфейс компьютера в локальной сети или интернете. Есть две версии протокола: IPv4 и IPv6. Они отличаются кодировкой.

В версии IPv4 номер кодируется 32 битами. Он представлен как четыре числа, разделённых точками — например, 192.168.0.1. Каждое число находится в промежутке с 0 до 255 включительно.

Версия IPv6 расширяет это адресное пространство до 128 бит, и адреса в ней представлены сериями шестнадцатеричных чисел, разделённых двоеточиями:

  • полная запись 2001:0db8:13bb:0002:0000:0000:0000:0020,
  • сокращенная запись: 2001:db8:13bb:2::20.

В сокращенной записи пропускаются нули по определенным правилам.

Маска подсети помогает маршрутизатору понять, как и куда передавать пакет. Маршрутизатор передает пакет напрямую, если получатель находится в той же подсети, что и отправитель. Если подсети получателя и отправителя различаются, пакет передается на последующие маршрутизаторы, пока не достигнет получателя. Маска подсети определяет с помощью двоичного кода, какая часть IP-адреса описывает сеть, а какая — устройство.

примечание

Например, маска подсети 255.255.255.0 в двоичном представлении выглядит как 24 единицы и 8 нулей. Это означает, что первые 24 бита в IP-адресе описывают адрес сети, а оставшиеся восемь указывают на конкретное устройство.

В версии IPv6 для читабельности показывается только количество единиц: таким образом, маска подсети может выглядеть как 64.

В IP-сетях так же существуют служебные адреса:

  • Общий сетевой адрес (broadcasting address) используется сетью для ссылок на саму себя.
  • Адрес сети используется для отправки пакетов на все доступные узлы сети.

Общий сетевой адрес и адрес сети своими значениями образуют границы диапазона доступных IP-адресов сети.

примечание

В сети, определяемой как 192.168.0.0/24:

  • общий сетевой адрес — 192.168.0.255.
  • адрес сети — 192.168.0.0

Выделяемый диапазон IP-адресов для хостов этой сети будет 192.168.0.1 — 192.168.0.254.

Например, для сервера с DHCP можно установить IP-адрес 192.168.0.123, если он не занят.

Диапазон IP-адресов в полной сети часто описывается синтаксисом a.b.c.d/e, где:

  • a.b.c.d — это адрес сети,
  • e — это число бит, отведённых под сетевую часть адреса.
примечание

Сеть из примера выше может быть описана так: 192.168.0.0/24.

Похожий синтаксис для IPv6: 2001:db8:13bb:2::/64.

Протоколы TCP и UPD

На транспортном уровне осуществляется доставка информации с помощью протоколов TCP и UPD.

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

DHCP

На прикладном уровне функции форматирования и представления данных делегированы библиотекам и программным интерфейсам приложений API. Приложения в зависимости от задач и архитектуры работают с разными прикладными протоколами — HTTP(S), FTP, SMTP и другими.

В контексте сетей интересна служба DHCP (Dynamic Host Configuration Protocol).

С помощью протокола DHCP сетевые устройства получают конфигурацию (автоматически при загрузке ОС или в любой момент времени по запросу). Это позволяет организовать централизованное управление конфигурациями. DHCP-сервер заведует несколькими параметрами, относящимися к настройке сети.

Самые главные из них — это IP-адрес и адрес сети, но он может предоставлять и другую информацию, такую как адреса серверов DNS, WINS, NTP и др.