Модель взаимодействия открытых систем
Изготовление автомобиля, как и передача данных в компьютерной сети, представляет собой процесс, состоящий из отдельных этапов. Автомобиль собирает не один человек, т.к. производительность на сборочном конвейере значительно выше. На конвейере автомобили собираются поэтапно. Нечто подобное происходит и в многоуровневом процессе коммуникации, который является сложным процессом. При работе на конвейере каждый рабочий выполняет определенную операцию. В компьютерной сети роль рабочего играют протоколы. Один принимает данные от приложения, другой сжимает и шифрует данные, третий формирует пакеты и т.д. и, наконец, в принимающем компьютере последний протокол формирует из пакетов исходный документ. Каждый протокол используется на определенном уровне модели коммуникации. В мире компьютерных сетей модель взаимодействия открытых систем (OSI - Open System Interconnection) – это «модель моделей». Она служит основой стандартизации оборудования и программного обеспечения сети, в ней представлено, как должны происходить процессы коммуникации. Разработана модель Международной организацией стандартизации (International Organization for Standardization – ISO). Если поставщики придерживаются стандартов на каждом уровне, то их оборудование будет совместимо с оборудованием других поставщиков на других уровнях. Организация взаимодействия между устройствами в сети является сложной задачей. Для ее решения применяют декомпозицию, то есть разбиение одной сложной задачи на несколько более простых задач-модулей, с четким определением функций каждого модуля. При декомпозиции часто применяют многоуровневый подход. Суть которого, заключается в разбиении всей системы модулей на ряд иерархических уровней. Множество модулей, составляющих каждый уровень, сформировано так, что для выполнения своих задач они обращаются с запросами только к модулям непосредственно примыкающего нижележащего уровня. Причем результаты работы всех модулей, принадлежащих некоторому уровню, могут быть переданы только модулям соседнего вышележащего уровня. Такая иерархическая декомпозиция задачи предполагает четкое определение функции каждого уровня и интерфейсов между уровнями. Взаимодействие двух узлов представлено на рис.34.
Правила взаимодействия модулей одного уровня в разных узлах называются протоколами, а правила взаимодействия модулей соседних уровней в одном узле называются интерфейсом. На практике при реализации сетей стремятся использовать стандартные протоколы. Модель OSI (см. рис.35) состоит из семи уровней: (прикладной, представительный, сеансовый, транспортный, сетевой, канальный и физический), каждый из которых представляет определенный этап процесса сетевой коммуникации. Любой уровень модели OSI выполняет определенную задачу процесса коммуникации, а потом передает данные вверх или вниз на следующий уровень. По мере прохождения данных по уровням, каждый уровень добавляет свою информацию в виде заголовка перед исходными данными. Приложение обращается с запросом к прикладному уровню, например, к файловой службе. На основании этого запроса программное обеспечение прикладного уровня формирует сообщение стандартного формата, которое состоит из заголовка и поля данных. Заголовок содержит служебную информацию, которую необходимо передать через сеть прикладному уровню машины-адресата, чтобы сообщить ему, какую работу надо выполнить. Из приведенного примера заголовок должен содержать информацию о месте нахождения файла и о типе операции, которую необходимо над ним выполнить. Поле данных сообщения может быть пустым или содержать какие-либо данные, например те, которые необходимо записать в удаленный файл. После формирования сообщения прикладной уровень направляет его вниз по стеку представительному уровню. Протокол представительного уровня на основании полученной информации из заголовка прикладного уровня, выполняет требуемые действия и добавляет к сообщению собственную служебную информацию – заголовок представительного уровня, в котором содержатся указания для протокола представительного уровня машины-адресата. Полученное в результате сообщение передается вниз сеансовому уровню, который в свою очередь добавляет свой заголовок и т.д. до нижнего-физического уровня, который и передает его по линиям связи на физический уровень машины-адресата. С физического уровня машины-адресата сообщение последовательно передается вверх с уровня на уровень машины-адресата, выполняя соответствующие данному уровню функции, а затем удаляя этот заголовок.
Для обозначения блоков данных определенных уровней часто используют специальные названия: кадр (frame), пакет (packet), дейтаграмма (datagram), сегмент (segment). В модели OSI различают два основных вида протоколов. Протокол с установлением соединения (connection-oriented) предусматривает перед обменом данными установку соединения между отправителем и получателем (примером такого взаимодействия может служить разговор по телефону). Протокол без предварительного установления соединения (connectionless) называется дейтаграммным (примером может служить опускание письма в почтовый ящик). При взаимодействии компьютеров используются протоколы обоих типов.
|