RFC: 3402
Оригинал: Dynamic Delegation Discovery System - Part Two: The Algorithm
Предыдущие версии: RFC 2168, RFC 2915
Категория: Предложенный стандарт
Дата публикации:
Автор:
Перевод: Николай Малых

RFC 3402, Страница 4 из 12

3. Алгоритм

Алгоритм DDDS основан на концепции Правил перезаписи (Rewrite Rule). Эти правила собираются в базу DDDS Rule Database, и доступ к ним обеспечивается по уникальным ключам. Конкретное Правило, будучи примененным к Application Unique String, преобразует эту строку в новый Ключ, который может использоваться для отыскания нового Правила в Базе. Это новое правило применяется к исходной строке Application Unique String и цикл повторяется, пока не будет выполнено условие завершения. Приложению недопустимо применять правило для вывода предыдущего правила. Все Правила перезаписи для всех Приложений должны всегда применяться точно к той же строке Application Unique String, с которой алгоритм начал работу.

Фундаментальны допущением является то, что строка Application Unique String представляет собой некий тип регулярной лексической структуры, к которой применяются правила. DDDS предполагает, что лексический элемент, используемый для принятия решения о передаче полномочий, содержится в самой строке Application Unique String. DDDS не решает задачи, когда для принятия решения о делегировании требуется информация, содержащаяся за пределами строки AUS и Правила (время сутом, финансовые транзакции и т. п..).

Схема работы алгоритма показана на рисунке.

+--------- Application Unique String
|                 +----+
|                 |ввод|
|         +-------+    +----------+
|         | First Well Known Rule |
|         +-------+     +---------+
|                 |вывод|
|                 +-----+
|               Первый ключ
|                    |
|                    +----<--------------<--------------+
|                    |                                  |
|                  ключ     (База данных DDDS всегда    |
|                 +----+     принимает ключ и           |
|                 |ввод|     возвращает правило)        ^
|       +---------+    +--------+                       |
|       | Поиск в DDDS Database |                       |
|       +---------+     +-------+                       |
|                 |вывод|                               |
|                 +-----+                               |
|               Набор правил                            |
|                    |                                  |
|                    |       (вводом для правила служит |
|               Набор правил  правило и AUS.            ^
|                 +----+      Выводом всегда служит     |
+---------------->|ввод|      ключ или результат)       |
  +---------------+    +-------------------+            |
  | Правила применяются к AUS,             |            |
  | пока не будет получен результат,       |            |
  | удовлетворяющий требованиям приложения |            |
  +---------------+     +------------------+            |
                  |вывод|                               |
                  +-----+                               ^
                    ключ                                |
                     |                                  |
                     v                                  |
     +-------------------------------------+            |
     | Последнее правило было завершающим? | Нет >------+
     +-------------------------------------+
                     Да     (если правило не является завершающим,
                     |       его вывод служит новым ключом
                     |       для поиска следующего правила)
    +-----------------------------------+
    | Вывод последнего правила является |
    | результатом для приложения        |
    +-----------------------------------+
2007 - 2017 © Русские переводы RFC, IETF, ISOC.