On Mon, Dec 10, 2007 at 03:27:07PM +0300, <Sergey Konyahin>:
~> I found several inaccuracies in QSPN documentation.
~>
~> 1. Paragraph 4.1, description of changed links:
~> > Let R be the set of routes contained in the ETP received by C.
~> > Let M be the set of all the routes contained in the map of C.
~> > For each route r in R, the node C looks for a route m in M such that
~> > dst(m) = dst(r), gw(m) = N
~> > If m exists, then C sets rem(m) := rem(r)
~> Really, rem(m) must be rem(r) + rem(CN)
Yes, you're right, in fact the relative code is:
-- qspn.py:188 --
## Update the map from the TPL
--> tprem=gwrem # gateway rem
TPL_is_interesting=0
for block in TPL:
lvl=block[0]
for dst, rem in block[1]:
--> tprem+=rem
[...]
~> 2. Paragraph 4.1, description of broken links:
~> > In other words, R is the set of all the best routes passing through
~> > A. Note that R is not empty because there???s at least the route B-A.
~> In general case, R can be empty. For example, let C node has links to B
~> and A.
~> If rem(AC)=1, rem(BC)=1 and rem(AB)=3, then the best route from B to A
~> is B-C-A.
Thanks for pointing this! This is truly an oversight (*).
If R=\0 then the algorithm must stop: the link AB has worsened, but it wasn't
used as a primary gw before, so it is unnecessary to inform the other nodes.
This is true also in the other cases: when R=\0 then no action must be taken.
This mistake wouldn't have caused any harm, because the created ETP, with the
empty
R, would have been considered immediately uninteresting by every node, and thus
dropped.
Surely it's better to fix it.
(*) Probably this mistake has been introduced in this way: in a previous
version,
R was
R = { r \in M | gw(r)=A }
where M is the set of _all_ the routes of B. So R wasn't empty (*)
http://hinezumi.org/viewcvs/netsukuku/proto/doc/qspn/tex/qspn.tex?r1=1.31&r2=1.32
Thanks again.
--
:wq!
"I don't know nothing" The One Who reached the Thinking Matter '.'
[ Alpt --- Freaknet Medialab ]
[ GPG Key ID 441CF0EE ]
[ Key fingerprint = 8B02 26E8 831A 7BB9 81A9 5277 BFF8 037E 441C F0EE ]
_______________________________________________
Netsukuku mailing list
[email protected]
http://lists.dyne.org/mailman/listinfo/netsukuku