Аналогичным образом определяются “голоса” для подмножества
соседних узлов
{
x
:
x
∈
C
(
v
)
, B
(
x
) =
B
(
v
)
}
, где
C
(
v
)
— множество
всех узлов, находящихся в таблице сетевого окружения узла
v
, и среди
них выбирается узел
q
с максимальным числом “голосов”
p
(
q, B
(
q
))
.
При выполнении условия
{
p
(
v, B
(
v
))
> p
(
q, B
(
q
))
} ∨
∨ {
[
p
(
v, B
(
v
)) =
p
(
q, B
(
q
))]
∧
[
a
(
v
)
< a
(
q
)]
}
,
(6)
где
a
(
v
)
и
a
(
q
)
— адреса узлов
v
и
q
соответственно, узел
v
назначает
себя
k
-м опорным узлом.
Вторая часть условия (6) необходима для разрешения неоднознач-
ности при равенстве числа “голосов” узлов
v
и
q
. Для упрощения
записи в дальнейшем будем использовать только первую часть выра-
жения (6).
В своих сигнальных пакетах опорный узел также сообщает чис-
ло “голосов” и множество
B
(
v
)
, которые действовали на момент его
назначения опорным узлом. Обозначим эти величины как
ˆ
p
(
v
)
и
ˆ
B
(
v
)
.
Обновление информации об опорных узлах.
При приеме сигнально-
го пакета от соседнего узла
q
узел
v
получает следующую информа-
цию о
q
:
•
адрес
a
(
q
)
;
•
вектор виртуальных координат
q
=
{
q
i
}
n
b
i
=1
;
•
множество номеров известных опорных узлов
B
(
q
)
;
•
информацию об известных опорных узлах с номерами
i
∈
B
(
q
)
:
–
адрес
a
(
b
i
(
q
))
;
–
полученное число “голосов” при назначении
ˆ
p
i
(
q
)
;
–
множество номеров опорных узлов при назначении
ˆ
B
i
(
q
)
.
Узел
v
выполняет следующие действия для каждого
i
-го компонен-
та вектора виртуальных координат.
1. Если узлы
v
и
b
i
(
q
)
являются опорными узлами с номером
i
, то
узел
v
прекращает функционировать в качестве опорного узла
при
ˆ
p
(
v
)
<
ˆ
p
i
(
q
)
. В противном случае выполняется переход к
п. 5.
2. Если узлу
v
уже известна информация об
i
-м опорном узле, то
узел
v
“соглашается” принять узел
b
i
(
q
)
в качестве нового
i
-го
опорного узла только при
ˆ
p
i
(
v
)
<
ˆ
p
i
(
q
)
. Далее переход к п. 4.
3. Узел
v
принимает узел
b
i
(
q
)
в качестве опорного только при
p v,
ˆ
B
i
(
q
)
<
ˆ
p
i
(
q
)
.
4. Обновление
i
-го компонента вектора координат.
5. Выход.
22 ISSN 0236-3933. Вестник МГТУ им. Н.Э. Баумана. Сер. “Приборостроение”. 2008. № 4