Немного теории. Протоколы передачи данных — это наборы соглашений (считай, стандарты), которые регулируют обмен данными между различными программами. Смысл протоколов передачи данных в том, чтобы эту самую передачу упорядочить и сделать независимой от аппаратной платформы (т.е. от какой-то одной конкретной «железяки»).
Протокол не следует путать с интерфейсом подключения и вообще с физическим уровнем (хотя такой термин и встретится нам в рассматриваемой далее модели). Протокол это уровень логический.
Сетевые протоколы
Сетевые протоколы регулируют обмен связи между двумя соединенными в сеть устройствами. Вообще, что мы в данном случае подразумеваем под сетью? Соединение компьютера и монитора это сеть? Нет, поскольку в данном случае монитор — это устройства вывода. Происходит вывод информации на экран, но не обмен ею.
Соответственно, под сетью мы подразумеваем связь двух и более устройств, способных хранить и обрабатывать информацию.
Чаще всего сетевые протоколы классифицируют по модели OSI (Open Systems Interconnection Basic Reference Model). Модель состоит из семи уровней и упрощает понимание функционирования сети. Уровни располагаются вертикально друг над другом. Уровни взаимодействуют друг с другом по вертикали через интерфейсы, и могут взаимодействовать с параллельным уровнем другой системы по горизонтали с помощью протоколов. Каждый уровень может взаимодействовать только со своими соседями и с себе подобным.
BIM 119 Власевский А.П. Организация работы и обмен данными между участниками проекта
Уровень | Что передаётся |
Прикладной | Данные |
Представления | Данные |
Сеансовый | Данные |
Транспортный | Блоки |
Сетевой | Пакеты |
Канальный | Кадры |
Физический | Биты |
Нетрудно догадаться, что прикладной уровень является самым верхним (седьмым), а физический лежит в основе основ (первый уровень).
Пойдем снизу вверх.
1. Физический уровень — на этом уровне работают хабы и ретрасляторы сигнала. Здесь осуществляется передача данных по проводам или беспроводным путём. Происходит кодировка сигнала. Осуществляется стандартизация сетевого интерфейса (пример, разъем RJ-45).
2. Канальный уровень — уровень коммутаторов, мостов и драйверов сетевых карт. Данные упаковываются во фреймы, проверяются ошибки и данные отправляются на сетевой уровень.
Протоколы: Ethernet, FDDI, PPP, PPTP, L2TP, xDSL и др.
1С Конвертация данных: пошаговая инструкция по настройке первого обмена
3. Сетевой уровень — здесь определяется путь передачи данных, определяется кратчайший маршрут, происходит контроль неисправностей сетей. Это уровень маршрутизаторов.
Протоколы: IPv4, IPv6, ARP, ICMP.
4. Транспортный уровень отвечает за механизм передачи. Блоки данных разбиваются на фрагменты, избегаются потери и дублирование.
Протоколы: TCP, UDP, RDP, SPX, SCTP и др.
5. Сеансовый уровень отвечает за поддержание сеанс связи. Создание и завершение сеанса, права передачи данных и поддержание сеанса в момент неактивности приложений — всё происходит на этом уровне.
Протоколы: SSL, NetBIOS.
6. Уровень представления занимается кодированием и декодированием данных. Данные из приложения преобразуются в формат для транспортировки по сети, а пришедшие из сети в формат, понятный приложению.
Протоколы: FTP, SMTP, Telnet, NCP, ASN.1 и др.
7. Прикладной уровень — это уровень взаимодействия сети и пользователя. На этом уровне различные программы, которыми пользуется человек, получают доступ к сети.
Протоколы: HTTP, HTTPS, FTP, POP3, SSH, XMPP, DNS, SIP, Gnutella и др.
Популярные протоколы
HTTP, HTTPS — протоколы передачи гипертекста. Используется при пересылке web-страниц.
FTP — протокол передачи файлов. Используется для обмена данными между компьютерами, некоторые из них играют роль специальных хранилищ файлов — файловых серверов.
POP — протокол почтового соединения. Предназначен для обработки запросов на получение почты от пользовательских почтовых программ.
SMTP — почтовый протокол, отвечающий за правила передачи сообщений.
Telnet — протокол удаленного доступа.
TCP — сетевой протокол, отвечающий за передачу данных в сети Интернет.
Ethernet — протокол, определяющий стандарты сети на физическом и канальном уровнях.
Источник: webistore.ru
Протокол в информатике
Протоко́л в информатике, совокупность правил и соглашений, определяющая процесс обмена информацией ( данными ) между различными программами внутри одного компьютера или на разных компьютерах в компьютерной сети . Набор правил, позволяющий осуществлять соединение и обмен данными между включёнными в сеть устройствами (точнее, программами на этих устройствах), называется сетевым протоколом.
Как правило, протокол определяет один из видов взаимодействия или одну из стадий взаимодействия в общей цепи передачи данных; взятые вместе, они образуют систему, именуемую стеком протоколов.
Наиболее известной системой сетевых протоколов является Базовая эталонная модель взаимосвязи открытых систем (англ. Open Systems Interconnection Basic Reference Model – OSI; 1978), описывающая семиуровневую логическую модель работы сети.
Разбиение совокупности сетевых протоколов по уровням связано с попыткой унификации аппаратного и программного обеспечения . Предполагается, что каждому из уровней соответствует определённая функциональная программа с жёстко заданными входными и выходными интерфейсами . Форматы данных на заданном уровне модели для отправителя и получателя должны быть идентичны.
- На физическом уровне определяются физические (механические, электрические, оптические) характеристики каналов связи и передаваемых по ним сигналов .
- На канальном уровне, называемом также уровнем передачи данных, определяются правила передачи данных, обеспечивающие исключение необнаруженных ошибок с точки зрения вышестоящего сетевого уровня и ограничивающие скорость передачи данных передатчика скоростью их обработки приёмником.
- Сетевой уровень отвечает за адресацию и определение маршрута доставки сообщений между компьютерами (хостами), не соединёнными непосредственно друг с другом линиями связи, когда сообщения передаются через промежуточные хосты ( маршрутизаторы , шлюзы).
- Транспортный уровень обеспечивает надёжную передачу информации между конечными адресатами, взаимодействующими через компьютерную сеть или совокупность сетей, разбивая при необходимости сообщения на части и контролируя сборку сообщения у получателя из частей в правильном порядке.
- Сеансовый уровень организует двухстороннее взаимодействие сетевых объектов и необходимую синхронизацию процедур.
- Уровень представления обеспечивает преобразование данных в вид, необходимый для взаимодействия прикладных программ.
- Прикладной уровень – уровень взаимодействия по сети прикладных программ, таких как браузер и веб- сервер , почтовый сервер и почтовый клиент и др.
Наиболее широко применяемой системой сетевых протоколов является стек протоколов TCP/IP , обеспечивающий взаимодействие в сети Интернет . Стек TCP/IP был разработан в начале 1970-х гг. до разработки модели OSI, а его широкое практическое применение в локальных компьютерных сетях и сети Интернет привело к тому, что модель OSI используется преимущественно для обсуждения сетевых проблем и обучения.
Стек TCP/IP имеет четыре уровня: прикладной, транспортный, межсетевой и канальный, но определяет только протоколы транспортного и межсетевого уровней, и интерфейсы для взаимодействия с ними сущностей других уровней.
Новые протоколы для Интернета определяет инженерный совет Интернета .
Источник: bigenc.ru
Протоколы передачи данных: что это, какие бывают и в чём различия?
Интернет очень большой и комплексный. Но на базовом уровне это всего лишь связь между различными компьютерами (не только персональными). Эта связь представляет из себя сетевые протоколы передачи данных — набор правил, который определяет порядок и особенности передачи информации для конкретных случаев.
Протоколов большое множество. Про основные из них рассказано далее.
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 часто применяется при работе с хостингами, когда клиент может удалённо подключиться к серверу и работать уже оттуда.
Источник: tproger.ru