Как устроены компьютерные сети
От кабелей и Wi-Fi до IP-адресов, маршрутизации и загрузки сайтов.
Компьютеры, смартфоны, серверы и другие устройства постоянно обмениваются данными по сети. Благодаря этому мы открываем сайты, отправляем сообщения, смотрим видео и общаемся с чат-ботами.
За этим обменом стоит целая система: устройства соединяются друг с другом, данные разбиваются на части и передаются по определённым правилам, а маршрутизаторы и другие сетевые устройства помогают доставить их по нужному адресу.
Может показаться, что знать всё это нужно только сетевым инженерам и системным администраторам. Но базовое понимание работы компьютерных сетей пригодится практически любому ИТ-специалисту.
В этой статье мы разберём, из чего состоят компьютерные сети, как в них передаются данные, что такое топология сети и что происходит после того, как вы вводите адрес сайта в браузере.
Содержание
- Что такое компьютерная сеть и как она устроена
- Как данные передаются по сети
- IP-адреса и логические сети
- Как работает маршрутизация
- Что происходит, когда мы открываем сайт
- Повторяем главное
Что такое компьютерная сеть и какие есть виды топологии
Компьютерная сеть — это набор устройств, соединённых между собой для обмена данными и совместного использования ресурсов. Благодаря сетям мы отправляем сообщения, открываем сайты, смотрим видео, передаём файлы и подключаемся к удалённым сервисам.
Хотя сеть и называется компьютерной, к ней могут подключаться смартфоны, телевизоры, игровые консоли, камеры, принтеры, умные колонки, а в современном доме даже холодильники, кондиционеры и лампочки.
Компьютерная сеть состоит из двух базовых элементов:
- Узлы сети — устройства, которые обмениваются данными. Узлом может быть ноутбук, смартфон, сервер, принтер, камера наблюдения, роутер или практически любое другое устройство с сетевым интерфейсом.
- Каналы связи, по которым данные передаются между узлами. Они бывают проводными и беспроводными, а соединение между устройствами может быть как прямым физическим, так и логическим — через другие узлы сети.
Узлы можно соединять между собой по-разному. Схему, которая описывает способ их соединения, называют топологией сети.
Классические топологии сети
Одна из самых простых топологий — шина, в которой все устройства подключаются к общему кабелю. Данные передаются по этому кабелю и доступны всем узлам сети, а каждый из них определяет, предназначены ли они ему.

Инфографика: soco-st / SVG Repo LLC / Skillbox Media
Именно такую топологию использовали ранние версии Ethernet. Например, стандарт 10BASE5 работал со скоростью 10 Мбит/с и использовал толстый коаксиальный кабель длиной до 500 метров на один сегмент.
Главный недостаток шины — зависимость всей сети от общего кабеля. Его повреждение или неправильное подключение устройств может нарушить работу всего сегмента.
Другая классическая топология — кольцо. В ней каждый узел связан с соседними, а данные последовательно проходят по кольцу от одного устройства к другому. В простом кольце повреждение кабеля или одного из узлов тоже могло нарушить работу сети, поэтому позднее появились отказоустойчивые варианты с резервными соединениями между узлами.

Инфографика: soco-st / SVG Repo LLC / Skillbox Media
Современные топологии сети
В современных сетях чаще всего встречается звезда: компьютеры и другие устройства подключаются к центральному сетевому устройству — например, коммутатору или домашнему роутеру.

Инфографика: soco-st / Alex Martynov / SVG Repo LLC / Skillbox Media
Такой принцип можно повторять на нескольких уровнях. Например, компьютеры в офисе подключаются к коммутатору, несколько коммутаторов — к оборудованию более высокого уровня, а оно — к маршрутизатору, который связывает локальную сеть с интернетом. Получается иерархическая структура, состоящая из нескольких связанных «звёзд». Иногда её также называют древовидной топологией.
Другой вариант — mesh, или ячеистая топология. В такой сети устройства могут иметь несколько соединений друг с другом. Если один путь становится недоступен, данные можно передать по другому. Например, этот принцип используют некоторые Wi-Fi-mesh-системы: несколько точек доступа работают вместе и помогают обеспечить покрытие в разных частях дома или офиса.

Инфографика: soco-st / SVG Repo LLC / Skillbox Media
На отдельных участках сети встречаются и простые соединения «точка — точка», когда два устройства связаны напрямую. Например, так могут соединяться два маршрутизатора.
Поэтому реальная компьютерная сеть обычно не соответствует одной топологии целиком. Она сочетает разные схемы соединения в зависимости от задачи и масштаба.
Как данные передаются по сети
Когда одно устройство отправляет данные другому, информация в конечном счёте передаётся в виде физического сигнала. Каким именно он будет, зависит от среды передачи: это может быть электрический импульс, свет или радиоволна.
Проводные сети
В проводных сетях чаще всего используют медные кабели и оптоволокно.
Медный кабель передаёт данные с помощью электрических сигналов. Один из самых распространённых вариантов — витая пара, которую используют для подключения компьютеров, роутеров и другого сетевого оборудования по Ethernet.
Например, компьютер в офисе может быть соединён с роутером обычным Ethernet-кабелем. Когда компьютер отправляет данные, сетевой адаптер преобразует их в электрические сигналы, которые проходят по кабелю.
Максимальная стандартизованная скорость Ethernet для витой пары достигает 40 Гбит/с по стандарту 40GBASE-T.

Фото: Ru wiki / Wikimedia Commons
Оптоволокно передаёт информацию с помощью световых сигналов. Оно позволяет работать на больших расстояниях и с высокой скоростью, поэтому используется, например, в сетях операторов связи и подводных интернет-кабелях между континентами.
В современных стандартах Ethernet скорость передачи данных по оптоволокну достигает 800 Гбит/с.

Фото: Hustvedt / Wikimedia Commons
Беспроводные сети
В беспроводных сетях вместо кабеля используются радиоволны. Знакомый большинству пример — Wi-Fi. Устройство передаёт данные по радиоканалу между своим Wi-Fi-модулем и точкой доступа или роутером.
Современные сети Wi-Fi работают в диапазонах 2,4, 5 и 6 ГГц. Стандарт Wi-Fi 7 теоретически позволяет передавать данные со скоростью до 46 Гбит/с. На практике скорость обычно ниже и зависит от устройства, расстояния до точки доступа, помех и других условий.

Читайте также:
За отправку и приём сигналов в компьютерной сети отвечает сетевой адаптер. Например, это может быть Ethernet-контроллер в компьютере или Wi-Fi-модуль в ноутбуке. Он преобразует данные устройства в сигнал, который можно передать по сети, а полученный сигнал — обратно в данные.
Уровни организации передачи данных
Чтобы описать работу компьютерной сети, её разделяют на уровни. Каждый отвечает за свою часть задач. Например, в модели OSI включено семь уровней организации — от передачи физических сигналов до работы с сетевыми приложениями. В этом разделе рассмотрим два нижних уровня, которые обеспечивают передачу данных между соседними устройствами в одной сети.
Физический уровень связан со всем, о чём мы говорили выше: кабелями, разъёмами и радиоволнами. На этом уровне биты передаются в виде электрических, световых или радиосигналов. Но одного соединения недостаточно: устройствам ещё нужно определять, откуда пришли данные и кому они предназначены.
За это отвечает канальный уровень. Он обеспечивает передачу данных внутри одного сетевого сегмента — например, между ноутбуком и роутером в домашней сети.
На канальном уровне данные передаются в виде кадров, или фреймов. Фрейм содержит сами данные и служебную информацию, в том числе адреса отправителя и получателя. Для этого используются MAC-адреса — адреса сетевых интерфейсов устройств, например Wi-Fi-адаптера ноутбука.
Когда ноутбук отправляет данные роутеру по Wi-Fi, его сетевой адаптер формирует фрейм и указывает в нём нужные MAC-адреса. Затем фрейм передаётся по радиоканалу. Так два уровня работают вместе: канальный определяет структуру фрейма и его адресацию, а физический обеспечивает передачу сигналов.

Изображение: Skillbox Media
IP-адреса и логические сети
На канальном уровне устройства передают кадры внутри одного сетевого сегмента и используют для этого MAC-адреса. Но реальные сети обычно состоят из множества сегментов. Например, домашняя сеть соединяется с сетью провайдера, а та — с другими сетями интернета.
Чтобы передавать данные между такими сетями, нужен следующий уровень модели OSI — сетевой. На нём используются IP-адреса, по которым можно определить, в какой сети находится получатель и куда нужно отправить данные.
Данные на сетевом уровне передаются в виде пакетов. В каждом пакете указываются IP-адреса отправителя и получателя.
IP-адрес состоит из двух частей: одна обозначает сеть, другая — устройство внутри неё. Границу между ними задаёт маска подсети.
Например, в записи 192.168.1.10/24 число после косой черты показывает, сколько бит адреса отведено под сеть. Здесь их 24, что соответствует маске 255.255.255.0. В этом примере первые три числа — 192.168.1 — обозначают сеть, а последнее, 10, — устройство в ней.
Используя свой IP-адрес и маску, компьютер определяет, находится ли получатель в той же подсети. Если да, данные передаются ему напрямую по локальной сети. Если получатель в другой сети, пакет отправляется маршрутизатору, который передаёт его дальше.

Читайте также:
Форматы IP-адресов: IPv4 и IPv6
Используются две основные версии протокола IP — IPv4 и IPv6.
IPv4-адрес состоит из четырёх чисел от 0 до 255, разделённых точками. Например — 192.168.1.10.
Такой адрес занимает 32 бита, поэтому всего существует около 4,3 миллиарда возможных IPv4-адресов.
Часть из них зарезервирована для специальных задач. Например, существуют частные IP-адреса, которые используются внутри локальных сетей и напрямую через интернет не маршрутизируются. Поэтому один и тот же адрес, например 192.168.1.10, может одновременно использоваться в тысячах домашних и корпоративных сетей.
Публичные IP-адреса используются для обмена данными через интернет и должны быть глобально уникальными. При этом публичный адрес сам по себе не означает, что к устройству можно подключиться извне: доступ могут ограничивать настройки маршрутизатора, файрвол и другие механизмы защиты.
Так как количество IPv4-адресов ограничено, постепенно их стало не хватать. В 2011 году IANA распределила последние крупные свободные блоки IPv4 между региональными интернет-операторами.
Одним из решений проблемы стал IPv6. В нём длина адреса увеличена с 32 до 128 бит, поэтому возможных адресов гораздо больше — примерно 3,4 × 1038.
IPv6-адрес состоит из восьми групп шестнадцатеричных чисел, разделённых двоеточиями. Например — 2001:0db8:0000:0000:0000:0000:0000:0001.
Такую запись можно сокращать. Ведущие нули внутри группы разрешается опускать, а одну последовательность нулевых групп — заменить двойным двоеточием ::.
Поэтому тот же адрес можно записать так — 2001:db8::1.
Как устройство получает IP-адрес
IP-адрес можно задать вручную, но чаще устройство получает сетевые настройки автоматически.
В IPv4 для этого обычно используется протокол DHCP. Когда компьютер или смартфон подключается к сети, он обращается к DHCP-серверу и получает параметры подключения. Среди них обычно есть:
- IP-адрес,
- маска подсети,
- адрес шлюза,
- адреса DNS-серверов.
Например, домашний роутер может выдать ноутбуку адрес 192.168.1.15, сообщить, что сеть имеет маску /24, а адрес самого роутера — 192.168.1.1.
После этого устройство уже знает свой IP-адрес и понимает, куда отправлять пакеты. Но для передачи данных внутри локальной сети одного IP-адреса недостаточно: на канальном уровне всё равно используются MAC-адреса.
Поэтому компьютеру нужно сопоставить IP-адрес получателя с его MAC-адресом. В IPv4 для этого используется протокол ARP, а в IPv6 похожую задачу выполняет Neighbor Discovery.
В детали их работы здесь углубляться не будем. Важно запомнить общую схему: IP‑адрес помогает определить, в какую сеть и какому устройству нужно доставить пакет, а MAC-адрес используется для передачи данных на конкретном участке локальной сети.
Как работает маршрутизация между сетями
Если получатель находится в другой сети, компьютер не может передать пакет ему напрямую. Вместо этого он отправляет пакет маршрутизатору — устройству, которое соединяет разные IP-сети и передаёт данные между ними.
Например, ноутбук в домашней сети может иметь адрес 192.168.1.10, а сервер сайта — находиться в интернете. Ноутбук понимает по IP-адресу и маске подсети, что сервер находится в другой сети, поэтому отправляет пакет домашнему роутеру.
Чтобы определить, куда передать пакет, устройство использует таблицу маршрутизации. В ней указано, для каких сетей известен маршрут и через какой сетевой интерфейс или следующий маршрутизатор нужно отправлять данные.
Если подходящего конкретного маршрута нет, используется маршрут по умолчанию. Обычно он ведёт на шлюз по умолчанию — например, домашний роутер.

Изображение: Skillbox Media
Когда пакет приходит на маршрутизатор, тот смотрит на IP-адрес получателя, проверяет собственную таблицу маршрутизации и выбирает следующий путь. Затем пакет попадает на следующий маршрутизатор, где процесс повторяется.
Например, путь до сайта может выглядеть так:
компьютер → домашний роутер → сеть провайдера → другие сети → сервер сайта
При этом каждый маршрутизатор определяет только следующий участок пути. Ему не нужно заранее знать всю последовательность маршрутизаторов до конечного устройства.
Что происходит, когда мы открываем сайт
Теперь соберём всю теорию вместе и посмотрим, что происходит после того, как пользователь вводит адрес сайта в браузере и нажимает Enter.
Сначала браузеру нужно узнать IP-адрес сервера. Пользователи работают с доменными именами вроде example.com, но для передачи данных по сети нужен IP-адрес. Поэтому браузер обращается к системе DNS, которая сопоставляет доменное имя с IP-адресом.
Если нужный адрес уже хранится в кэше браузера или операционной системы, отдельный DNS-запрос может не понадобиться.

Читайте также:
Получив IP-адрес, компьютер определяет, куда отправить данные. Он проверяет таблицу маршрутизации и, если сервер находится за пределами локальной сети, передаёт пакет шлюзу по умолчанию.
При этом данные последовательно проходят через несколько уровней сети:
- браузер формирует данные приложения;
- транспортный уровень добавляет информацию, необходимую для обмена между приложениями;
- сетевой уровень помещает данные в IP-пакет;
- канальный уровень помещает пакет во фрейм;
- сетевой адаптер преобразует фрейм в электрический, световой или радиосигнал.
Дальше фрейм проходит через один или несколько маршрутизаторов. Каждый из них смотрит на IP-адрес назначения и определяет, куда передать пакет дальше. Так данные постепенно достигают сети, в которой находится нужный сервер.
Для передачи данных браузер обычно использует TCP. Этот протокол обеспечивает надёжную доставку: контролирует порядок данных, обнаруживает потери и при необходимости запрашивает повторную передачу.
Перед обменом данными браузер устанавливает TCP-соединение с сервером. Если сайт работает по HTTPS, после этого дополнительно устанавливается защищённое TLS-соединение. Оно позволяет браузеру проверить сертификат сайта и зашифровать дальнейший обмен данными.
Затем браузер отправляет HTTP-запрос. Например, он может запросить главную страницу сайта.
Сервер обрабатывает запрос и возвращает HTTP-ответ — например, HTML-код страницы. После этого браузер обычно делает дополнительные запросы ресурсов, которые указаны в HTML: CSS-файлов, JavaScript, изображений, шрифтов и других данных.
Получив необходимые ресурсы, браузер обрабатывает их и отображает готовую страницу на экране.
Если сильно упростить весь процесс, получается такая цепочка:
доменное имя → DNS → IP-адрес → маршрутизация → TCP → TLS → HTTP → ответ сервера → отображение страницы
Что нужно запомнить
Подведём итоги и коротко повторим основные моменты:
- Компьютерная сеть — это группа устройств, которые соединены между собой и могут обмениваться данными и использовать общие ресурсы.
- Данные передаются в компьютерной сети в виде электрических, световых или радиосигналов — в зависимости от того, используется медный кабель, оптоволокно или беспроводное соединение.
- На канальном уровне данные передаются в виде фреймов. Для доставки внутри локального сегмента используются MAC-адреса.
- На сетевом уровне данные передаются в виде IP-пакетов. IP-адрес помогает определить сеть и устройство, а маска подсети — понять, находится ли получатель в той же сети.
- Если получатель находится в другой сети, пакет передаётся через маршрутизаторы. Они используют таблицы маршрутизации и последовательно направляют данные к нужной сети.
- Для обмена данными приложения используют транспортные и прикладные протоколы. Например, браузер может установить TCP‑соединение, защитить его с помощью TLS и отправить HTTP-запрос.
- Когда мы открываем сайт, в одной цепочке работают сразу несколько технологий: DNS определяет IP-адрес сервера, маршрутизаторы доставляют пакеты, а браузер получает ресурсы сайта и отображает страницу.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!

