Главная » Просмотр файлов » Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)

Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619), страница 73

Файл №1162619 Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (Э. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы)) 73 страницаЭ. Таненбаум, М. ван Стеен - Распределённые системы (принципы и парадигмы) (1162619) страница 732019-09-20СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 73)

Это означает, что конкретная машина может выдать значениев диапазоне от 215 998 до 216 002 тиков в час. Уточним. Пусть имеется констан­та р:\-p<dC/dt< l+p.В этих пределах таймер может считаться работоспособным. Константа р оп­ределяется производителем и известна под названием максимальной скоростидрейфа (maximum drift rate). Отстающие, правильные и спешащие часы иллюст­рирует рис. 5.4.Если двое часов уходят от UTC в разные стороны за время А^ после синхро­низации, разница между их показаниями может быть не более чем 2р-А^. Еслиразработчики операционной системы хотят гарантировать, что никакая пара ча­сов не сможет разойтись более чем на 5, синхронизация часов должна произво­диться не реже, чем каждые 5/2р с.

Различные алгоритмы отличаются точностьюопределения момента проведения повторной синхронизации.5 . 1 . Синхронизация часов281Время по часам, сВремя UTC, tРис. 5.4. Соотношение между временем по часам и временем UTCпри различной частоте тиковАлгоритм КристианаДавайте начнем с алгоритма, хорошо подходящего для систем, в которых одна измашин имеет приемник WWV, а наша задача состоит в синхронизации всех ос­тальных машин по ней. Назовем машину с приемником WWV сервером времени{time server). Наш алгоритм [113] основан на работах Кристиана (Cristian) и болееранних.

Периодически, гарантировано не реже, чем каждые 5/2р с, каждая машинапосылает серверу времени сообщение, запрашивая текущее время. Эта машинатак быстро, как это возможно, отвечает сообщением, содержащим ее текущее вре­мя, Сутсу как показано на рис. 5.5.То и Ti отсчитываются по одним и тем же часамКлиентСервервремениВремя обработки прерывания, IВремя-Рис. 5.5. Получение текущего времени с сервера времениВ качестве первого приближения, когда отправитель получает ответ, он мо­жет просто выставить свои часы в значение Сите- Однако такой алгоритм имеетдве проблемы: главную и второстепенную. Главная проблема состоит в том, чтовремя никогда не течет назад.

Если часы отправителя спешат. Сите может ока­заться меньше текущего значения С у отправителя. Простая подстановка Ситеспособна вызвать серьезные проблемы, связанные с тем, что объектные файлы,скомпилированные после того, как было изменено время, помечены временемболее ранним, чем модифицированные исходные тексты, которые поправлялисьдо изменения времени.282Глава 5. СинхронизацияИзменения могут вноситься постепенно. Один из способов таков. Предполо­жим, что таймер настроен так, что он генерирует 100 прерываний в секунду.В нормальном состоянии каждое прерывание будет добавлять ко времени по 10 мс.При запаздывании часов процедура прерывания будет добавлять каждый развсего по 9 мс.

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

Хуже всего, что этазадержка может быть весьма велика и зависеть от загрузки сети. По Кристиану,метод решения проблемы состоит в измерении этой величины. Отправителю дос­таточно просто аккуратно записать интервал между посылкой запроса и прихо­дом ответа. То и другое время (начальное Го и конечное Т\), измеряется по од­ним и тем же часам, а значит, интервал будет относительно точно измерен даже втом случае, если часы отправителя имеют некоторое расхождение с UTC.В отсутствии какой-либо дополнительной информации наилучшим прибли­жением времени прохождения сообщения будет (Т\~ То)/2. После получения от­вета, чтобы получить приблизительное текущее время сервера, значение, содер­жащееся в сообщении, следует увеличить на это число. Если теоретическоеминимальное время прохождения известно, следует рассчитать другие парамет­ры времени.Эта оценка может быть улучшена, если приблизительно известно, скольковремени сервер времени обрабатывает прерывание и работает с пришедшим со­общением.

Обозначим время обработки прерывания /. Тогда величина интерва­ла времени между TQHTU затраченного на прохождение сообщения, будет равнаT\~TQ- I, и лучшей оценкой времени на прохождение сообщения в одну сторонубудет половина этой величины. Существуют системы, в которых сообщение из Ав В постоянно движется по одному маршруту, а из В в Л — по другому. Они бу­дут иметь другое время прохождения, но мы здесь не будем рассматривать этислучаи.Для повышения точности Кристиан предложил производить не одно измере­ние, а серию. Все измерения, в которых разность Т\-То превосходит некотороепороговое значение, отбрасываются как ставшие жертвами перегруженной сети,а потому недостоверные.

Оценка делается по оставшимся замерам, которые мо­гут быть усреднены для получения наилучшего значения. С другой стороны, со­общение, пришедшее быстрее всех, можно рассматривать как самое точное, по­скольку оно предположительно попало в момент наименьшего трафика и потомунаиболее точно отражает чистое время прохождения.Алгоритм БерклиВ алгоритме Кристиана сервер времени пассивен. Прочие машины периодическизапрашивают у него время. Все, что он делает, — это отвечает на запросы. В опе­рационной системе UNIX разработки университета Беркли (Berkeley) принятпрямо противоположный подход [188].

Здесь сервер времени (а на самом деле де­мон времени) активен, он время от времени опрашивает каждую из машин, какое5.1. Синхронизация часов283время на ее часах. На основании ответов он вычисляет среднее время и предлага­ет всем машинам установить их часы на новое время или замедлить часы, пока небудет достигнуто необходимое уменьшение значения времени на сильно ушед­ших вперед часах.

Этот метод применим для систем, не имеющих машин с прием­ником WWV. Время демона может периодически выставляться вручную опера­тором. Это продемонстрировано на рис. 5.6.Демон времени3:003:000,+253:000 Q2:503:253:05\ 11 /1+51^-20]ШШ ШШ2:503:252:503:25Рис. 5.6. Демон времени запрашивает у всех остальных машин значения их часов (а).Ответы машин (б). Демон времени сообщает всем, как следует подвести их часы (е)В 3:00 демон времени сообщает всем машинам свое время и запрашивает этимашины об их времени (рис. 5.6, а). Затем демон времени получает ответ о том,насколько спешат или отстают часы машин от часов демона (рис. 5.6, б).

Знаяэти числа, демон времени вычисляет среднее и сообщает каждой из машин, какей следует подвести свои часы (рис. 5.6, в).Усредняющие алгоритмыОба ранее описанных алгоритма сильно централизованы с неизбежно вытекаю­щими отсюда недостатками. Известны также и децентрализованные алгоритмы.Один из классов алгоритмов децентрализованной синхронизации часов работаетна основе деления времени на синхронизационные интервалы фиксированнойпродолжительности. В этом случае z-й интервал начинается в момент времениГо + iR и продолжается до Го + (/ + 1)72, где Го — заранее согласованный прошед­ший момент, а i? — параметр системы. В начале каждого интервала каждая маши­на производит широковещательную рассылку значения текущего времени на сво­их часах.

Поскольку часы на различных машинах идут с немного различнойскоростью, эти широковещательные рассылки будут сделаны не одновременно.После рассылки машиной своего времени она запускает локальный таймери начинает собирать все остальные широковещательные пакеты в течение некото­рого интервала 5. Когда будут собраны все широковещательные пакеты, запуска­ется алгоритм вычисления по ним нового времени. Простейший алгоритм состо­ит в усреднении значений всех остальных машин. Незначительные его вариациизаключаются, во-первых, в отбрасывании т самых больших и т самых малень­ких значений и усреднении оставшихся. Отбрасывание крайних значений можнорассматривать как самозащиту от т неправильных часов, посылающих ерунду.284Глава 5. СинхронизацияДругая вариация состоит в том, чтобы попытаться скорректировать каждоеиз сообщений, добавляя к ним оценку времени прохождения от источника. Этаоценка может быть сделана на основе знания топологии сети или измерениемвремени прохождения эха.Дополнительные алгоритмы синхронизации часов рассматриваются в [274,369, 429].

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6502
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее