Информатика Установка системы Microsoft Windows Организация систем с двойной загрузкой Конфигурирование аппаратных средств Файловые системы Безопасность в компьютерных сетях Аппаратное обеспечение компьютера

Архитектура вычислительных сетей Логическая структура и протоколы

Предоставление сервиса в модели ВОС.

Как было ранее сказано, (N+1)-объекты могут связываться между собой только с помощью услуг, предоставляемых N-уровнем. Рассмотрим элементы сервиса N-уровня и понятия, необходимые для описания сервиса. Объекты смежных уровней взаимодействуют друг с другом через общую границу (интерфейс). Для локализации тех мест, в которых происходит взаимодействие, используется понятие сервисной точки доступа (СТД) N-уровня (N-СТД). Именно через N-СТД происходит предоставление сервиса N-уровнем и потребление сервиса (N+1)-уровнем. Между (N+1)-объектами, N-объектами и N-СТД существуют определенные соотношения. Во-первых, объекты, имеющие общую СТД, находятся в одной системе. Во-вторых, (N+1)-объект может быть подключен к нескольким N-СТД, соединенным с одними и теми же несколькими N-объектами. Однако в каждый момент каждая N-СТД соединена только с одним N-объектом и только с одним (N+1)-объектом. Такое ограничение связано с тем, что N-СТД является “входом” в определенный N- и (N+1)-объект и связана поэтому с идентификацией (адресацией) объектов. Рассмотрим, к чему привело бы отсутствие такого ограничения.

Предположим, что к N-СТД подключаются два или более (N+1)-объектов. Тогда отношение “N-СТД-(N+1)-объект” становится неоднозначным, т.е. через одну и ту же N-СТД появляется доступ к нескольким объектам -(N+1). Такой равноправный доступ означает, что (N+1)-объекты функционально не отличаются друг от друга. Но если это так, тогда объекты должны быть представлены одним (N+1)-объектом, поскольку понятие объекта связано с выделением специфических функций. Это противоречит исходным посылкам. Следовательно, каждый (N+1)-объект должен иметь “свою” N-СТД. Допустимые соотношения N-, (N+1)-объектов и N-СТД показаны на рис.5.7.

Местоположение N-СТД определяется N-адресом. Если (N+1)-объект будет отсоединен от N-СТД, N-адрес не будет обеспечивать доступ к (N+1)-объекту. Если N-СТД переключается к другому (N+1)-объекту, то N-адрес идентифицирует новый (N+1)-объект, а не старый.

В общем случае один адрес может идентифицировать несколько СТД. Однако для простоты будем считать, что между N-СТД и N-адресом существует соотношение “один к одному”. В иерархической системе ВОС доступ к объекту N-уровня обеспечивается использованием адресов на более низких уровнях

Интерпретация соответствия между N-адресами, обслуживаемыми N-объектом, и (N+1)-адресами, используемыми для доступа к (N-1)-услугам, осуществляется с помощью функции отображения N-адресов. Внутри уровня могут существовать два различных вида функций отображения N-адресов: иерархическое и отображение с помощью таблиц. Если N-адрес всегда отображается только в один (N-1)-адрес, может быть использовано иерархическое построение адресов (см. рис. 5.8).

Функция отображения N-адресов должна только распознавать иерархическую структуру N-адреса и выделять содержащийся в ней (N-1)-адрес. В этом случае N-адрес состоит из двух частей:

 адрес N-объекта, который поддерживает несколько N-СТД;

  N-суффикс, который делает возможной идентификацию единственной N-СТД.

Эта иерархическая структура адресов в данном уровне упрощает функции отображения N-адресов, так как предполагает постоянный характер отображения. Если предыдущее условие не выполняется, т.е. либо N-адрес может быть отображен в несколько (N-1)-адресов, либо N-адрес не отображается постоянно в один и тот же (N-1)-адрес, то иерархическое построение адреса невозможно и функция отображения N-адреса должна использовать таблицы для преобразования N-адресов в (N-1)-адреса. В пределах N-уровня между парой N-СТД, расположенных в различных системах, может быть установлено несколько N-соединений. Для того, чтобы (N+1)-объект, использующий эти соединения, мог отличить одно N-соединение от другого, используется идентификатор конечной точки соединения (КТС).

Точка (КТС) связывает три элемента (см. рис. 5.9): (N+1)-объект, (N)-объект и (N)-соединение. Идентификатор КТС должен быть уникальным (единственным) в пределах СТД. Его значение выбирается локальным образом. При доступе к сервису N-уровня идентификатор КТС указывает на установленное N-соединение, по которому необходимо передать данные.

В запросе передачи данных содержатся данные пользователя, т.е. данные, источником и получателем которых являются (N+1)-объекты, использующие N-соединение. Данные, передаваемые через интерфейс за одно взаимодействие, называются интерфейсным блоком данных. Поскольку в различных реализациях такой блок имеет различную структуру и длину, при рассмотрении сервиса используют понятие сервисного блока данных (СБД). Сервисный блок данных - это данные пользователя (в общем случае несколько интерфейсных блоков данных), идентичность которых при передаче по соединению сохраняется. Это означает, что границы, форма и содержание СБД на двух КТС идентичны и не зависят от того, какими порциями СБД передавался по соединению.

Распределенные системы

В последние 2-3 года резко возрос интерес к так называемым распределенным системам. Под распределенными системами обычно понимают программные комплексы, составные части которых функционируют на разных компьютерах в сети. Эти части взаимодействуют друг с другом, используя ту или иную технологию различного уровня - от непосредственного использования сокетов TCP/IP до технологий с высоким уровнем абстракции, таких, как RMI или CORBA.

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

Обеспечение масштабируемости систем, т.е. способности эффективно обслуживать как малое, так и очень большое количество клиентов одновременно.

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

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

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

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

Оказалось, что обеспечить соответствие этим требованиям, используя традиционные технологии - а именно, двухзвенные системы “клиент-сервер”, в которых в качестве серверов выступают системы управления базами данных, почти невозможно.

Заметим, что далеко не для всех приложений вышеперечисленные требования являются существенными. Легко представить распределенную систему, которая функционирует на небольшом (до 100) количестве компьютеров, работающих в локальной сети, где нет проблем с перезапуском одного или двух-трех серверов в случае необходимости, а главными задачами, для решения которых используются распределенные технологии, являются задачи использования функциональности нескольких стандартных серверов приложений (например, текстовых процессоров, броузеров и электронных таблиц) в интересах клиентских задач. Необходимо иметь в виду, что термин “распределенные системы” относится к огромному числу задач самого разного класса.


http://arthisto.ru/