1.3.1. Многоуровневый подход. Протокол.
Интерфейс. Стек протоколов Универсальный тезис о пользе стандартизации,
справедливый для всех отраслей, в компьютерных сетях приобретает особое значение.
Суть сети - это соединение разного оборудования, а значит, проблема совместимости
является одной из наиболее острых. Без принятия всеми производителями общепринятых
правил построения оборудования прогресс в деле «строительства» сетей был бы невозможен.
Поэтому все развитие компьютерной отрасли в конечном счете отражено в стандартах
- любая новая технология только тогда приобретает «законный» статус, когда ее
содержание закрепляется в соответствующем стандарте.
В
компьютерных сетях идеологической основой стандартизации является многоуровневый
подход к разработке средств сетевого взаимодействия. Именно на основе этого подхода
была разработана стандартная семиуровневая модель взаимодействия открытых систем,
ставшая своего рода универсальным языком сетевых специалистов. Серверы
DHCP, DNS и WINS
Службы DNS и DHCP являются ключевыми сетевыми службами
в любой корпоративной сети, построенной на базе стека протоколов TCP/IP.
Организация
взаимодействия между устройствами в сети является сложной задачей. Как известно,
для решения сложных задач используется универсальный прием - декомпозиция, то
есть разбиение одной сложной задачи на несколько более простых задач-модулей (рис.
1.20). Процедура декомпозиции включает в себя четкое определение функций каждого
модуля, решающего отдельную задачу, и интерфейсов между ними. В результате достигается
логическое упрощение задачи, а кроме того, появляется возможность модификации
отдельных модулей без изменения остальной части системы.

Рис.
1.20. Пример декомпозиции задачи
При декомпозиции часто используют
многоуровневый подход. Он заключается в следующем. Все множество модулей разбивают
на уровни. Уровни образуют иерархию, то есть имеются вышележащие и нижележащие
уровни (рис. 1.21). Множество модулей, составляющих каждый уровень, сформировано
таким образом, что для выполнения своих задач они обращаются с запросами только
к модулям непосредственно примыкающего нижележащего уровня. С другой стороны,
результаты работы всех модулей, принадлежащих некоторому уровню, могут быть переданы
только модулям соседнего вышележащего уровня. Такая иерархическая декомпозиция
задачи предполагает четкое определение функции каждого уровня и интерфейсов между
уровнями. Интерфейс определяет набор функций, которые нижележащий уровень предоставляет
вышележащему. В результате иерархической декомпозиции достигается относительная
независимость уровней, а значит, и возможность их легкой замены.