Главная » Просмотр файлов » Введение в распределённые алгоритмы. Ж. Тель (2009)

Введение в распределённые алгоритмы. Ж. Тель (2009) (1185665), страница 39

Файл №1185665 Введение в распределённые алгоритмы. Ж. Тель (2009) (Введение в распределённые алгоритмы. Ж. Тель (2009).pdf) 39 страницаВведение в распределённые алгоритмы. Ж. Тель (2009) (1185665) страница 392020-08-25СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

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

Конфигурацию, не имеющую в каналах связи ниодного сообщения, мы будем называть стабильной; предикат stable определя­ется следующим соотношением:stable = V и, да : ир(и, да) =£■ Qwa не содержит сообщений типа mydist.Необходимо принять во внимание, что первоначально каждый список Neighuправильно отражает наличие и работоспособность каналов связи между узлами,т. е.

первоначально соотношение (1) считается верным. Чтобы доказать инвари­антность приведенных утверждений, мы должны рассмотреть три типа перехо­дов.1. Прием сообщения типа mydist. Все выполнение соответствующего фраг­мента кода проводится автоматически и укладывается в один переход. В этом пе­реходе происходит прием одного сообщения и (возможно) отправление несколь­ких сообщений.2. Обрыв канала и обработка сообщения типа fail в узлах по обе стороныканала.3. Восстановление канала и обработка сообщения типа repair в обоих узлах,соединенных этим каналом.Лемма 4.14. Для любой тройки вершинявляется инвариантом.даои vo формула Р(ио,дао, vo)Д о к а з а т е л ь с т в о . В самом начале после выполнения процедуры ини­циализации в каждом узле соотношение ( 1 ) выполняется согласно сделанномудопущению. Если первоначально выполняется условие ~^ир(ио, дао), то соотно­шения (2) и (3), очевидно, выполняются.

Если же вначале выполняется усло­вие ир{щ, дао), то имеет место равенство ndisUo[wo, wo] = N. Если дао = vo, тоDWo[wo\ = 0, но при этом в очереди QW[)U[) содержится сообщение (mydist, Vo, 0),и поэтому верны соотношения (2) и (3). Если да0 ф Vo, то DWo[у0] = N и в очередиканала нет сообщений, поэтому соотношения (2) и (3) также будут верны.

Теперьрассмотрим поочередно три типа переходов, которые были упомянуты выше.Гл. 4. Алгоритмы маршрутизации142Тип 1. Предположим, что узел и получает сообщение (mydist, у, d) от узлада. Это не влечет за собой никаких изменений топологии сети, и поэтому спискивершин-соседей Neigh не изменяются, и соотношение (1) остается верным. Еслиd ^ Do, то с получением этого сообщения в формуле Р(ио, дао, уо) ничего неизменяется.Если v = Уо, и = Чо и да = wo, то значение ndisUQ[wo, Уо] может изме­ниться. Однако если в канале связи есть еще одно сообщение типа mydist, тозначения, содержащиеся в этом сообщении, удовлетворяют соотношению (2 ), ипоэтому выполнимость соотношения (2) сохраняется.

Выполнимость соотноше­ния (3) также сохраняется, поскольку его предпосылка ложна. Если полученноесообщение было последним сообщением в очереди сообщений этого канала, тосогласно соотношению (2) имеет место равенство d = DWo[vо]. Отсюда следует,что заключение формулы (3) становится истинным, и, значит, соотношение (3)остается верным. Поскольку предпосылка утверждения (2) становится ложной,выполнимость соотношения (2 ) сохраняется.Если v = vq, и = wo (и Uq является соседом вершины и), то заключения утвер­ждений (2) или (3) могут стать ложными в том случае, когда значение DWo[vо]изменяется в результате выполнения процедуры Перевычислить(р) в узле дао.Однако в этом случае сообщение (mydist, уо, .

. . ) с новым значением отправля­ется узлу U , и э т о приводит к тому, что предпосылка утверждения (3) становитсяложной, а заключение утверждения (2 ) становится истинным; поэтому оба утвер­ждения (2) и (3) остаются верными. Это единственно возможный случай, когдасообщение (mydist, Уо, . . . ) становится в очередь QWou0> и в этом случае имеетместо равенство d = DWo[vo\.Если у = Уо и и Ф ио, wo, то в формуле Р(ио, дао, уо) ничего не изменяется.Тип 2. Предположим, что канал мда выходит из строя.Если и = Uq и да = дао, то возникшая неисправность канала приводит ктому, что предпосылки утверждений (2 ) и (3) становятся ложными, и поэтомувыполнимость этих утверждений сохраняется.

Выполнимость утверждения (1)сохраняется, ввиду того что дао удаляется из списка NeighUo. То же самое имеетместо и в случае и = дао и да = ио.Если и = wo, но w Ф Uq, то заключения утверждений (2) и (3) могут статьложными, поскольку может измениться значение DWo[vо]. Однако в этом случаепосле отправления узлом дао сообщения (mydist, vo, ..) предпосылка утвержде­ния (3) становится ложной, а заключение утверждения (2 ) становится истинным,и поэтому выполнимость утверждений (2 ) и (3) сохранется.Во всех остальных случаях в формуле P(uq, дао, Уо) не происходит никакихизменений.Тип 3. Предположим, что в сети появился канал мда.Если и = Uq и да = дао, то предикат ир(ио, дао) принимает значение true,но ввиду того что вершина дао добавляется в список NeighUo (а вершина ио —в список NeighWo), выполнимость утверждения (1) сохраняется.После отправления узлом дао сообщения (mydist, Уо, DWq[vо]) заключениеутверждения (2 ) становится истинным, а предпосылка утверждения (3) стано­вится ложной, и поэтому выполнимость формулы Р(ио, wo, У о ) сохраняется.q4.3.

Алгоритм Netchange143Во всех остальных случаях в формуле P( uq, дао , Vq) не происходит никаких□изменений.Лемма 4.15. Для любой пары вершин ио и vq формула L( uq,инвариантом.vq)являетсяД о к а з а т е л ь с т в о . Первоначально DU[)[uo\ = 0 и NbUo[uo\ = local.Если Vo Ф ио, то в самом начале ndisUo[w, t>o] = N для всех w eNeigha, D u0 [у0] == jV и NbUo[vo\ = udef.Тип 1. Предположим, что узел и получает сообщение (mydist, v, d) от узла да.Если и Ф ио или v ф Vo, то ни одна переменная, фигурирующая в формулеL(uo, Vo), не изменяет значения.

Если и = м0 и v = vq, т о значение перемен­ной ndisUo[w, ио] изменяется, но при этом DU[)[vо] и NbUo[vo\ перевычисляютсяв точности так, чтобы выполнялось утверждение L{ uq, do).Тип 2. Предположим, что канал uw оказывается неисправным.Если и = ио или да = «о, то список NeighUo изменяется, но при этом значенияDUo[vо] и NbUo[vo\ вновь перевычисляются в точности так, чтобы выполнялосьутверждение L{ uq, Vo).Тип 3. Предположим, что в сети образуется новый канал uw.Если и = ио, то список Neighua изменяется за счет добавления вершины да, ноколь скоро в узле и значение переменной ndisUo[w, ио] устанавливается равнымN, выполнимость формулы L( uq, Vq) сохраняется.□4.3.2.

Корректность алгоритма NetchangeТеперь мы докажем два требования корректности для рассматриваемого ал­горитма.Теорема 4.16. Как только достигается стабильная конфигурация , таб­лицы Nbu[v] удовлетворяют следующим условиям1) если и = v, то Nbu[v] = local;2) если существует путь из вершины и в вершину v Ф и, то Nbu[v] == да, где да — первый сосед вершины и, который встречается накратчайшем пути из и в v;3) если пути из вершины и в вершину v не существует, то Nbu[v] == udef.Д о к а з а т е л ь с т в о . Когда алгоритм завершает свое выполнение, нарядус предикатом stable выполняется и формула Р(и, да, v) для всех троек вершин и,и и да, и отсюда следует, что для всех троек и, о и да справедливо соотношение(4.2)Гл. 4. Алгоритмы маршрутизации144Принимая во внимание утверждение L(u, v) для всех пар вершин и и и, мы по­лучаем следующее соотношение:О,1+{min Dw[v],если и = V,если и ф v A 3w е Neighu: Dw[v] < N — 1,weNeighaN,(4 3)v'если и ф у A Vffii е Neigh a : Dw[и] > N - 1.которого достаточно, чтобы доказать, что Du[u] = d(u, v) всякий раз, когда вер­шины и и v находятся в одной и той же компоненте связности сети, и Du[v] = N,если и и v находятся в разных компонентах связности.Вначале мы покажем, воспользовавшись индукцией по d(u, v), что всякийраз, когда вершины и и и находятся в одной и той же компоненте связности сети,верно неравенство Du[v\ ф d(u, v).Случай d (u , v) = 0.

В этом случае u = v, и поэтому Du\u\ = 0.Случай d (u , v) = k + 1. В этом случае существует такая вершина w ( E N e i g h a.для которой d(w, v ) = k. По индуктивному предположению Dw[v\ ^ k, и отсюдавследствие соотношения (4.3) мы получаем Da[v] ^ k + 1.Теперь мы продемонстрируем, воспользовавшись индукцией по Da[v\, чтовсякий раз, когда Du[v] < N, из вершины и в вершину v существует путь, и приэтом d(u, v ) ^ Du[v],Случай D u [v] = 0. Из формулы (4.3) следует, что l ) u \v \ = 0 только тогда,когда и = v; это означает, что между вершинами и ии есть пустой путь и d(u, и) == 0.Случай D u [v] = k + 1 < N. Из формулы (4.3) следует, что существует та­кая вершина w € Neighu, для которой Dw\v] = k.

По индуктивному предположе­нию между вершинами w и v существует путь и d(w, v) ф k; отсюда следует, чтомежду вершинами и и v также есть путь и d(u, v) ^ k + 1 .Таким образом, если и н и находятся в одной и той же компоненте связно­сти, то Du[v] = d(u, v ) , а в противном случае Du[v] = N. Отсюда, принимаяво внимание формулу (4.2) и предложение \/и, v : L(u, v), получаем заявленныйв утверждении теоремы результат о таблицах Nbu[v],□Чтобы убедиться в том, что стабильная ситуация рано или поздно наступит,после того как завершатся изменения топологии, мы введем нормирующую функ­цию по отношению к предикату stable. Для конфигурации у нашего алгоритмабудем полагатьU = (число сообщений типа (mydist, .

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

Тип файла
PDF-файл
Размер
18,19 Mb
Тип материала
Высшее учебное заведение

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

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