Многоуровневый подход. Протокол и интерфейс.

Лирическое отступление.

Ранее упоминался многоуровневый подход («слои» адресации аппаратный, числовой, символьный, уровни сетевого взаимодействия). На самом деле многоуровневый подход – это один из методов решения задачи декомпозиции. Декомпозиция – это разбиение одной сложной задачи на несколько более простых задач-модулей. Процедура декомпозиции включает в себя четкое определение функций каждого модуля и интерфейсов между ними. Так вот: многоуровневый подход заключается в следующем. Все множество модулей разбивают на уровни, которые сформированы следующим образом: для выполнения своих задач модуль обращается с запросом только к модулям нижележащего уровня. А результаты работы могут быть переданы только модулю соседнего вышележащего уровня. Набор функций, который нижележащий уровень предоставляет вышележащему – это интерфейс.

 

Чтобы пояснить понятия протокол-интерфейс рассмотрим простой пример.

 

Есть 2 предприятия А и В, связанные каким-либо деловым сотрудничеством. Между предприятиями существуют многочисленные договоренности и соглашения, например регулярные поставки продукции одного предприятия другому. Начальник предприятия А регулярно (каждый месяц) посылает официальное сообщение начальнику предприятия В о том, сколько и чего доступно на складе. В ответ, начальник В посылает заявку сколько и чего нужно. Это и есть установленный порядок взаимодействия, который называется протокол. В данном случае – протокол уровня начальников. Начальники посылают свои заявки не сами, а через своих секретарей. Порядок взаимодействия начальника и секретара –это межуровневый интерфейс. Например, на предприятии А обмен идет по электронной почте, а на предприятии В начальник общается с секретарем по телефону. Т.е., интерфейсы начальник-секретарь отличаются. После того, как сообщения переданы секретарям, начальников не волнует, как эти сообщения будут переданы дальше. Это может быть почта, факс, курьер и т.д. Выбор способа передачи – это компетенция секретарей, они решают этот вопрос не уведомляя начальников и связываясь только между собой. Это протокол взаимодействия секретарей. При решении других вопросов начальники могут общаться по другим протоколам-правилам и это не повлияет на работу секретарей, для которых не важно, что отправлять, а важно, чтобы сообщения дошли до адресата. Мы имеем дело с двумя уровнями – уровнем начальников и уровнем секретарей и каждый из них имеет собственный протокол, который может быть изменен независимо от протокола другого уровня. Эта независимость протоколов и есть основное достоинство многоуровневого подхода.

 

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

 

Еще раз определения:

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

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

 

В этом случае программно-аппаратные средства каждого уровня должны обеспечивать собственный протокол и интерфейс с соседними уровнями.

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