Find the first ancestor betwen two network nodes in respect with the RPL algorithm.
[A,R] = NL_R_RPLCommonAncestor(S,I,J,P)
RPL root.
First node.
Second node.
Predecessor vector.
Ancestor.
Path.
NL_R_RPLCommonAncestor finds the first ancestor A betwen two network nodes I and J in respect with the predecessor vector P generated by the RPL algorithm started from the root S.
n=80;//network size l=1000;//network squared area side d=150;//Locality radius [g]=NL_T_LocalityConnex(n,l,d);//topology generation ETX=5; [v] = NL_F_RandVector0nminus1(length(g.head),ETX);//update of weigth v=v+1; g.edge_weight=g.edge_length; g.edge_length=v; xc=l/2;//area center yc=l/2; [s]=NL_G_NodeClose2XY(g,xc,yc)//root node c=5;//5 possible routes [pred,dist,ra,DAG,DIO]=NL_R_RPL(g,s,c);//RPL tree construction [go]=NL_R_RPLPlot(g,pred);//highlight RPL tree ind=1;//window index f=NL_G_ShowGraphN(go,ind);//graph visualization [n1,n2]=NL_F_RandIntNiNj(g.node_number);//selection of two nodes [A,path]=NL_R_RPLCommonAncestor(s,n1,n2,pred)//application of NL_R_RPLCommonAncestor | ![]() | ![]() |