Как работают протоколы компьютерных сетей

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

Назначение сетевых протоколов

Без протоколов устройства не могли бы понимать электронные сигналы, которые они посылают друг другу по сетевым соединениям. Сетевые протоколы выполняют следующие основные функции:

  • Адрес данных для правильного получателя (ей)
  • Физически передавать данные из источника в пункт назначения с защитой при необходимости
  • Получать сообщения и отправлять ответы соответствующим образом

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

Распространенные типы сетевых протоколов

Дорога, ведущая к компьютерной сети с рукой, держащей ключ
Хонг Ли / Getty Images

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

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

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

3. Слой. Сетевые протоколы обычно работают вместе в группах (так называемые стеки, потому что диаграммы часто изображают протоколы в виде блоков, расположенных друг над другом). Некоторые протоколы работают на нижних уровнях, тесно связанных с тем, как физически работают различные типы беспроводных или сетевых кабелей. Другие работают на более высоких уровнях, связанных с работой сетевых приложений, а некоторые работают на промежуточных уровнях между ними.

Семейство интернет-протоколов

Наиболее распространенные сетевые протоколы общего пользования принадлежат к семейству интернет-протоколов. IP сам по себе является базовым протоколом, который позволяет домашним и другим локальным сетям через Интернет связываться друг с другом.

IP хорошо работает для перемещения отдельных сообщений из одной сети в другую, но не поддерживает концепцию разговора (соединение, по которому поток сообщений может перемещаться в одном или обоих направлениях). Протокол управления передачей (TCP) расширяет IP с помощью этой возможности более высокого уровня, и поскольку соединения точка-точка очень важны в Интернете, два протокола почти всегда соединяются вместе и известны как TCP / IP.

И TCP, и IP работают на средних уровнях стека сетевых протоколов. Популярные приложения в Интернете иногда реализуют свои собственные протоколы поверх TCP / IP. Протокол передачи гипертекста используется веб-браузерами и серверами по всему миру. TCP / IP, в свою очередь, работает поверх сетевых технологий более низкого уровня, таких как Ethernet. Другие популярные сетевые протоколы в семействе IP включают в себя ARP, ICMP и FTP.

Как сетевые протоколы используют пакеты

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

Каждый сетевой протокол определяет правила организации пакетов данных. Поскольку такие протоколы, как Интернет-протокол, часто работают вместе по уровням, некоторые данные, встроенные в пакет, отформатированный для одного протокола, могут быть в формате некоторого другого связанного протокола (метод, называемый инкапсуляцией).

Протоколы обычно делят каждый пакет на три части — заголовок, полезная нагрузка и нижний колонтитул. (Некоторые протоколы, такие как IP, не используют нижние колонтитулы.) Верхние и нижние колонтитулы пакета содержат контекстную информацию, необходимую для поддержки сети, включая адреса отправляющего и принимающего устройств, в то время как полезные данные содержат фактические данные, которые должны быть переданы. Заголовки или нижние колонтитулы также часто содержат некоторые специальные данные, помогающие повысить надежность и / или производительность сетевых подключений, такие как счетчики, которые отслеживают порядок отправки сообщений, и контрольные суммы, которые помогают сетевым приложениям обнаруживать повреждение или подделку данных.

Как сетевые устройства используют протоколы

Графика компьютерных сетевых терминов TCP / IP
Funtap / Getty Images

Операционные системы сетевых устройств включают встроенную поддержку некоторых сетевых протоколов более низкого уровня. Все современные операционные системы настольных компьютеров поддерживают, например, Ethernet и TCP / IP, в то время как многие смартфоны поддерживают Bluetooth и протоколы семейства Wi-Fi. Эти протоколы в конечном итоге подключаются к физическим сетевым интерфейсам устройства, таким как его порты Ethernet и радиомодули Wi-Fi или Bluetooth.

Сетевые приложения, в свою очередь, поддерживают протоколы более высокого уровня, которые взаимодействуют с операционной системой. Например, веб-браузер способен преобразовывать адреса, такие как http://lifewire.com/, в пакеты HTTP, содержащие необходимые данные, которые веб-сервер может получить, и, в свою очередь, отправлять обратно правильную страницу. Принимающее устройство отвечает за повторную сборку отдельных пакетов в исходное сообщение, удаляя верхние и нижние колонтитулы и объединяя пакеты в правильной последовательности.

Ссылка на основную публикацию