Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Модель ISO/OSI

При описании протоколов взаимодействия Kerberos-клиента и Kerberos-сервера, а также Kerberos-клиента и ресурсного сервера использован термин «квитанция» (ticket), означающий в данном случае электронную форму, выдаваемую Kerberos-сервером клиенту, которая играет роль некоего удостоверения личности и разрешения на доступ к ресурсу.

 

Первичная аутентификация

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

Выполняя логический вход в сеть, пользователь, а точнее клиент Kerberos, установленный на его компьютере, посылает аутентификационному серверу AS идентификатор пользователя ID (рис. 11.15).

Вначале аутентификационный сервер проверяет в базе данных, есть ли запись о пользователе с таким идентификатором, затем, если такая запись существует, извлекает из нее пароль пользователя р. Данный пароль потребуется для шифрования всей информации, которую направит аутентификационный сервер Kerberos-клиенту в качестве ответа. А ответ состоит из квитанции TTGS на доступ к серверу квитанций Kerberos и ключа сеанса Ks. Под сеансом здесь понимается все время работы пользователя, от момента логического входа в сеть до момента логического выхода. Ключ сеанса потребуется для шифрования в процедурах аутентификации в течение всего пользовательского сеанса. Квитанция шифруется с помощью секретного DES-ключа К, который разделяют аутентификационный сервер и сервер квитанций. Все вместе — зашифрованная квитанция и ключ сеанса — еще раз шифруются с помощью пользовательского пароля р. Таким образом, квитанция шифруется дважды ключом К и паролем р. В приведенных выше обозначениях сообщение-ответ, которое аутентификационный сервер посылает клиенту, выглядит так: {{TTGS}K, Ks}p.

После того как такое ответное сообщение поступает на клиентскую машину, клиентская программа Kerberos просит пользователя ввести свой пароль. Когда пользователь вводит пароль, то Kerberos-клиент пробует с помощью пароля расшифровать поступившее сообщение. Если пароль верен, то из сообщения извлекается квитанция на доступ к серверу квитанций {TTGs}K (в зашифрованном виде) и ключ сеанса Ks (в открытом виде). Успешная расшифровка сообщения означает успешную аутентификацию. Заметим, что аутентификационный сервер AS аутентифицирует пользователя без передачи пароля по сети.

Рис. 11.15. Последовательность обмена сообщениями в системе Kerberos

Квитанция TTGS на доступ к серверу квитанций TGS является удостоверением легальности пользователя и разрешением ему продолжать процесс получения доступа к ресурсу. Эта квитанция содержит:

  • идентификатор пользователя;
  • идентификатор сервера квитанций, на доступ к которому получена квитанция;
  • отметку о текущем времени;
  • период времени, в течение которого может продолжаться сеанс;
  • копию ключа сессии KS.

Как уже было сказано, клиент обладает квитанцией в зашифрованном виде. Шифрование повышает уверенность в том, что никто, даже сам клиент — обладатель данной квитанции, — не сможет квитанцию подделать, подменить или изменить. Только сервер TGS, получив от клиента квитанцию, сможет ее расшифровать, так как в его распоряжении имеется ключ шифрования К.

Время действия квитанции ограничено длительностью сеанса. Разрешенная длительность сеанса пользователя, содержащаяся в квитанции на доступ к серверу квитанций, задается администратором и может изменяться в зависимости от требований к защищенности сети. В сетях с жесткими требованиями к безопасности время сеанса может быть ограничено 30 минутами, в других условиях это время может составить 8 часов. Информация, содержащаяся в квитанции, определяет ее срок годности. Предоставление квитанции на вполне определенное время защищает ее от неавторизованного пользователя, который мог бы ее перехватить и использовать в будущем.

 

Получение разрешения на доступ к ресурсному серверу

Итак, следующим этапом для пользователя является получение разрешения на доступ к ресурсному серверу (например, к файловому серверу или серверу приложений). Но для этого надо обратиться к серверу TGS, который выдает такие разрешения (квитанции). Чтобы получить доступ к серверу квитанций, пользователь уже обзавелся квитанцией {TTGS}K, выданной ему сервером AS. Несмотря на защиту паролем и шифрование, пользователю, для того чтобы доказать серверу квитанций, что он имеет право на доступ к ресурсам сети, нужно кое-что еще, кроме квитанции.

Как уже упоминалось, первое сообщение от аутентификационного сервера содержало не только квитанцию, но и секретный ключ сеанса Ks, который разделяется с сервером квитанций TGS. Клиент использует этот ключ для шифрования еще одной электронной формы, называемой аутентификатором {А}К$. Аутентификатор А содержит идентификатор и сетевой адрес пользователя, а также собственную временную отметку. В отличие от квитанции {TTGS}K, которая в течение сеанса используется многократно, аутентификатор предназначен для одноразового использования и имеет очень короткое время жизни — обычно несколько минут. Kerberos-клиент посылает серверу квитанций TGS сообщение-запрос, содержащее квитанцию и аутентификатор: {ТТсз}К, {A}KS.

Сервер квитанций расшифровывает квитанцию имеющимся у него ключом К, проверяет, не истек ли срок действия квитанции, и извлекает из нее идентификатор пользователя.

Затем сервер TGS расшифровывает аутентификатор, используя ключ сеанса пользователя Ks, который он извлек из квитанции. Сервер квитанций сравнивает идентификатор пользователя и его сетевой адрес с аналогичными параметрами в квитанции и сообщении. Если они совпадают, то сервер квитанций получает уверенность, что данная квитанция действительно представлена ее законным владельцем.

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

Клиент обращается к серверу квитанций за разрешением на доступ к ресурсному серверу, который здесь обозначен как RS1. Сервер квитанций, удостоверившись в легальности запроса и личности пользователя, отсылает ему ответ, содержащий две электронных формы: многократно используемую квитанцию на получение доступа к запрашиваемому ресурсному серверу TRS1 и новый ключ сеанса KS1.

Квитанция на получение доступа шифруется секретным ключом KRS1> разделяемым только сервером квитанций и тем сервером, к которому предоставляется доступ, в данном случае — RS1. Сервер квитанций разделяет уникальные секретные ключи с каждым сервером сети. Эти ключи распределяются между серверами сети физическим способом или каким-либо иным секретным способом при установке системы Kerberos. Когда сервер квитанций передает квитанцию на доступ к какому-либо ресурсному серверу, то он шифрует ее, так что только этот сервер сможет расшифровать ее с помощью своего уникального ключа.

Новый ключ сеанса KS1 содержится не только в самом сообщении, посылаемом клиенту, но и внутри квитанции TRS1. Все сообщение шифруется старым ключом сеанса клиента Ks, так что его может прочитать только этот клиент. Используя введенные обозначения, ответ сервера TGS клиенту можно представить в следующем виде: {{TRS1}KRS1, KS1}KS.

 

Получение доступа к ресурсу

Когда клиент расшифровывает поступившее сообщение, то он отсылает серверу, к которому он хочет получить доступ, запрос, содержащий квитанцию на получение доступа и аутентификатор, зашифрованный новым ключом сеанса: {TRsi}KRsi, {А}К.

Это сообщение обрабатывается аналогично тому, как обрабатывался запрос клиента сервером TGS. Сначала расшифровывается квитанция ключом KRS1, затем извлекается ключ сеанса KSi и расшифровывается аутентификатор. Далее сравниваются данные о пользователе, содержащиеся в квитанции и аутентификаторе. Если проверка проходит успешно, то доступ к сетевому ресурсу разрешен.

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

Аутентификация ресурсного сервера в системе Kerberos выполняется в соответствии со следующей процедурой. Клиент обращается к серверу с предложением, чтобы тот прислал ему сообщение, в котором повторил временную отметку из аутентификатора клиента, увеличенную на 1. Кроме того, требуется, чтобы данное сообщение было зашифровано ключом сеанса KS). Чтобы выполнить такой запрос клиента, сервер извлекает копию ключа сеанса из квитанции на доступ, использует этот ключ для расшифровки аутентификатора, наращивает значение временной отметки на 1, заново зашифровывает сообщение, используя ключ сеанса, и возвращает сообщение клиенту. Клиент расшифровывает это сообщение, чтобы получить увеличенную на единицу отметку времени.

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

 

Достоинства и недостатки

Изучая довольно сложный механизм системы Kerberos, нельзя не задаться вопросом: какое влияние оказывают все эти многочисленные процедуры шифрования и обмена ключами на производительность сети, какую часть ресурсов сети они потребляют и как это сказывается на ее пропускной способности? Ответ весьма оптимистичный — если система Kerberos реализована и сконфигурирована правильно, она незначительно уменьшает производительность сети. Так как квитанции используются многократно, сетевые ресурсы, затрачиваемые на запросы предоставления квитанций, невелики. Хотя передача квитанции при аутентификации логического входа несколько снижает пропускную способность, такой обмен должен осуществляться и при использовании любых других систем и методов аутентификации. Дополнительные же издержки незначительны. Опыт внедрения системы Kerberos показал, что время отклика при установленной системе Kerberos существенно не отличается от времени отклика без нее — даже в очень больших сетях с десятками тысяч узлов. Такая эффективность делает систему Kerberos весьма перспективной.

Среди уязвимых мест системы Kerberos можно назвать централизованное хранение всех секретных ключей системы. Успешная атака на Kerberos-сервер, в котором сосредоточена вся информация, критическая для системы безопасности, приводит к крушению информационной защиты всей сети. Альтернативным решением могла бы быть система, построенная на использовании алгоритмов шифрования с парными ключами, для которых характерно распределенное хранение секретных ключей. Однако в настоящий момент еще не появились коммерческие продукты, построенные на базе несимметричных методов шифрования, которые бы обеспечивали комплексную защиту больших сетей. Еще одной слабостью системы Kerberos является то, что исходные коды тех приложений, доступ к которым осуществляется через Kerberos, должны быть соответствующим образом модифицированы. Такая модификация называется «керберизацией» приложения. Некоторые поставщики продают «керберизованные» версии своих приложений. Но если такой версии нет и нет исходного текста, то Kerberos не может обеспечить доступ к такому приложению.

 

Выводы

  • Безопасная информационная система обладает свойствами конфиденциальности, доступности и целостности. Конфиденциальность — гарантия того, что секретные данные будут доступны только авторизованным пользователям, то есть только тем пользователям, которым этот доступ разрешен. Доступность — гарантия того, что авторизованные пользователи всегда получат доступ к данным. Целостность — гарантия сохранности данными правильных значений, которая обеспечивается запретом для неавторизованных пользователей каким-либо образом изменять, модифицировать, разрушать или создавать данные.
  • Любое действие, которое может быть направлено на нарушение конфиденциальности, целостности и/или доступности информации, а также на нелегальное использование других ресурсов сети, называется угрозой. Реализованная угроза называется атакой. Риск — это вероятностная оценка величины возможного ущерба, который может понести владелец информационного ресурса в результате успешно проведенной атаки.
  • Безопасность информационной системы складывается из компьютерной безопасности, связанной с хранением и обработкой данных в компьютере, и сетевой безопасности, связанной с работой компьютера в сети. Сетевая безопасность, в свою очередь, базируется на двух компонентах: защите данных в момент их передачи по линиям связи и защите от несанкционированного удаленного доступа в сеть.
  • Политика информационной безопасности определяет, какую информацию и от кого следует защищать, каков может быть ущерб от той или иной успешно реализованной угрозы, какими средствами вести защиту.
  • Алгоритм шифрования считается раскрытым, если найдена процедура, позволяющая подобрать ключ за реальное время. Сложность алгоритма раскрытия называется криптостойкостъю.
  • Существуют два класса криптосистем — симметричные и асимметричные. В симметричных схемах шифрования секретный ключ зашифровки совпадает с секретным ключом расшифровки. В асимметричных схемах шифрования открытый ключ зашифровки не совпадает с секретным ключом расшифровки.
  • В настоящее время наиболее популярным стандартным симметричным алгоритмом шифрования является DES, а из несимметричных криптоалгоритмов с открытым ключом — RSA.
  • Симметричные алгоритмы в общем случае обладают более высокой скоростью шифрования и требуют меньше времени на генерацию ключа, чем несимметричные алгоритмы с открытым ключом, но предъявляют высокие требования к надежности канала передачи секретного ключа, а также менее масштабируемы: в симметричных алгоритмах количество ключей находится в квадратичной зависимости от числа абонентов, а в несимметричных алгоритмах количество ключей равно удвоенному числу абонентов.
  • Аутентификация предотвращает доступ к сети нежелательных лиц и разрешает вход для легальных пользователей. Доказательством аутентичности может служить знание аутентифицируемым некоего общего для обеих сторон слова (пароля) или факта, владение некоторым уникальным предметом или демонстрация уникальных биохарактеристик. Чаще всего для доказательства идентичности пользователя используются пароли.
  • Средства авторизации контролируют доступ легальных пользователей к ресурсам системы, предоставляя каждому из них именно те права, которые ему были определены администратором.
  • Аудит — фиксация в системном журнале событий, связанных с доступом к защищаемым системным ресурсам.
  • Технология защищенного канала призвана обеспечивать безопасность передачи данных по открытой транспортной сети, например через Интернет. Защищенный канал обеспечивает выполнение трех основных функций: взаимную аутентификацию абонентов при установлении соединения, защиту передаваемых по каналу сообщений от несанкционированного доступа, подтверждение целостности поступающих по каналу сообщений.
  • Совокупность защищенных каналов, созданных предприятием в публичной сети для объединения своих филиалов, часто называют виртуальной частной сетью (Virtual Private Network, VPN).
  • Аутентификация с применением цифровых сертификатов является альтернативой использованию паролей и особенно эффективна в сетях с очень большим числом пользователей. Цифровой сертификат устанавливает и гарантирует соответствие между открытым ключом и его владельцем.
  • Централизованная система Kerberos является посредником между клиентами и серверами сети при проведении процедур аутентификации и авторизации. В системе Kerberos клиент должен доказывать свою аутентичность для доступа к каждой службе, услуги которой он вызывает. Все обмены данными в сети выполняются в защищенном виде с использованием алгоритма шифрования DES.

Задачи и упражнения

1. Поясните значения основных свойств безопасной системы: конфиденциальности, целостности и доступности.

2. Приведите примеры средств, обеспечивающих конфиденциальность, но не гарантирующих целостность данных.

3. Приведите примеры действий воображаемого злоумышленника, направленных на нарушение доступности данных.

4. Предложите какой-нибудь способ обеспечения целостности данных.

5. Что такое политика безопасности?

6. В чем заключаются психологические меры безопасности?

7. Поясните значение терминов «идентификация», «аутентификация», «авторизация».

8. Почему наличие удаленного доступа и других случаев использования глобальных связей делают систему более уязвимой?

9. Какая схема шифрования — симметричная или асимметричная — является более масштабируемой?

10. В каких случаях предпочтительнее использовать симметричные алгоритмы шифрования, а в каких — алгоритмы шифрования с открытым ключом?

11. Правильно ли утверждение: «Поскольку открытый ключ не является секретным, то его не нужно защищать»?

12. Что такое электронная подпись?

13. Период генерации одноразовых паролей является одним из настраиваемых параметров аппаратного ключа. Из каких соображений администратор может выбрать и назначить значение для этого параметра?

14. Нужна ли клавиатура набора цифр на карточке — аппаратном ключе, применяемом при аутентификации на основе одноразовых паролей по схеме «запрос-ответ»? А по схеме, использующей синхронизацию по времени?

15. В чем заключается масштабируемость метода аутентификации на основе сертификатов?

16. Какая информация содержится в сертификате?

17. Как убедиться в подлинности сертификата?

18. Опишите процедуру получения сертификата. На основание каких сведений о пользователе выдается сертификат?

19. В чем заключается проблема восстановления ключей?

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

21. Администратор сети, мотивируя свой отказ от использования системы Кеrberos, заявил, что эта система для своей работы требует слишком больших накладных расходов, а кроме того, защищаемые приложения придется переписывать. Согласны ли вы с его аргументами?


 

Ответы к задачам и упражнениям

Глава 1

2. Мониторы пакетной обработки в отличие от системных обрабатывающих программ начали выполнять новые задачи — задачи автоматизированной организации вычислительного процесса.

3. Да.

Глава 2

6. Пользователю истиннораспределенной ОС, не требуется знать, на каком из компьютеров сети хранятся файлы, с которыми он работает, а пользователю сетевой ОС эти сведения обычно необходимы.

7. А, В, С.

10. А, В.

11. Часто используются как синонимы: сервис и услуга, клиент и редиректор.

12. Да, например NetWare for UNIX.

14. B.C.

15. Да, если у него есть соответствующая клиентская часть.

Глава 3

1. Как синонимы могут использоваться следующие термины: «привилегированный режим», «режим супервизора», «режим ядра».

2. Да, так как анализ может выявить наличие в программе привилегированных команд.

4. Стремление повысить производительность системы.

8. Да.

Глава 4

4. А — в очереди процессов, ожидающих ввода-вывода; В — в очереди готовых процессов.

5. С.

6. Нет.

9. Нет.

11. А — да. В — нет. С — да. D — да. Е — нет.

12. Строго говоря, нет.

13. Да.

15. Да.

16. В отношении времени выполнения отдельного приложения — первый вариант; в отношении суммарной производительности компьютера — второй.

17. Невытесняющая многозадачность.

18. А — вытесняющий, использует абсолютные динамические приоритеты, фиксированные кванты, мягкое реальное время; В — невытесняющий, использует относительные динамические приоритеты; не использует квантование, не поддерживает процессы реального времени; С — вытесняющий, использует абсолютные динамические приоритеты, динамические кванты, мягкое реальное время.

19. Прерывания от таймера, выполнение процессом некоторых системных вызовов, связанных с запросом и освобождением ресурсов, аппаратное прерывание, которое сигнализирует о завершении периферийным устройством операции ввода-вывода, внутреннее прерывание, сообщающее об ошибке выполнения активной задачи.

22. Векторный.

23. Нет.

27. Нет, в данном случае мы имеем дело не с клинчем, а с очередью. Действительно, студент, ожидающий в читальном зале, может быть «разблокирован» в результате освобождения какого-либо другого места в читальном зале, а затем он, выполнив свою работу и сдав книгу, «разблокирует» другого студента, ожидающего в книжном хранилище. Для того чтобы ситуация могла быть названа клинчем, следует дополнить задачу еще одним условием—в читальном зале имеется только одно рабочее место.

Глава 5

1. Характеристиками аппаратуры.

2. Разрядностью адреса в системе команд.

3. Да.

4. А и В — могут использоваться оба режима в зависимости от типа подсистемы управления памятью и требований приложения. Например, приложения реального времени могут загружаться в память всегда в физических адресах, а фоновые приложения — в виртуальных.

6. С, D, Е.

7. Процедура сжатия не имеет смысла для страничного распределения, но применима при сегментном.

12. 1634568.

13. В оперативной памяти.

18. В.

Глава 6

2. GDTRnLDTR.

3. Менее привилегированные задачи могут получить доступ к данным более привилегированных задач, хранящимся в общем стеке, а это может привести к их несанкционированному использованию или разрушению.

4. Значения селекторов стека нужны в том случае, когда уровень привилегий вызываемого кода отличается от уровня привилегий вызывающего кода. Процедуру же с уровнем привилегий 3 нельзя вызвать из процедуры другого уровня привилегий, так как в процессоре Pentium запрещено вызывать процедуры с более низким уровнем привилегий.

5. В физической памяти.

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

7.

Соотношение уровней Тип сегмента Возможность доступа
CPL > DPL С=1 Да
CPL < DPL С=1 Нет
CPL = DPL С=1 Да
CPL > DPL C=0 Нет
CPL < DPL C=0 Нет
CPL = DPL   Да

8. Да.

9. Страницы, хранящие разделы таблицы, выгружать можно, а страницу, содержащую таблицу разделов, — нельзя.

10. В первом случае запрет предотвращает передачу некоторой работы (функции) от более надежной процедуры менее надежной, во втором случае такой запрет не нужен, так как каждая задача выполняет собственную работу, и ее вызов не уменьшает надежность более привилегированного вызывающего кода, который, как правило, является кодом ядра ОС. Если бы такой запрет существовал, то ОС не смогла бы выполнять свои функции по переключению задач.

11. Использование шлюза задачи вызывает переключения контекста, а шлюза прерывания — нет.

Глава 7

1. За счет контроллеров внешних устройств.

3. А, В, D, F.

4. Диск как устройство и свободное место на диске.

5. Тем и другим.

8. С корневого каталога.

9. С.

10. Размер кластера не может быть меньше, чем объем раздела, поделенный на максимально возможное число кластеров, которое для любой файловой системы FAT 16 определяется разрядностью элемента таблицы FAT и равно 216. Таким образом, нижняя граница размера кластера равна 272x220/216=4352 (байт). Выбираем ближайшее число, превышающее 4352 и равное степени двойки, — это 8192 (8 Кбайт*=213) байт. Обозначим через X число кластеров, отведенных под область данных. Тогда справедливо следующее соотношение: объем раздела представляет собой сумму объемов, занимаемых загрузочным сектром (512 байт), двумя копиями таблицы FAT (2x2X байт), корневым каталогом (32x512=214 байт) и областью данных (213хХ байт) или 272х220=512+2х2Х+214+213хХ. Отсюда получаем Х=34797 кластеров. Таким образом, память в разделе диска распределится следующим образом:

  • загрузочный сектор — 1 сектор;
  • FAT1 и FAT2 - по 2x34797=69594 (байт), или по 136 секторов;
  • корневой каталог — 32 сектора;
  • область данных — 34797x16= 556752 секторов.

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

12. Повышение производительности доступа к данным.

13. При избирательной.

15. С помощью механизма эффективных прав.

17. No Access.

Глава 8

1. На стадии просмотра индексного дескриптора.

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

3. Секция strategy.

6. При отображении данные файла помещаются в пользовательскую часть виртуального адресного пространства процесса, причем по указанию прикладного программиста, а при кэшировании — в системную часть прозрачным для прикладного программиста образом.

7. Нет, не отображаются каталоги и символьные связи.

9. Наряду с откатом незавершенных транзакций необходимо выполнить повторение зафиксированных транзакций.

11. Нет.

13. Можно.

14. Более высокой скоростью доступа.

15. Операций чтения.

16. При динамическом восстановлении данные отказавшего диска генерируются на основании данных остальных дисков в момент поступления запроса на их чтение, при этом они не хранятся статически ни на одним из дисков.

17. В том случае, когда процессы не имеют общего прародителя.

Глава 9

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

3. При использовании модели файлового сервера или сервера базы данных.

4. С использованием синхронных примитивов передачи сообщений.

, 5. Буфер.

Глава 10

1. NFS, SMB, FTP, TFTP, NCP.

2. stateless.

4.

  Повышение производительности Повышение отказоустойчивости
Репликация Да Да
Кэширование Да Нет

5. Можно.

6. В ОС Windows NT - нельзя, а в ОС UNIX - можно.

7. Каждый пользователь видит на экране не Только свои исправления, но и исправления, сделанные другим пользователем.

8. Удаленного доступа.

11. База данных службы каталогов должна обладать распределенностъю для обеспечения масштабируемости службы и реплицируемостъю для обеспечения ее отказоустойчивости.

14. Возможно.

15. В.

16. Нет.

17. Может, если оно не использует протоколы прикладного уровня.

Глава 11

9. Асимметричная.

11. Неправильно, его нужно защищать от подмены.

ПРИЛОЖЕНИЕ

· Физический уровень

· Канальный уровень

· Сетевой уровень

· Транспортный уровень

· Сеансовый уровень

· Уровень представления

· Прикладной уровень

Организация взаимодействия между устройствами в сети является сложной проблемой, она включает много аспектов, начиная с согласования уровней электрических сигналов, формирования кадров, проверки контрольных сумм и кончая вопросами аутентификации приложений. Для ее решения используется универсальный прием — разбиение одной сложной задачи на несколько частных, более простых задач. Средства решения отдельных задач упорядочены в виде иерархии уровней. Для решения задачи некоторого уровня могут быть использованы средства непосредственно примыкающего нижележащего уровня. С другой стороны, результаты работы средств некоторого уровня могут быть переданы только средствам соседнего вышележащего уровня.

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

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

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

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

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

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

В начале 80-х годов - ряд международных организаций по стандартизации — ISO, ITU-T и некоторые другие - разработали модель, которая сыграла значительную роль в развитии сетей. Эта модель называется моделью взаимодействия открытых систем (Open System interconnection, OSI), или моделью OSI. Модель OSI определяет различные уровни взаимодействия систем, дает им стандартные имена и указывает, какие функции должен выполнять каждый уровень.

В модели OSI (рис. П.1) средства взаимодействия делятся на семь уровней: прикладной, представительный, сеансовый, транспортный, сетевой, канальный и физический. Каждый уровень имеет дело с одним определенным аспектом взаимодействия сетевых устройств.

Рис. П.1. Модель взаимодействия открытых систем ISO/OSI

 

Физический уровень

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

Функции физического уровня реализуются во всех устройствах, подключенных к сети. Со стороны компьютера функции физического уровня выполняются сетевым адаптером или последовательным портом.

Примером протокола физического уровня может служить спецификация 10Base-T технологии Ethernet, которая определяет в качестве используемого кабеля неэкранированную витую пару категории 3 с волновым сопротивлением 100 Ом, разъем RJ-45, максимальную длину физического сегмента 100 метров, манчестерский код для представления данных в кабеле, а также некоторые другие характеристики среды и электрических сигналов.

 

Канальный уровень

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

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

В глобальных сетях, которые в отличие от локальных сетей редко обладают регулярной топологией, канальный уровень обеспечивает обмен сообщениями только между двумя соседними компьютерами, соединенными индивидуальной линией связи. Примерами протоколов «точка-точка» (как часто называют такие протоколы) могут служить широко распространенные протоколы РРР и LAP-B.

 

Сетевой уровень

Сетевой уровень (Network layer) служит для образования единой транспортной системы, объединяющей несколько сетей, причем эти сети могут использовать совершенно различные принципы передачи сообщений между конечными узлами и обладать произвольной; структурой связей.

Сети соединяются между Собой специальными устройствами, называемыми маршрутизаторами. Маршрутизатор— это устройство, которое собирает информацию о топологии межсетевых соединений и на ее основании пересылает пакеты сетевого уровня в сеть назначения. Для того чтобы передать сообщения сетевого уровня, или, как их принято называть, пакеты (packets), от отправителя, находящегося в одной сети, получателю, находящемуся в другой сети, нужно совершить некоторое количество транзитных передач между сетями. Таким образом, маршрут представляет собой последовательность маршрутизаторов, через которые проходит пакет. Проблема выбора наилучшего пути называется маршрутизацией, и ее решение является одной из главных задач сетевого уровня.

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

Примерами протоколов сетевого уровня являются протокол межсетевого взаимодействия IP стека TCP/IP и протокол межсетевого обмена пакетами IPX стека Novell.

 

Транспортный уровень

На пути от отправителя к получателю пакеты могут быть искажены или утеряны. Хотя некоторые приложения имеют собственные средства обработки ошибок, существуют и такие, которые предпочитают сразу иметь дело с надежным соединением. Работа транспортного уровня (Transport layer) заключается в том, чтобы обеспечить приложениям или верхним уровням стека — прикладному и сеансовому — передачу данных с той степенью надежности, которая им требуется. Модель OSI определяет пять классов услуг, предоставляемых транспортным уровнем. Эти виды услуг отличаются качеством: срочностью, возможностью восстановления прерванной связи, наличием средств мультиплексирования нескольких соединений между различными прикладными протоколами через общий транспортный протокол, а главное — способностью к обнаружению и исправлению ошибок передачи, таких как,, искажение, потеря и дублирование пакетов.

Как правило, все протоколы, начиная с транспортного уровня и выше, реализуются программными средствами конечных узлов сети — компонентами их сетевых операционных систем. В качестве примера.транспортных протоколов можно привести протоколы TCP и UDP стека TCP/IP и протокол SPX стека Novell.

 

Сеансовый уровень

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

 

Уровень представления

Уровень представления (Presentation layer) имеет дело с формой представления передаваемой по сети информации, не меняя при этом ее содержания. За счет уровня представления информация, передаваемая прикладным уровнем одной системы, всегда будет понятна прикладному уровню в другой системе. С помощью средств данного уровня протоколы прикладных уровней могут преодолеть синтаксические различия в представлении данных или же различия кодов символов, например кодов ASCII и EBCDIC. На этом уровне может выполняться-; шифрование и дешифрирование данных, благодаря которому секретность 'обмена данными обеспечивается сразу для всех прикладных служб. Примером такого протокола является протокол Secure Socket Layer (SSL), который обеспечивает секретный обмен сообщениями для протоколов прикладного уровня стека TCP/IP.

 

Прикладной уровень

Прикладной уровень (Application layer) — это в действительности прости *на6ер разнообразных протоколов, с помощью которых пользователи сети получают доступ к разделяемым ресурсам, таким как файлы, принтеры или гипертекстовые Web-страницы, а также организуют свою совместную работу, например с помощью протокола электронной почты. Единица данных, которой оперирует Прикладной уровень, обычно называется сообщением (message).

Существует очень большое разнообразие служб прикладного уровня. Приведем в качестве примеров протоколов прикладного уровня хотя бы несколько наиболее распространенных реализаций файловых служб: NCP в операционной системе Novell NetWare, 8MB в Microsoft Windows NT, NFS, FTP и TFTP, входящие в стек TCP/IP.

 

<== предыдущая лекция | следующая лекция ==>
Аутентификация программных кодов | 
Поделиться с друзьями:


Дата добавления: 2014-01-05; Просмотров: 1362; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.159 сек.