Skip to main content

Протоколы передачи данных

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

IP — Internet Protocol#

Первым объединил отдельные ПК в единую сеть. Можно сказать, что этот протокол является наиболее простым. А еще он ненадежен, ведь он не подтверждает доставку пакетов получателю, как и не контролирует целостность данных. По IP-протоколу передача данных происходит без установки соединения.

Главная задача IP — маршрутизация датаграмм, то есть речь идет об определении пути следования данных по узлам сети. До сего дня наиболее популярной версией являлся IPv4 с 32-битными адресами. Но, как известно, 4.29 млрд IPv4-адресов — это много, но уже давно недостаточно. Поэтому существует IPv6, который призван решить проблему переполнения адресов.

TCP/IP — Transmission Control Protocol/Internet Protocol#

Это уже стек протоколов TCP и IP. TCP обеспечивает и контролирует передачу данных и следит за надежностью и целостностью. IP отвечает за маршрутизацию. Протокол TCP нередко используется другими, более комплексными протоколами.

UDP — User Datagram Protocol#

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

Но есть и преимущество: скорость доставки данных. Именно поэтому в приложениях, особо чувствительных к сетевым задержкам, нередко применяют UDP.

FTP — File Transfer Protocol#

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

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

DNS#

DNS представляет собой не только систему доменных имён (Domain Name System). Это еще и протокол, без которого данная система работать бы не смогла. Протокол дает возможность клиентским компьютерам запрашивать у DNS-сервера IP-адрес какого-нибудь сайта, плюс он помогает осуществлять обмен БД между серверами DNS. В работе системы также используются протоколы TCP и UDP.

HTTP — HyperText Transfer Protocol#

Поначалу это был протокол передачи HTML-документов. Сейчас он задействуется в целях передачи произвольных данных в сети. Считается протоколом клиент-серверного взаимодействия без сохранения промежуточного состояния. В качестве клиента обычно выступает web-браузер, хотя это может быть и поисковый робот. При обмене информацией протокол HTTP чаще всего использует TCP/IP.

Протокол HTTP имеет расширение HTTPS, поддерживающее шифрование. В нем данные уже передаются поверх криптографического протокола TLS.

NTP — Network Time Protocol#

На самом деле, не все протоколы передачи используются для обмена классического вида информацией. Протокол NTP служит для синхронизации локальных часов устройства со временем в глобальной/локальной сети. NTP задействует алгоритм Марзулло, в результате чего выбирается наиболее точный источник времени. А еще NTP работает поверх UDP, что позволяет ему достигать максимальной скорости передачи данных. В целом протокол довольно устойчив к изменениям задержек в глобальной/локальной сети.

SSH — Secure SHell#

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

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

SSH обычно применяют при работе с хостингами (клиент получает возможность удаленно подключиться к серверу и работать с ним).