Post by Fabian LanzePost by Richard GaySoweit ich das verstanden habe, sind die beim Join verwendeten
Koordinaten nachher irrelevant und nur die zugewiesene Zone zählt.
Welche Hälfte der alte Knoten dem neuen zuweist sollte demnach also
egal sein.
Das hieße im Umkehrschluss, ein Knoten muss nicht in der Zone liegen,
die er kontrolliert?
Also im Buch steht u.a. folgendes
- "Each data item is assigned an identifier [...]"
- "The identifier space in CAN is partitioned among the participating
nodes [...]. Each node is said to own a zone [...]."
- "Given a randomly chosen location in the identifier space, the new
node n sends a special join message [...] to these coordinates."
D.h. Daten haben Koordinaten, über die sie in CAN erreichbar sind.
Knoten haben keine (Punkt-)Koordinaten; sie werden nur anhand der
Zonen-Koordinaten aus den Nachbarn beim Routing ausgewählt. Ein Knoten
wählt nur für das Join Koordinaten, die aber dann wieder vergessen
werden können wenn der Knoten (von dem für diese Koordinaten zuständigen
Knoten) eine Zone zugewiesen bekommen hat. Die Frage, ob ein Knoten
"in" der Zone liegt, die er kontrolliert, erübrigt sich damit also.
(Ich glaube, als die Übung besprochen wurde war ich nicht da. Was ich
schreibe stammt also nur aus den Folien und dem Buch)
Gruß,
Richard