Основные протоколы Сети. Для чего они используются?
Наверное Вы не раз слышали термины ICMP, TCP, UDP и им подобные. В данной статье описаны основные сетевые протоколы. Что они означают, где используются и какая разница между ними. Я попыталась систематизировать данную информацию, чтобы более тщательно разобраться с ней.
Протокол сети — это набор правил, который позволяет обмен данными между устройствами, это основа для обеспечения доставки пакета, определенные действия для реализации конкретного процесса.
В основе функционирования Интернет положена работа нескольких протоколов, которые располагаются один поверх другого. Какие же основные из них и что означают эти аббревиатуры? Рассмотрим основные виды протоколов ( сетевые протоколы список ).
MAC (Media Access Control)
Протокол MAC — это протокол низкого уровня, уникальный идентификатор устройства. Его применяют в качестве идентификации устройств в локальной сети. Каждое устройство, которое подключено к Интернету имеет свой уникальный MAC адрес. Этот адрес задан производителем. Это протокол уровня соединения, с которым довольно часто приходится сталкиваться каждому пользователю. Это физический адрес оборудования или интерфейса некоторых сетей.
Данный адрес выдается бесплатно на каждое устройство. Основная часть сетевых протоколов используют одно из 3-х пространств MAC, под управлением IEEE: MAC-48, EUI-48, EUI-64. Пример написания МАС адреса: 00-50-B6-5B-CA-6A. Первые 6 знаков обозначают производителя, а вторая часть адреса — это серийный номер интерфейса.
Зачем нужен МАС адрес? Данный протокол используется для идентификации узла сети и соответственно доставки информации именно в этот узел.
IP (Internet Protocol)
IP (Internet Protocol) — по сравнению с MAC, располагается на уровень выше. IP адреса уникальны для каждого устройства и дают возможность компьютерам находить и определять друг друга в сети. IP принадлежит сетевому уровню модели TCP/IP, стандартный протокол сети интернет .
Сети связываются в сложные структуры, а с помощью данного протокола машины определяют возможные пути к целевому устройству (эти пути могут меняться во время работы). Протокол реализуется с помощью известных видов IPv4 и IPv6, о которых я уже писала в одном из предыдущих материалов:
Приведем сравнительную таблицу для ipv6 и ipv4, чтобы увидеть их основные отличия:
ipv4
ipv6
Размер пакета: 576 байт
Размер пакета: 1280 байт
Включена аутентификация и шифрование
Использование в сетях: 99%
Использование в сетях: 1%
Доступен у всех хостинг-провайдеров
Доступен не у всех хостинг-провайдеров
Четыре десятичных числа разделяемых точкой
Шестизначное число с разделением двоеточием
IP адрес может быть как динамическим (временным), так и статическим, который прикрепляется на компьютер при подключении к интернету. Например, на VPS вы получите статический IP адрес, а при использовании некоторых VPN — динамический IP адрес.
Понятие IP адреса (выделенного адреса) очень часто используется в сфере хостинга и аренды серверов, ведь у каждого сервера есть свой уникальный выделенный IP адрес или даже своя подсеть адресов. П ротоколы передачи данных для чайников, в то числе IP адреса, можно использовать на хостинг услугах для сайтов. На виртуальном хостинге также можно заказать выделенный адрес для своего сайта, что предоставляется много преимуществ для работы ресурса в сети и его дальнейшего продвижения.
ICMP (Internet control message protocol)
Этот протокол соединения предназначен для того, чтобы устройства могли обмениваться сообщениями. Это к примеру могут быть сообщения об ошибках или информационные оповещения. Данные этот протокол не передает информацию. Этот протокол находится уровнем выше нежели протокол IP.
TCP (Transmission control protocol)
Один из основных протоколов сети internet , который находится на одном уровне с предыдущим протоколом ICMP. Он управляет передачей данных.
Бывают ситуации, когда пакеты могут приходить не в том порядке или вообще где-то теряться. Но протокол TCP обеспечивает правильный порядок доставки и дает возможность исправить ошибки передачи пакетов. Информация подается в правильном порядке для приложения. Соединение осуществляется с помощью специального алгоритма, который предусматривает отправку запроса и подтверждение открытия соединения двумя компьютерами. Минус работы данного протокола — низкая скорость, так как для надежной передачи данных необходимо больше времени.
Множество приложений используют TCP, сюда относят SSH, WWW, FTP и другие. Как правило, TCP протокол встроен в ядро операционной системы.
Роль TCP протокола ( web протокола ): обеспечение надежной доставки сегментов и их упорядочивание, контроль скорости передачи данных, работа с сессиями.
UDP (user datagram protocol)
UDP — известный протокол, чем-то похожий с TCP, который также функционирует на транспортном уровне. Основное отличие — ненадежная передача данных: данные не проходят проверку при получении. В некоторых случаях этого вполне достаточно.
Протокол udp принцип работы: з а счет отправки меньшего количества пакетов, UDP работает шустрее чем TCP. Нет необходимости устанавливать соединение, и протокол используется для отправки пакетов сразу на несколько устройств или IP телефонии. Это более упрощенный протокол за счет того, что некоторые фрагменты при передаче могут быть утеряны.
HTTP (hypertext transfer protocol)
Протокол приложения HTTP (hypertext transfer protocol) лежит в основе работы всех сайтов в Сети. HTTP дает возможность запрашивать необходимые ресурсы у удаленной системы, например, веб страницы и файлы. HTTPS — это не отдельный протокол сети, а тот же HTTP, но со специальной настройкой шифрования.
HTTP — порт 80, HTTPS — порт 443, последний используется для конфиденциальной передачи данных в Сети.
HTTPS обеспечивается наличием сертификата защиты SSL, который подключается на стороне хостинг-провайдера.
SSL есть бесплатные, например, от Lets Encrypt и платные от разных поставщиков услуг, например, Sectigo.
FTP (file transfer protocol)
FTP (file transfer protocol) — используется для передачи данных. Функционирует на уровне приложений, чем обеспечивается передача файла от одного компьютера к другому. FTP по праву считается небезопасным, его не стоит применять для передачи личных данных. Поэтому если есть такая возможность, то лучше вместо FTP использовать SSH протокол как основной тип протоколов передачи данных.
Для соединения по FTP используются специальные программы, например, Far Manager, Total Commander, FileZilla. Несмотря на свою небезопасность ФТП протокол все равно является наиболее популярным среди вебмастеров. На услугах виртуального хостинга ФТП предоставляется по умолчанию для соединения с серверов и передачи данных.
FTP — один из самых старых прикладных протоколов, который используется для доступа к удаленным хостам. Именно благодаря ФТП происходит организация обмена файлами.
DNS (domain name system)
DNS (domain name system) — используется для преобразования понятных и легко читаемых адресов в сложные ip адреса, которые трудно запомнить и наоборот. С помощью DNS мы получаем доступ к интернет-ресурсу по его доменному имени.
Понятие DNS часто можно встретить при работе с доменом. Например, при смене хостинга или регистратора домена происходит процесс обновления DNS зоны, который может длиться от 2 до 72 часов.
DNS сервер имеет несколько типов записей:
✓CNAME — часто используется для привязки субдомена, указывает альтернативный вариант основному домену,
✓NS — адрес DNS-сервера (например, dns1.hyperhost.ua),
✓А запись — IP-адрес сайта,
✓MX запись — адрес почтового сервера,
✓TXT запись — текстовая информация о домене, часто добавляется для прохождения различного рода верификаций домена,
✓SPF — список серверов, которые могут отправлять почту от конкретного домена;
✓SOA — запись с информацией о сервере.
SSH (secure shell)
SSH (secure shell) также относится к протоколу уровня приложений. Он разработан для обеспечения удаленного управления системой по защищенному каналу. Этот протокол используется для работы многих дополнительных технологий. SSH — прежде всего безопасный протокол передачи данных, поэтому если есть возможность использовать именно его, то не стоит пользоваться другими протоколами такими как ФТП.
В основном ССШ используют для удаленной работы с серверами, а также для надежного переноса большого количества данных. Например, при смене хостинг-провайдера и переносе сайта от одного хостера к другому, для быстрой организации процесса вам понадобится именно SSH доступ к старому хостингу.
SSH работает с помощью специальных команд, которые запускаются с командной строки. Это команды могут немного отличатся в зависимости от использованной ОС, а также SSH клиента.
Более детально все особенности работы с протоколом SSH мы описали в этой статье на блоге:
POP3 (Post Office Protocol)
POP3 (Post Office Protocol) — стандартный протокол, который используется для приема сообщений электронной почты. Протокол почтового соединения предназначен для обработки запросов на получение почты от клиентских почтовых программ.
POP3 предназначен для получения почты из любой точки доступа в интернете. POP3 — самый популярный тип учетной записи электронной почты. POP3 позволяет скачивать письма на устройства, а затем удалять их с сервера.
Минусы использования POP3: письма на сервере не хранятся, в том числе отправленные. Посмотреть отправленные можно только с устройства, с которого пользователь отправил письмо. Все настройки по хранению писем настраиваются отдельно в почтовом клиенте пользователя.
SMTP (Simple Mail Transfer Protocol)
SMTP (Simple Mail Transfer Protocol) — протокол для передачи почты. Основная задача сервера SMTP: возвращение или подтверждение о приеме, или оповещение об ошибке, или запрос на дополнительные данные. С помощью SMTP протокола проверяется корректность системы, в которой отправляется исходящее сообщение. За данным протоколом закреплено два порта: 25 и 587. Второй вариант протокола с защищенным SSL, хотя 25 на практике используется намного чаще.
Использование личного SMTP сервера очень просто применить, в сети очень много доступных инструкций и специалистов по работе с данным типом протокола.
Личный SMTP сервер в основном используют для организации массовых рассылок, личных переписок или для транзакционных писем.
Все протоколы обеспечивают налаженную работу Интернет, которым мы пользуемся каждый день. Понимание работы сетей на базовом уровне очень важно для каждого администратора сервера или вебмастера. Это используется для правильной настройки ваших сервисов в интернет, а также легкого обнаружения возникших проблем и решения неполадок. А какие сетевые протоколы вы знаете? Добавьте их в комментариях под статьей.
4. Протоколы передачи данных
В процессе передачи данных по данному протоколу файлы разбиваются на части — пакеты, чтобы не нагружать сеть.
Большой файл разбивается на мелкие части. Каждая часть нумеруется, происходит транспортировка в отдельных IP-пакетах до компьютера-получателя, на компьютере-получателе исходный файл собирается из отдельных частей в правильной последовательности.
IP (англ. Internet Protocol) — протокол маршрутизации.
Упаковывает сообщение в IP-пакет, записывает адреса отправителя и получателя. IP-пакет перемещается от сервера к серверу пока не достигнет пункта назначения.
HTTP (англ. HyperText Transfer Protocol) — прикладной протокол передачи гипертекста для службы WWW.
FTP (англ. File Transfer Protocol) — протокол, предназначенный для передачи файлов в компьютерных сетях.
Сетевые протоколы — что это
Интернет очень большой, но на базовом уровне представляет собой связь между множество разных компьютерных устройств. Эта связь обеспечивается через сетевые протоколы — наборы правил, которые регулируют обмен информацией, его порядок и особенности. Протоколов создано много, и в этой статье мы рассмотрим наиболее известные из них, относящиеся к межсетевому, транспортному и прикладному уровню, а также затронем ещё несколько смежных тем.
Модели, на которых работает интернет
Долгое время моделью, отвечающей за установку открытой связи между двумя хостами, являлась Open Systems Interface (OSI), установившая семь уровней протоколов (физический, транспортный, сетевой и т. д.). Она не считалась сетевой архитектурой, так как просто задавала входные и выходные данные для каждого уровня. Поскольку современные протоколы научились работать сразу на нескольких уровнях модели OSI, её на смену пришла новая четырёхуровневая модель: TCP/IP.
Новая модель, как видно из названия, объединяет два основных протокола: Transmission Control Protocol и Internet Protocol. Первый отвечает за надёжную и передачу данных и её целостность, а второй — за маршрутизацию. Все новые сетевые протоколы разрабатываются на базе этой модели. Например, заходя на сайт Cloud4Y, вы используете протоколы IP, TCP и HTTPS.
Для большей наглядности сравним обе модели.
Популярные сетевые протоколы
UDP
User Datagram Protocol, о связке которого с протоколом TCP мы рассказывали, представляет собой протокол передачи данных, не требующий предварительной установки соединения между хостами. Он быстрый, но часто теряет пакеты данных во время доставки. А
TCP
Transmission Control Protocol — протокол сквозной связи, созданный в 1974 году и до сих пор востребованный в мире. Надёжный, но медленный. Перед тем, как начинать передачу данных, достигается рукопожатие для установления соединения, и лишь затем начинается передача пакетов. При необходимости пакеты дублируются.
FTP
File Transfer Protocol — протокол прикладного уровня для передачи файлов, появившийся в 1971 году. Использует два канала для передачи данных. Первый , управляющий процессом передачи, называют командным. Второй, передающий информацию — транспортным. FTP — надёжный протокол. Сервер в данном случае называют удалённым хостом, а клиент — локальным. Работает по клиент-серверной модели. После аутентификации пользователь получает доступ к файловой системе. В некоторых случаях возможен анонимный доступ.
RTP
Real-time Transfer Protocol — транспортный протокол, работающий в реальном времени. Нужен для потоковой передачи аудио- и видеоданных. Умеет передавать данные нескольким получателям одновременно. Чаще всего применяется для передачи голоса в IP-телефонии.
DNS
Под аббревиатурой DNS прячется не только система доменных имён Domain Name System. Данное название носит и протокол, благодаря которому эта система и функционирует. Протокол помогает серверам DNS обмениваться базами данных, а клиентским устройствам — запрашивать у
ICMP
Internet Control Message Protocol — важный протокол, который нужен для слежения за ошибками во взаимодействии устройств. Он диагностирует проблемы и определяет, получены ли данные отправителем. Если нет, протокол ICMP генерирует ошибку для отправки на отправляющее устройство. Данный протокол иногда используется злоумышленниками для сетевых атак путём генерации большого объёма ICMP-сообщений.
HTTP
HyperText Transfer Protocol — протокол, который создавался для передачи HTML-файлов, но впоследствии пригодился для всех файлов в сети. Этот протокол клиент-серверного типа не сохраняет промежуточное состояние. Для обмена информацией обычно используется TCP/IP. У HTTP есть защищённая версия: HTTPS. Она поддерживает шифрование, а данные передаются поверх криптопротокола TLS.
NTP
Network Time Protocol — протокол для синхронизации локальных часов устройства с точным временем в интернете. NTP работает на базе алгоритма Марзулло поверх UDP. За счёт этого удаётся добиться более высокой точности времени и скорости передачи данных.
SSH
Secure Shell — защищённый протокол прикладного уровня, необходимый для удалённого управления ОС через протокол TCP. В SSH весь трафик шифруется с использованием заданного вами алгоритма шифрования. Протокол позволяет обрабатывать другие сетевые протоколы передачи, включая аудио- или видеопоток. Его удобно использовать для удалённого подключения клиента к серверу и работы оттуда.
Протоколы передачи данных: что это, какие бывают и в чём различия?
Задумывались ли вы, как происходит обмен данными в сети? Для этого нужны протоколы передачи. Об основных типах рассказываем в этой статье.
Интернет очень большой и комплексный. Но на базовом уровне это всего лишь связь между различными компьютерами (не только персональными). Эта связь представляет из себя сетевые протоколы передачи данных — набор правил, который определяет порядок и особенности передачи информации для конкретных случаев.
Протоколов большое множество. Про основные из них рассказано далее.
IP — Internet Protocol
Протокол передачи, который первым объединил отдельные компьютеры в единую сеть. Самый примитивный в этом списке. Он является ненадёжным, т. е. не подтверждает доставку пакетов получателю и не контролирует целостность данных. По протоколу IP передача данных осуществляется без установки соединения.
Основная задача этого протокола — маршрутизация датаграмм, т. е. определение пути следования данных по узлам сети.
Популярная версия на текущий момент — IPv4 с 32-битными адресами. Это значит, что в интернете могут хранится 4.29 млрд адресов IPv4. Число большое, но не бесконечное. Поэтому существует версия IPv6, которая поможет решить проблему переполнения адресов, ведь уникальных IPv6 будет 2 ^ 128 адресов (число с 38 знаками).
TCP/IP — Transmission Control Protocol/Internet Protocol
Это стек протоколов TCP и IP. Первый обеспечивает и контролирует надёжную передачу данных и следит за её целостностью. Второй же отвечает за маршрутизацию для отправки данных. Протокол TCP часто используется более комплексными протоколами.
UDP — User Datagram Protocol
Протокол, обеспечивающий передачу данных без предварительного создания соединения между ними. Этот протокол является ненадёжным. В нём пакеты могут не только не дойти, но и прийти не по порядку или вовсе продублироваться.
Основное преимущество UDP протокола заключается в скорости доставки данных. Именно поэтому чувствительные к сетевым задержкам приложения часто используют этот тип передачи данных.
FTP — File Transfer Protocol
Протокол передачи файлов. Его использовали ещё в 1971 году — задолго до появления протокола IP. На текущий момент этим протоколом пользуются при удалённом доступе к хостингам. FTP является надёжным протоколом, поэтому гарантирует передачу данных.
Этот протокол работает по принципу клиент-серверной архитектуры. Пользователь проходит аутентификацию (хотя в отдельных случаях может подключаться анонимно) и получает доступ к файловой системе сервера.
DNS
Это не только система доменных имён (Domain Name System), но и протокол, без которого эта система не смогла бы работать. Он позволяет клиентским компьютерам запрашивать у DNS-сервера IP-адрес какого-либо сайта, а также помогает обмениваться базами данных между серверами DNS. В работе этого протокола также используются TCP и UDP.
Что такое DNS? Введение в систему доменных имён
HTTP — HyperText Transfer Protocol
Изначально протокол передачи HTML-документов. Сейчас же он используется для передачи произвольных данных в интернете. Он является протоколом клиент-серверного взаимодействия без сохранения промежуточного состояния. В роли клиента чаще всего выступает веб-браузер, хотя может быть и, например, поисковый робот. Для обмена информацией протокол HTTP в большинстве случаев использует TCP/IP.
HTTP имеет расширение HTTPS, которое поддерживает шифрование. Данные в нём передаются поверх криптографического протокола TLS.
Предупреждён – значит вооружён: от чего не спасает HTTPS
NTP — Network Time Protocol
Не все протоколы передачи нужны для обмена классического вида информацией. NTP — протокол для синхронизации локальных часов устройства со временем в сети. Он использует алгоритм Марзулло. Благодаря нему протокол выбирает более точный источник времени. NTP работает поверх UDP — поэтому ему удаётся достигать большой скорости передачи данных. Протокол достаточно устойчив к изменениям задержек в сети.
Последняя версия NTPv4 способна достигать точности 10мс в интернете и до 0,2мс в локальных сетях.
SSH — Secure SHell
Протокол для удалённого управления операционной системой с использованием TCP. В SSH шифруется весь трафик, причём с возможностью выбора алгоритма шифрования. В основном это нужно для передачи паролей и другой важной информации.
Также SSH позволяет обрабатывать любые другие протоколы передачи. Это значит, что кроме удалённого управления компьютером, через протокол можно пропускать любые файлы или даже аудио/видео поток.
SSH часто применяется при работе с хостингами, когда клиент может удалённо подключиться к серверу и работать уже оттуда.