Сетевые протоколы и их взаимодействие. Правила, управляющие коммуникациями. Индустриальные стандарты и технологически независимые протоколы

Рубрика: Сети

Здравствуйте, уважаемые читатели блога okITgo.ru! Сегодня мы поговорим о сетевых протоколах, определяющих правила, которые управляют коммуникациями по сети, а также о том, как эти протоколы взаимодействуют между собой.

Сетевые Протоколы

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


Правила, Управляющие Коммуникациями

Правила, Управляющие Коммуникациями

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

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

Успешная коммуникация между хостами в сети требует взаимодействия множества различных протоколов. Группа взаимосвязанных протоколов, которые необходимы для осуществления функции коммуникации, называется набором протоколов. Эти протоколы реализовани на уровне программного обеспечения и оборудования, которое загружается на каждом хосте и сетевом устройстве.

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


Использование Слоев Для Описания Коммуникации Лицом к Лицу

Для примера, рассмотрим общение двух людей лицом к лицу. Как показано на рисунке, мы можем использовать три уровня, чтобы описать это занятие. На нижнем уровне, Физическом уровне, есть два человека, каждый из которых может произносить слова вслух. На втором уровне, уровне Правил, мы имеем соглашение говорить на общем языке. На верхнем уровне, уровне Содержания, мы имеем фактически произносимые слова – содержание коммуникации.

Были бы мы свидетелями этой коммуникации, мы бы в действительности не видели “уровни”, плавающие в воздухе. Важно понимать, что использование уровней (или слоев) – это модель и, как таковая, она предоставляет удобный способ разбить сложную задачу на части и описать, как они работают.


Сетевые Протоколы

Роль Протоколов

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

Наборы сетевых протоколов описывают такие вещи как:

  • Формат или структура сообщения
  • Метод, посредством которого сетевые устройства обмениваются информацией о маршрутах с другими сетями
  • Как и когда сообщения об ошибках и системные сообщения передаются между устройствами
  • Установка и завершение сеансов передачи данных

Отдельные протоколы в наборе протоколов могут производиться и принадлежать различным организациям. Принадлежать в данном контексте означает, что одна компания или производитель контролирует определение протокола и того, как он функционирует. Некоторые частные протоколы могут использоваться различными организациями с разрешения владельца. Другие могут быть только реализованы на базе оборудования, производимого частной компанией.


Наборы Протоколов и Индустриальные Стандарты

Наборы Протоколов и Индустриальные Стандарты

Часто многие из протоколов, составляющих набор протоколов, ссылаются на другие широко используемые протоколы или индустриальные стандарты. Стандарт – это процесс или протокол, который был одобрен сетевой индустрией и ратифицирован организацией по стандартизации, такой как Сообщество Инженеров Электричества и Электроники (англ. Institute of Electrical and Electronics Engineers или IEEE) или Целевая (Оперативная) Группа Инженерной Поддержки Интернета (англ. Internet Engineering Task Force или IETF).

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

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


Взаимодействие Протоколов

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

Протокол Приложения:

Протокол Передачи ГиперТекста (англ. HyperText Transfer Protocol или HTTP) является распространенным протоколом, который управляет процессом взаимодействия веб сервера и веб клиента. HTTP определяет содержимое и форматирование запросов и ответов, которыми обмениваются клиент и сервер. Как клиент, так и веб сервер имеют ПО, реализующее HTTP как часть приложения. Протокол HTTP полагается на другие протоколы, которые управляют транспортировкой сообщений между клиентом и сервером.

Транспортный Протокол:

Протокол Контроля Передачи (англ. Transmission Control Protocol или TCP) – это транспортный протокол, который управляет отдельными коммуникациями между веб серверами и веб клиентами. TCP разделяет HTTP сообщения на более мелкие части, называемые сегментами, чтобы послать их клиенту – пункту назначения. Также этот протокол ответственен за контроль размера и скорости, с которой сообщения передаются между сервером и клиентом.

Сетевой Протокол:

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

Протоколы Сетевого Доступа:

Протоколы сетевого доступа описывают две основных функции, управлением канала данных и физической передачей данных по соединению. Протоколы управления каналом данных принимают пакеты от IP и форматируют их для передачи по соединению. Стандарты и протоколы для физических соединений управляют тем, как сигналы посылаются по соединению и тем, как они интерпретируются получающими их клиентами. Трансиверы (приемопередатчики) на сетевых картах подчиняются соответствующим стандартам для используемого типа соединения.


Технологично Независимые Протоколы

Технологично Независимые Протоколы

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

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

Рассмотрим к примеру веб сервер, HTTP не указывает, какой язык программирования используется для создания браузера, какое ПО веб сервера следует использовать для обслуживания веб страниц, на какой операционной системе работает это ПО или требования к оборудованию, необходимому для отображения браузера. Также он не описывает, как сервер должен обнаруживать ошибки, хотя он и определяет, что сервер должен делать, если ошибки происходят.

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

Спасибо за внимание! До новых встреч на страницах сайта okITgo.ru.

Рубрика: Сети