Два связанных вопроса из
книги Таненбаума про компьютерные сети к главе 1 «Введение», цитата:
27. Предположите, что алгоритмы, используемые для реализации операций в уровне k, изменились. Как это воздействует на операции в уровнях k - 1 и k + 1?
28. Предположите, что произошло изменение в службе (набор операций), обеспечиваемой уровнем k. Как это воздействует на службы в уровнях k - 1 и k + 1?
Как обычно, я немного подправил перевод вопросов на русский, а изменения выделил красным цветом.
Если нет понимания смысла этих вопросов, можно почитать мои ответы к вопросам
10 и
14, а также перечитать подразделы 1.3.1 «Иерархия протоколов», 1.3.4 «Примитивы служб», 1.3.5 «Службы и протоколы» книги.
Обсуждаемую ситуацию можно рассматривать на рисунке 1.16 из книги, который мы уже видели:
Как мы помним из книги, служба (сервис), обеспечиваемая любым из уровней сетевой модели, формально описывается набором «примитивов» (их также можно называть «операциями»).
Протокол - это набор правил, описывающих формат и смысл пакетов, которыми обмениваются хосты в рамках конкретного уровня сетевой модели. Протокол используется для реализации примитивов (операций) службы конкретного уровня.
Для вопроса 27 ответ таков: изменение алгоритмов, используемых для реализации операций на уровне k, не повлияет на операции нижележащего (k - 1) и вышележащего (k + 1) уровней, при условии, что состав (набор) операций (по-другому это еще называют «интерфейсом» между уровнями) не изменится.
В принципе, любое изменение в службе уровня в любом случае не повлияет на службу нижележащего уровня, так как каждый уровень обеспечивает службу (сервис) только для вышележащего уровня и поэтому может влиять только на этот вышележащий уровень.
Ответ на вопрос 27 объясняет, как в конкретной сетевой архитектуре можно сменить устаревший протокол на более продвинутый на одном конкретном уровне сетевой модели, не затрагивая другие уровни.
Для вопроса 28 ответ таков: изменение в службе уровня, затрагивающее состав (набор) операций (межуровневый «интерфейс»), повлияет на службу вышележащего (k + 1) уровня, потребуется внести изменения в реализацию службы вышележащего уровня. На службу нижележащего (k - 1) уровня это изменение не повлияет.